@@ -614,7 +614,7 @@ PHP_FUNCTION(mysqli_change_user)
614614 size_t user_len , password_len , dbname_len ;
615615 zend_ulong rc ;
616616#if !defined(MYSQLI_USE_MYSQLND ) && defined(HAVE_MYSQLI_SET_CHARSET )
617- const CHARSET_INFO * old_charset ;
617+ MY_CHARSET_INFO old_charset ;
618618#endif
619619
620620 if (zend_parse_method_parameters (ZEND_NUM_ARGS (), getThis (), "Osss!" , & mysql_link , mysqli_link_class_entry , & user , & user_len , & password , & password_len , & dbname , & dbname_len ) == FAILURE ) {
@@ -623,7 +623,7 @@ PHP_FUNCTION(mysqli_change_user)
623623 MYSQLI_FETCH_RESOURCE_CONN (mysql , mysql_link , MYSQLI_STATUS_VALID );
624624
625625#if !defined(MYSQLI_USE_MYSQLND ) && defined(HAVE_MYSQLI_SET_CHARSET )
626- old_charset = mysql -> mysql -> charset ;
626+ mysql_get_character_set_info ( mysql -> mysql , & old_charset ) ;
627627#endif
628628
629629#if defined(MYSQLI_USE_MYSQLND )
@@ -643,7 +643,7 @@ PHP_FUNCTION(mysqli_change_user)
643643 5.0 doesn't support it. Support added in 5.1.23 by fixing the following bug :
644644 Bug #30472 libmysql doesn't reset charset, insert_id after succ. mysql_change_user() call
645645 */
646- rc = mysql_set_character_set (mysql -> mysql , old_charset -> csname );
646+ rc = mysql_set_character_set (mysql -> mysql , old_charset . csname );
647647 }
648648#endif
649649
@@ -1701,10 +1701,12 @@ static int mysqli_options_get_option_zval_type(int option)
17011701#endif /* MySQL 4.1.0 */
17021702 case MYSQL_OPT_READ_TIMEOUT :
17031703 case MYSQL_OPT_WRITE_TIMEOUT :
1704+ #ifdef MYSQL_OPT_GUESS_CONNECTION /* removed in MySQL-8.0 */
17041705 case MYSQL_OPT_GUESS_CONNECTION :
17051706 case MYSQL_OPT_USE_EMBEDDED_CONNECTION :
17061707 case MYSQL_OPT_USE_REMOTE_CONNECTION :
17071708 case MYSQL_SECURE_AUTH :
1709+ #endif
17081710#ifdef MYSQL_OPT_RECONNECT
17091711 case MYSQL_OPT_RECONNECT :
17101712#endif /* MySQL 5.0.13 */
0 commit comments