- # Called early on in the installer, later we just want to sanity check
- # if it's still writable
- if ( $create ) {
- Wikimedia\suppressWarnings();
- $ok = wfMkdirParents( $dir, 0700, __METHOD__ );
- Wikimedia\restoreWarnings();
- if ( !$ok ) {
- return Status::newFatal( 'config-sqlite-mkdir-error', $dir );
- }
- # Put a .htaccess file in in case the user didn't take our advice
- file_put_contents( "$dir/.htaccess", "Deny from all\n" );
+ /**
+ * @param string $dir Path to the data directory
+ * @return Status Return good Status if without error
+ */
+ private static function createDataDir( $dir ) : Status {
+ if ( !is_dir( $dir ) ) {
+ Wikimedia\suppressWarnings();
+ $ok = wfMkdirParents( $dir, 0700, __METHOD__ );
+ Wikimedia\restoreWarnings();
+ if ( !$ok ) {
+ return Status::newFatal( 'config-sqlite-mkdir-error', $dir );