Changeset 37939 for branches/4.2/src/wp-admin/includes/upgrade.php
- Timestamp:
- 07/01/2016 11:50:08 AM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/4.2/src/wp-admin/includes/upgrade.php
r33063 r37939 1950 1950 $iqueries = apply_filters( 'dbdelta_insert_queries', $iqueries ); 1951 1951 1952 $text_fields = array( 'tinytext', 'text', 'mediumtext', 'longtext' ); 1953 $blob_fields = array( 'tinyblob', 'blob', 'mediumblob', 'longblob' ); 1954 1952 1955 $global_tables = $wpdb->tables( 'global' ); 1953 1956 foreach ( $cqueries as $table => $qry ) { … … 2019 2022 // Is actual field type different from the field type in query? 2020 2023 if ($tablefield->Type != $fieldtype) { 2024 $do_change = true; 2025 if ( in_array( strtolower( $fieldtype ), $text_fields ) && in_array( strtolower( $tablefield->Type ), $text_fields ) ) { 2026 if ( array_search( strtolower( $fieldtype ), $text_fields ) < array_search( strtolower( $tablefield->Type ), $text_fields ) ) { 2027 $do_change = false; 2028 } 2029 } 2030 2031 if ( in_array( strtolower( $fieldtype ), $blob_fields ) && in_array( strtolower( $tablefield->Type ), $blob_fields ) ) { 2032 if ( array_search( strtolower( $fieldtype ), $blob_fields ) < array_search( strtolower( $tablefield->Type ), $blob_fields ) ) { 2033 $do_change = false; 2034 } 2035 } 2036 2037 if ( $do_change ) { 2021 2038 // Add a query to change the column type 2022 $cqueries[] = "ALTER TABLE {$table} CHANGE COLUMN {$tablefield->Field} " . $cfields[strtolower($tablefield->Field)]; 2023 $for_update[$table.'.'.$tablefield->Field] = "Changed type of {$table}.{$tablefield->Field} from {$tablefield->Type} to {$fieldtype}"; 2039 $cqueries[] = "ALTER TABLE {$table} CHANGE COLUMN {$tablefield->Field} " . $cfields[strtolower($tablefield->Field)]; 2040 $for_update[$table.'.'.$tablefield->Field] = "Changed type of {$table}.{$tablefield->Field} from {$tablefield->Type} to {$fieldtype}"; 2041 } 2024 2042 } 2025 2043
Note: See TracChangeset
for help on using the changeset viewer.