]> TLD Linux GIT Repositories - packages/php.git/blobdiff - php-mysqli-charsetphpini.patch
- PHP_5_4 branch from PLD
[packages/php.git] / php-mysqli-charsetphpini.patch
diff --git a/php-mysqli-charsetphpini.patch b/php-mysqli-charsetphpini.patch
new file mode 100644 (file)
index 0000000..895a1a7
--- /dev/null
@@ -0,0 +1,52 @@
+--- php-5.3.1/ext/mysqli/mysqli.c~     2010-02-20 00:58:34.000000000 +0200
++++ php-5.3.1/ext/mysqli/mysqli.c      2010-02-20 01:00:22.459111311 +0200
+@@ -602,6 +602,7 @@
+ #else
+       STD_PHP_INI_ENTRY("mysqli.default_socket",                      NULL,   PHP_INI_ALL,            OnUpdateStringUnempty,  default_socket, zend_mysqli_globals,            mysqli_globals)
+ #endif
++      STD_PHP_INI_ENTRY("mysqli.connect_charset",                     NULL,   PHP_INI_ALL,            OnUpdateString,         connect_charset,        zend_mysqli_globals,            mysqli_globals)
+       STD_PHP_INI_BOOLEAN("mysqli.reconnect",                         "0",    PHP_INI_SYSTEM,         OnUpdateLong,           reconnect,                      zend_mysqli_globals,            mysqli_globals)
+       STD_PHP_INI_BOOLEAN("mysqli.allow_local_infile",        "1",    PHP_INI_SYSTEM,         OnUpdateLong,           allow_local_infile,     zend_mysqli_globals,            mysqli_globals)
+ #ifdef MYSQLI_USE_MYSQLND
+@@ -475,6 +476,7 @@
+       mysqli_globals->default_user = NULL;
+       mysqli_globals->default_pw = NULL;
+       mysqli_globals->default_socket = NULL;
++      mysqli_globals->connect_charset = NULL;
+       mysqli_globals->reconnect = 0;
+       mysqli_globals->report_mode = 0;
+       mysqli_globals->report_ht = 0;
+--- php-5.3.4/ext/mysqli/mysqli_nonapi.c~      2010-12-12 23:07:03.000000000 +0200
++++ php-5.3.4/ext/mysqli/mysqli_nonapi.c       2010-12-12 23:07:36.497424912 +0200
+@@ -61,7 +61,7 @@
+       MY_MYSQL                        *mysql = NULL;
+       MYSQLI_RESOURCE         *mysqli_resource = NULL;
+       zval                            *object = getThis();
+-      char                            *hostname = NULL, *username=NULL, *passwd=NULL, *dbname=NULL, *socket=NULL;
++      char                            *hostname = NULL, *username=NULL, *passwd=NULL, *dbname=NULL, *socket=NULL, *connect_charset=NULL;
+       int                                     hostname_len = 0, username_len = 0, passwd_len = 0, dbname_len = 0, socket_len = 0;
+       zend_bool                       persistent = FALSE;
+       long                            port = 0, flags = 0;
+@@ -241,6 +241,12 @@
+       }
+ #endif
++      connect_charset = MyG(connect_charset);
++
++      if (connect_charset != NULL) {
++              mysql_options(mysql->mysql, MYSQL_SET_CHARSET_NAME, connect_charset);
++      }
++
+ #if !defined(MYSQLI_USE_MYSQLND)
+       if (mysql_real_connect(mysql->mysql, hostname, username, passwd, dbname, port, socket, CLIENT_MULTI_RESULTS) == NULL)
+ #else
+--- php-5.3.1/ext/mysqli/php_mysqli_structs.h~ 2009-10-14 16:51:25.000000000 +0300
++++ php-5.3.1/ext/mysqli/php_mysqli_structs.h  2010-02-20 01:04:56.512214846 +0200
+@@ -358,6 +358,7 @@
+       char                    *default_user;
+       char                    *default_socket;
+       char                    *default_pw;
++      char                    *connect_charset;
+       long                    reconnect;
+       long                    allow_local_infile;
+       long                    strict;