]>
Commit | Line | Data |
---|---|---|
f9fed404 AM |
1 | diff -urNp -x '*.orig' php-5.2.17.org/ext/mysqli/mysqli.c php-5.2.17/ext/mysqli/mysqli.c |
2 | --- php-5.2.17.org/ext/mysqli/mysqli.c 2010-08-13 12:43:15.000000000 +0200 | |
3 | +++ php-5.2.17/ext/mysqli/mysqli.c 2021-10-23 19:07:32.689791758 +0200 | |
4 | @@ -451,6 +451,7 @@ PHP_INI_BEGIN() | |
5 | STD_PHP_INI_ENTRY("mysqli.default_pw", NULL, PHP_INI_ALL, OnUpdateString, default_pw, zend_mysqli_globals, mysqli_globals) | |
6 | STD_PHP_INI_ENTRY("mysqli.default_port", "3306", PHP_INI_ALL, OnUpdateLong, default_port, zend_mysqli_globals, mysqli_globals) | |
7 | STD_PHP_INI_ENTRY("mysqli.default_socket", NULL, PHP_INI_ALL, OnUpdateStringUnempty, default_socket, zend_mysqli_globals, mysqli_globals) | |
8 | + STD_PHP_INI_ENTRY("mysqli.connect_charset", NULL, PHP_INI_ALL, OnUpdateString, connect_charset, zend_mysqli_globals, mysqli_globals) | |
9 | STD_PHP_INI_BOOLEAN("mysqli.reconnect", "0", PHP_INI_SYSTEM, OnUpdateLong, reconnect, zend_mysqli_globals, mysqli_globals) | |
10 | PHP_INI_END() | |
11 | ||
12 | @@ -467,6 +468,7 @@ static PHP_GINIT_FUNCTION(mysqli) | |
13 | mysqli_globals->default_user = NULL; | |
14 | mysqli_globals->default_pw = NULL; | |
15 | mysqli_globals->default_socket = NULL; | |
16 | + mysqli_globals->connect_charset = NULL; | |
17 | mysqli_globals->reconnect = 0; | |
18 | mysqli_globals->report_mode = 0; | |
19 | mysqli_globals->report_ht = 0; | |
20 | diff -urNp -x '*.orig' php-5.2.17.org/ext/mysqli/mysqli_api.c php-5.2.17/ext/mysqli/mysqli_api.c | |
21 | --- php-5.2.17.org/ext/mysqli/mysqli_api.c 2021-10-23 19:07:30.269791758 +0200 | |
22 | +++ php-5.2.17/ext/mysqli/mysqli_api.c 2021-10-23 19:07:32.689791758 +0200 | |
23 | @@ -1428,7 +1428,7 @@ PHP_FUNCTION(mysqli_prepare) | |
5624399c ER |
24 | PHP_FUNCTION(mysqli_real_connect) |
25 | { | |
26 | MY_MYSQL *mysql; | |
27 | - char *hostname = NULL, *username=NULL, *passwd=NULL, *dbname=NULL, *socket=NULL; | |
28 | + char *hostname = NULL, *username=NULL, *passwd=NULL, *dbname=NULL, *socket=NULL, *connect_charset=NULL; | |
29 | unsigned int hostname_len = 0, username_len = 0, passwd_len = 0, dbname_len = 0, socket_len = 0; | |
30 | unsigned long port=0, flags=0; | |
31 | zval *mysql_link; | |
f9fed404 | 32 | @@ -1478,6 +1478,12 @@ PHP_FUNCTION(mysqli_real_connect) |
5624399c ER |
33 | socket = MyG(default_socket); |
34 | } | |
35 | ||
36 | + connect_charset = MyG(connect_charset); | |
37 | + | |
38 | + if (connect_charset != NULL) { | |
39 | + mysql_options(mysql->mysql, MYSQL_SET_CHARSET_NAME, connect_charset); | |
40 | + } | |
41 | + | |
42 | if (mysql_real_connect(mysql->mysql,hostname,username,passwd,dbname,port,socket,flags) == NULL) { | |
43 | php_mysqli_set_error(mysql_errno(mysql->mysql), (char *) mysql_error(mysql->mysql) TSRMLS_CC); | |
44 | php_mysqli_throw_sql_exception( mysql->mysql->net.sqlstate, mysql->mysql->net.last_errno TSRMLS_CC, | |
f9fed404 AM |
45 | diff -urNp -x '*.orig' php-5.2.17.org/ext/mysqli/mysqli_nonapi.c php-5.2.17/ext/mysqli/mysqli_nonapi.c |
46 | --- php-5.2.17.org/ext/mysqli/mysqli_nonapi.c 2010-01-25 14:23:32.000000000 +0100 | |
47 | +++ php-5.2.17/ext/mysqli/mysqli_nonapi.c 2021-10-23 19:07:32.689791758 +0200 | |
48 | @@ -36,7 +36,7 @@ PHP_FUNCTION(mysqli_connect) | |
49 | MY_MYSQL *mysql = NULL; | |
50 | MYSQLI_RESOURCE *mysqli_resource = NULL; | |
5624399c ER |
51 | zval *object = getThis(); |
52 | - char *hostname = NULL, *username=NULL, *passwd=NULL, *dbname=NULL, *socket=NULL; | |
53 | + char *hostname = NULL, *username=NULL, *passwd=NULL, *dbname=NULL, *socket=NULL, *connect_charset=NULL; | |
54 | unsigned int hostname_len = 0, username_len = 0, passwd_len = 0, dbname_len = 0, socket_len = 0; | |
55 | long port=0; | |
56 | ||
f9fed404 | 57 | @@ -116,6 +116,12 @@ PHP_FUNCTION(mysqli_connect) |
5624399c ER |
58 | socket = MyG(default_socket); |
59 | } | |
60 | ||
61 | + connect_charset = MyG(connect_charset); | |
62 | + | |
63 | + if (connect_charset != NULL) { | |
64 | + mysql_options(mysql->mysql, MYSQL_SET_CHARSET_NAME, connect_charset); | |
65 | + } | |
66 | + | |
67 | if (mysql_real_connect(mysql->mysql,hostname,username,passwd,dbname,port,socket,CLIENT_MULTI_RESULTS) == NULL) { | |
68 | /* Save error messages */ | |
69 | ||
f9fed404 AM |
70 | diff -urNp -x '*.orig' php-5.2.17.org/ext/mysqli/php_mysqli.h php-5.2.17/ext/mysqli/php_mysqli.h |
71 | --- php-5.2.17.org/ext/mysqli/php_mysqli.h 2010-01-25 14:23:32.000000000 +0100 | |
72 | +++ php-5.2.17/ext/mysqli/php_mysqli.h 2021-10-23 19:07:32.689791758 +0200 | |
73 | @@ -442,6 +442,7 @@ ZEND_BEGIN_MODULE_GLOBALS(mysqli) | |
5624399c ER |
74 | char *default_user; |
75 | char *default_socket; | |
76 | char *default_pw; | |
77 | + char *connect_charset; | |
78 | int reconnect; | |
79 | int strict; | |
80 | long error_no; |