Wordpress 4.6
[autoinstalls/wordpress.git] / wp-admin / setup-config.php
index befa6937edea073f9bcbddd9681a13bc7e605458..1ad40fcb6ae71bf629289d1dfab5b85cc7efd36f 100644 (file)
@@ -28,7 +28,9 @@ define('WP_SETUP_CONFIG', true);
  */
 error_reporting(0);
 
-define( 'ABSPATH', dirname( dirname( __FILE__ ) ) . '/' );
+if ( ! defined( 'ABSPATH' ) ) {
+       define( 'ABSPATH', dirname( dirname( __FILE__ ) ) . '/' );
+}
 
 require( ABSPATH . 'wp-settings.php' );
 
@@ -276,6 +278,12 @@ switch($step) {
        if ( ! empty( $wpdb->error ) )
                wp_die( $wpdb->error->get_error_message() . $tryagain_link );
 
+       $wpdb->query( "SELECT $prefix" );
+       if ( ! $wpdb->last_error ) {
+               // MySQL was able to parse the prefix as a value, which we don't want. Bail.
+               wp_die( __( '<strong>ERROR</strong>: "Table Prefix" is invalid.' ) );
+       }
+
        // Generate keys and salts using secure CSPRNG; fallback to API if enabled; further fallback to original wp_generate_password().
        try {
                $chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_ []{}<>~`+=,.;:/?|';