[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c branches/PHP_5_4/ext/mysql/php_mysql.c trunk/ext/mysql/php_mysql.c

2011-08-02 Thread Andrey Hristov
andrey   Tue, 02 Aug 2011 14:18:56 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=314109

Log:
completely compile out a currently non-needed function

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/branches/PHP_5_4/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysql/php_mysql.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2011-08-02 14:10:28 UTC 
(rev 314108)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2011-08-02 14:18:56 UTC 
(rev 314109)
@@ -608,7 +608,7 @@
 /* }}} */


-#ifdef MYSQL_USE_MYSQLND
+#if defined(A0)  defined(MYSQL_USE_MYSQLND)
 static int php_mysql_persistent_helper(zend_rsrc_list_entry *le TSRMLS_DC)
 {
if (le-type == le_plink) {
@@ -637,7 +637,7 @@
efree(MySG(connect_error));
}

-#if defined(A0)  MYSQL_USE_MYSQLND
+#if defined(A0)  defined(MYSQL_USE_MYSQLND)
zend_hash_apply(EG(persistent_list), (apply_func_t) 
php_mysql_persistent_helper TSRMLS_CC);
 #endif


Modified: php/php-src/branches/PHP_5_4/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_4/ext/mysql/php_mysql.c  2011-08-02 14:10:28 UTC 
(rev 314108)
+++ php/php-src/branches/PHP_5_4/ext/mysql/php_mysql.c  2011-08-02 14:18:56 UTC 
(rev 314109)
@@ -608,7 +608,7 @@
 /* }}} */


-#ifdef MYSQL_USE_MYSQLND
+#if defined(A0)  defined(MYSQL_USE_MYSQLND)
 static int php_mysql_persistent_helper(zend_rsrc_list_entry *le TSRMLS_DC)
 {
if (le-type == le_plink) {
@@ -637,7 +637,7 @@
efree(MySG(connect_error));
}

-#if defined(A0)  MYSQL_USE_MYSQLND
+#if defined(A0)  defined(MYSQL_USE_MYSQLND)
zend_hash_apply(EG(persistent_list), (apply_func_t) 
php_mysql_persistent_helper TSRMLS_CC);
 #endif


Modified: php/php-src/trunk/ext/mysql/php_mysql.c
===
--- php/php-src/trunk/ext/mysql/php_mysql.c 2011-08-02 14:10:28 UTC (rev 
314108)
+++ php/php-src/trunk/ext/mysql/php_mysql.c 2011-08-02 14:18:56 UTC (rev 
314109)
@@ -608,7 +608,7 @@
 /* }}} */


-#ifdef MYSQL_USE_MYSQLND
+#if defined(A0)  defined(MYSQL_USE_MYSQLND)
 static int php_mysql_persistent_helper(zend_rsrc_list_entry *le TSRMLS_DC)
 {
if (le-type == le_plink) {
@@ -637,7 +637,7 @@
efree(MySG(connect_error));
}

-#if defined(A0)  MYSQL_USE_MYSQLND
+#if defined(A0)  defined(MYSQL_USE_MYSQLND)
zend_hash_apply(EG(persistent_list), (apply_func_t) 
php_mysql_persistent_helper TSRMLS_CC);
 #endif


-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c branches/PHP_5_4/ext/mysql/php_mysql.c trunk/ext/mysql/php_mysql.c

2011-05-18 Thread Johannes Schlüter
johannes Wed, 18 May 2011 11:49:49 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=311181

Log:
- handle out of memory

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/branches/PHP_5_4/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysql/php_mysql.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2011-05-18 11:33:55 UTC 
(rev 311180)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2011-05-18 11:49:49 UTC 
(rev 311181)
@@ -830,6 +830,9 @@
}
/* create the link */
mysql = (php_mysql_conn *) 
malloc(sizeof(php_mysql_conn));
+   if (!mysql) {
+   php_error_docref(NULL TSRMLS_CC, E_ERROR, Out 
of memory while allocating memory for a persistent link);
+   }
mysql-active_result_id = 0;
 #ifdef CLIENT_MULTI_STATEMENTS
mysql-multi_query = client_flags  
CLIENT_MULTI_STATEMENTS? 1:0;

Modified: php/php-src/branches/PHP_5_4/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_4/ext/mysql/php_mysql.c  2011-05-18 11:33:55 UTC 
(rev 311180)
+++ php/php-src/branches/PHP_5_4/ext/mysql/php_mysql.c  2011-05-18 11:49:49 UTC 
(rev 311181)
@@ -830,6 +830,9 @@
}
/* create the link */
mysql = (php_mysql_conn *) 
malloc(sizeof(php_mysql_conn));
+   if (!mysql) {
+   php_error_docref(NULL TSRMLS_CC, E_ERROR, Out 
of memory while allocating memory for a persistent link);
+   }
mysql-active_result_id = 0;
 #ifdef CLIENT_MULTI_STATEMENTS
mysql-multi_query = client_flags  
CLIENT_MULTI_STATEMENTS? 1:0;

Modified: php/php-src/trunk/ext/mysql/php_mysql.c
===
--- php/php-src/trunk/ext/mysql/php_mysql.c 2011-05-18 11:33:55 UTC (rev 
311180)
+++ php/php-src/trunk/ext/mysql/php_mysql.c 2011-05-18 11:49:49 UTC (rev 
311181)
@@ -830,6 +830,9 @@
}
/* create the link */
mysql = (php_mysql_conn *) 
malloc(sizeof(php_mysql_conn));
+   if (!mysql) {
+   php_error_docref(NULL TSRMLS_CC, E_ERROR, Out 
of memory while allocating memory for a persistent link);
+   }
mysql-active_result_id = 0;
 #ifdef CLIENT_MULTI_STATEMENTS
mysql-multi_query = client_flags  
CLIENT_MULTI_STATEMENTS? 1:0;

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c trunk/ext/mysql/php_mysql.c

2011-02-14 Thread Ilia Alshanetsky
iliaaMon, 14 Feb 2011 14:05:46 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=308323

Log:
Fixed variable re-declarations

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysql/php_mysql.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2011-02-14 13:58:03 UTC 
(rev 308322)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2011-02-14 14:05:46 UTC 
(rev 308323)
@@ -371,11 +371,11 @@
if (mysql-active_result_id) { \
do {\
int type;   \
-   MYSQL_RES *mysql_result;\
+   MYSQL_RES *_mysql_result;   \
\
-   mysql_result = (MYSQL_RES *) 
zend_list_find(mysql-active_result_id, type);\
-   if (mysql_result  type==le_result) {  
\
-   if (mysql_result_is_unbuffered(mysql_result)  
!mysql_eof(mysql_result)) { \
+   _mysql_result = (MYSQL_RES *) 
zend_list_find(mysql-active_result_id, type);   \
+   if (_mysql_result  type==le_result) { 
\
+   if (mysql_result_is_unbuffered(_mysql_result) 
 !mysql_eof(_mysql_result)) { \
php_error_docref(NULL TSRMLS_CC, 
E_NOTICE, Function called without first fetching all rows from a previous 
unbuffered query); \
}   
\
zend_list_delete(mysql-active_result_id);  
\
@@ -2126,12 +2126,12 @@
fci.retval_ptr_ptr = retval_ptr;
if (ctor_params  Z_TYPE_P(ctor_params) != IS_NULL) {
if (Z_TYPE_P(ctor_params) == IS_ARRAY) {
-   HashTable *ht = Z_ARRVAL_P(ctor_params);
+   HashTable *htl = 
Z_ARRVAL_P(ctor_params);
Bucket *p;

fci.param_count = 0;
-   fci.params = 
safe_emalloc(sizeof(zval*), ht-nNumOfElements, 0);
-   p = ht-pListHead;
+   fci.params = 
safe_emalloc(sizeof(zval*), htl-nNumOfElements, 0);
+   p = htl-pListHead;
while (p != NULL) {
fci.params[fci.param_count++] = 
(zval**)p-pData;
p = p-pListNext;

Modified: php/php-src/trunk/ext/mysql/php_mysql.c
===
--- php/php-src/trunk/ext/mysql/php_mysql.c 2011-02-14 13:58:03 UTC (rev 
308322)
+++ php/php-src/trunk/ext/mysql/php_mysql.c 2011-02-14 14:05:46 UTC (rev 
308323)
@@ -371,11 +371,11 @@
if (mysql-active_result_id) { \
do {\
int type;   \
-   MYSQL_RES *mysql_result;\
+   MYSQL_RES *_mysql_result;   \
\
-   mysql_result = (MYSQL_RES *) 
zend_list_find(mysql-active_result_id, type);\
-   if (mysql_result  type==le_result) {  
\
-   if (mysql_result_is_unbuffered(mysql_result)  
!mysql_eof(mysql_result)) { \
+   _mysql_result = (MYSQL_RES *) 
zend_list_find(mysql-active_result_id, type);   \
+   if (_mysql_result  type==le_result) { 
\
+   if (mysql_result_is_unbuffered(_mysql_result) 
 !mysql_eof(_mysql_result)) { \
php_error_docref(NULL TSRMLS_CC, 
E_NOTICE, Function called without first fetching all rows from a previous 
unbuffered query); \
}   
\
zend_list_delete(mysql-active_result_id);  
\
@@ -2126,12 +2126,12 @@
fci.retval_ptr_ptr = retval_ptr;
if (ctor_params  Z_TYPE_P(ctor_params) != IS_NULL) {
if (Z_TYPE_P(ctor_params) == IS_ARRAY) {
-   HashTable *ht = Z_ARRVAL_P(ctor_params);
+   HashTable *htl = 

[PHP-CVS] svn: /php/php-src/branches/PHP_5_3/ext/mysql/ php_mysql.c

2011-01-14 Thread Andrey Hristov
andrey   Fri, 14 Jan 2011 15:10:09 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=307480

Log:
pass data which is available

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2011-01-14 15:00:22 UTC 
(rev 307479)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2011-01-14 15:10:09 UTC 
(rev 307480)
@@ -848,7 +848,7 @@
 #ifndef MYSQL_USE_MYSQLND
if (mysql_real_connect(mysql-conn, host, user, passwd, 
NULL, port, socket, client_flags)==NULL)
 #else
-   if (mysqlnd_connect(mysql-conn, host, user, passwd, 0, 
NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL)
+   if (mysqlnd_connect(mysql-conn, host, user, passwd, 
passwd_len, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL)
 #endif
{
/* Populate connect error globals so that the 
error functions can read them */

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[PHP-CVS] svn: /php/php-src/branches/PHP_5_3/ext/mysql/ php_mysql.c

2011-01-14 Thread Andrey Hristov
andrey   Fri, 14 Jan 2011 15:37:49 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=307481

Log:
fix more parameter stuff, now it is complete

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2011-01-14 15:10:09 UTC 
(rev 307480)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2011-01-14 15:37:49 UTC 
(rev 307481)
@@ -762,6 +762,7 @@
}
if (!passwd) {
passwd = MySG(default_password);
+   passwd_len = passwd? strlen(passwd):0;
}

/* disable local infile option for open_basedir */
@@ -896,7 +897,7 @@
 #ifndef MYSQL_USE_MYSQLND
if (mysql_real_connect(mysql-conn, 
host, user, passwd, NULL, port, socket, client_flags)==NULL)
 #else
-   if (mysqlnd_connect(mysql-conn, host, 
user, passwd, 0, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL)
+   if (mysqlnd_connect(mysql-conn, host, 
user, passwd, passwd_len, NULL, 0, port, socket, client_flags TSRMLS_CC) == 
NULL)
 #endif
{
php_error_docref(NULL 
TSRMLS_CC, E_WARNING, Link to server lost, unable to reconnect);
@@ -975,7 +976,7 @@
 #ifndef MYSQL_USE_MYSQLND
if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, 
port, socket, client_flags)==NULL)
 #else
-   if (mysqlnd_connect(mysql-conn, host, user, passwd, 0, NULL, 
0, port, socket, client_flags TSRMLS_CC) == NULL)
+   if (mysqlnd_connect(mysql-conn, host, user, passwd, 
passwd_len, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL)
 #endif
{
/* Populate connect error globals so that the error 
functions can read them */

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[PHP-CVS] svn: /php/php-src/branches/PHP_5_3/ext/mysql/ php_mysql.c

2010-10-05 Thread Kalle Sommer Nielsen
kalleTue, 05 Oct 2010 09:48:07 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=304071

Log:
Fix constness warnings

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-10-05 09:40:36 UTC 
(rev 304070)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-10-05 09:48:07 UTC 
(rev 304071)
@@ -2370,8 +2370,8 @@
}
object_init(return_value);

-   add_property_string(return_value, 
name,(mysql_field-name?mysql_field-name:), 1);
-   add_property_string(return_value, 
table,(mysql_field-table?mysql_field-table:), 1);
+   add_property_string(return_value, name, (char *) 
(mysql_field-name?mysql_field-name:), 1);
+   add_property_string(return_value, table,(char *) 
(mysql_field-table?mysql_field-table:), 1);
add_property_string(return_value, 
def,(mysql_field-def?mysql_field-def:), 1);
add_property_long(return_value, max_length, mysql_field-max_length);
add_property_long(return_value, not_null, 
IS_NOT_NULL(mysql_field-flags)?1:0);

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c trunk/ext/mysql/php_mysql.c

2010-10-04 Thread Ulf Wendel
uw   Mon, 04 Oct 2010 10:08:10 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=303974

Log:
Sorry again, nothing but removal of white space from the end of the lines.

- fix compile warning ext/mysql/php_mysql.c:640:11: warning: extra tokens at 
end of #ifdef directive

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysql/php_mysql.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c	2010-10-04 10:02:58 UTC (rev 303973)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c	2010-10-04 10:08:10 UTC (rev 303974)
@@ -17,7 +17,7 @@
|  Georg Richter ge...@php.net   |
+--+
 */
-
+
 /* $Id$ */

 /* TODO:
@@ -130,7 +130,7 @@
 #define MYSQL_DISABLE_MQ if (mysql-multi_query) { \
 	mysql_set_server_option(mysql-conn, MYSQL_OPTION_MULTI_STATEMENTS_OFF); \
 	mysql-multi_query = 0; \
-}
+}
 #else
 #define MYSQL_DISABLE_MQ
 #endif
@@ -295,7 +295,7 @@
 	PHP_FE(mysql_info,	arginfo__optional_mysql_link)
 #ifdef MYSQL_HAS_SET_CHARSET
 	PHP_FE(mysql_set_charset,			arginfo_mysql_set_charset)
-#endif
+#endif
 	/* for downwards compatability */
 	PHP_FALIAS(mysql,mysql_db_query,		arginfo_mysql_db_query)
 	PHP_FALIAS(mysql_fieldname,		mysql_field_name,	arginfo_mysql_field_name)
@@ -450,7 +450,7 @@
 static void _close_mysql_link(zend_rsrc_list_entry *rsrc TSRMLS_DC)
 {
 	php_mysql_conn *link = (php_mysql_conn *)rsrc-ptr;
-	void (*handler) (int);
+	void (*handler) (int);

 	handler = signal(SIGPIPE, SIG_IGN);
 	mysql_close(link-conn);
@@ -543,11 +543,11 @@
 	REGISTER_LONG_CONSTANT(MYSQL_NUM, MYSQL_NUM, CONST_CS | CONST_PERSISTENT);
 	REGISTER_LONG_CONSTANT(MYSQL_BOTH, MYSQL_BOTH, CONST_CS | CONST_PERSISTENT);
 	REGISTER_LONG_CONSTANT(MYSQL_CLIENT_COMPRESS, CLIENT_COMPRESS, CONST_CS | CONST_PERSISTENT);
-#if MYSQL_VERSION_ID = 4
+#if MYSQL_VERSION_ID = 4
 	REGISTER_LONG_CONSTANT(MYSQL_CLIENT_SSL, CLIENT_SSL, CONST_CS | CONST_PERSISTENT);
 #endif
 	REGISTER_LONG_CONSTANT(MYSQL_CLIENT_INTERACTIVE, CLIENT_INTERACTIVE, CONST_CS | CONST_PERSISTENT);
-	REGISTER_LONG_CONSTANT(MYSQL_CLIENT_IGNORE_SPACE, CLIENT_IGNORE_SPACE, CONST_CS | CONST_PERSISTENT);
+	REGISTER_LONG_CONSTANT(MYSQL_CLIENT_IGNORE_SPACE, CLIENT_IGNORE_SPACE, CONST_CS | CONST_PERSISTENT);

 #ifndef MYSQL_USE_MYSQLND
 #if MYSQL_VERSION_ID = 4
@@ -717,7 +717,7 @@
 #if !defined(PHP_WIN32)  !defined(NETWARE)
 		struct servent *serv_ptr;
 		char *env;
-
+
 		MySG(default_port) = MYSQL_PORT;
 		if ((serv_ptr = getservbyname(mysql, tcp))) {
 			MySG(default_port) = (uint) ntohs((ushort) serv_ptr-s_port);
@@ -729,7 +729,7 @@
 		MySG(default_port) = MYSQL_PORT;
 #endif
 	}
-
+
 	if (PG(sql_safe_mode)) {
 		if (ZEND_NUM_ARGS()0) {
 			php_error_docref(NULL TSRMLS_CC, E_NOTICE, SQL safe mode in effect - ignoring host/user/password information);
@@ -748,7 +748,7 @@
 	}
 		} else {
 			if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, |s!s!s!bl, host_and_port, host_len,
-		user, user_len, passwd, passwd_len,
+		user, user_len, passwd, passwd_len,
 		new_link, client_flags)==FAILURE) {
 return;
 			}
@@ -835,7 +835,7 @@
 #else
 			mysql-multi_query = 0;
 #endif
-
+
 #ifndef MYSQL_USE_MYSQLND
 			mysql-conn = mysql_init(NULL);
 #else
@@ -890,7 +890,7 @@
 			/* ensure that the link did not die */
 #if A0  defined(MYSQL_USE_MYSQLND)
 			mysqlnd_end_psession(mysql-conn);
-#endif
+#endif
 			if (mysql_ping(mysql-conn)) {
 if (mysql_errno(mysql-conn) == 2006) {
 #ifndef MYSQL_USE_MYSQLND
@@ -915,7 +915,7 @@
 		ZEND_REGISTER_RESOURCE(return_value, mysql, le_plink);
 	} else { /* non persistent */
 		zend_rsrc_list_entry *index_ptr, new_index_ptr;
-
+
 		/* first we check the hash for the hashed_details key.  if it exists,
 		 * it should point us to the right offset where the actual mysql link sits.
 		 * if it doesn't, open a new mysql link, add it to the resource list,
@@ -973,7 +973,7 @@
 		}

 #ifndef MYSQL_USE_MYSQLND
-		if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, port, socket, client_flags)==NULL)
+		if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, port, socket, client_flags)==NULL)
 #else
 		if (mysqlnd_connect(mysql-conn, host, user, passwd, 0, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL)
 #endif
@@ -1074,7 +1074,7 @@
 #endif
 	zend_list_delete(resource_id);

-	if (!mysql_link
+	if (!mysql_link
 		|| (mysql_link  Z_RESVAL_P(mysql_link)==MySG(default_link))) {
 		MySG(default_link) = -1;
 		if (mysql_link) {
@@ -1096,7 +1096,7 @@
 	zval *mysql_link = NULL;
 	int id = -1;
 	php_mysql_conn *mysql;
-
+
 	if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, s|r, db, db_len, mysql_link) == FAILURE) {
 		return;
 	}
@@ -1107,11 

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c branches/PHP_5_3/ext/mysqli/mysqli.c trunk/ext/mysql/php_mysql.c trunk/ext/mysqli/mysqli.c

2010-10-04 Thread Ulf Wendel
uw   Mon, 04 Oct 2010 13:36:23 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=304016

Log:
Trying to fix compiler warnings (on Windows).

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c
U   php/php-src/trunk/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysqli/mysqli.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-10-04 13:36:06 UTC 
(rev 304015)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-10-04 13:36:23 UTC 
(rev 304016)
@@ -637,7 +637,7 @@
efree(MySG(connect_error));
}

-#ifdef A0  MYSQL_USE_MYSQLND
+#if defined(A0)  MYSQL_USE_MYSQLND
zend_hash_apply(EG(persistent_list), (apply_func_t) 
php_mysql_persistent_helper TSRMLS_CC);
 #endif

@@ -888,7 +888,7 @@
mysql-multi_query = 0;
 #endif
/* ensure that the link did not die */
-#if A0  defined(MYSQL_USE_MYSQLND)
+#if defined(A0)  MYSQL_USE_MYSQLND
mysqlnd_end_psession(mysql-conn);
 #endif
if (mysql_ping(mysql-conn)) {

Modified: php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c2010-10-04 13:36:06 UTC 
(rev 304015)
+++ php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c2010-10-04 13:36:23 UTC 
(rev 304016)
@@ -893,7 +893,7 @@
if (MyG(error_msg)) {
efree(MyG(error_msg));
}
-#ifdef A0  MYSQLI_USE_MYSQLND
+#if defined(A0)  MYSQLI_USE_MYSQLND
/* psession is being called when the connection is freed - explicitly 
or implicitly */
zend_hash_apply(EG(persistent_list), (apply_func_t) 
php_mysqli_persistent_helper_once TSRMLS_CC);
 #endif

Modified: php/php-src/trunk/ext/mysql/php_mysql.c
===
--- php/php-src/trunk/ext/mysql/php_mysql.c 2010-10-04 13:36:06 UTC (rev 
304015)
+++ php/php-src/trunk/ext/mysql/php_mysql.c 2010-10-04 13:36:23 UTC (rev 
304016)
@@ -637,7 +637,7 @@
efree(MySG(connect_error));
}

-#ifdef A0  MYSQL_USE_MYSQLND
+#if defined(A0)  MYSQL_USE_MYSQLND
zend_hash_apply(EG(persistent_list), (apply_func_t) 
php_mysql_persistent_helper TSRMLS_CC);
 #endif

@@ -888,7 +888,7 @@
mysql-multi_query = 0;
 #endif
/* ensure that the link did not die */
-#if A0  defined(MYSQL_USE_MYSQLND)
+#if defined(A0)  MYSQL_USE_MYSQLND
mysqlnd_end_psession(mysql-conn);
 #endif
if (mysql_ping(mysql-conn)) {

Modified: php/php-src/trunk/ext/mysqli/mysqli.c
===
--- php/php-src/trunk/ext/mysqli/mysqli.c   2010-10-04 13:36:06 UTC (rev 
304015)
+++ php/php-src/trunk/ext/mysqli/mysqli.c   2010-10-04 13:36:23 UTC (rev 
304016)
@@ -895,7 +895,7 @@
if (MyG(error_msg)) {
efree(MyG(error_msg));
}
-#ifdef A0  MYSQLI_USE_MYSQLND
+#if defined(A0)  MYSQLI_USE_MYSQLND
/* psession is being called when the connection is freed - explicitly 
or implicitly */
zend_hash_apply(EG(persistent_list), (apply_func_t) 
php_mysqli_persistent_helper_once TSRMLS_CC);
 #endif

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c branches/PHP_5_3/ext/mysqli/mysqli.c branches/PHP_5_3/ext/mysqli/mysqli_api.c branches/PHP_5_3/ext/mysqli/mysqli_nonapi.c trunk/ext/

2010-09-30 Thread Andrey Hristov
andrey   Thu, 30 Sep 2010 18:10:03 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=303897

Log:
Plug a leak in mysqli when in the same script
a pconn is reused.
Call end_psession earlier - so will mysqlnd and
the plugins free data earlier.

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c
U   php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_api.c
U   php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_nonapi.c
U   php/php-src/trunk/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysqli/mysqli.c
U   php/php-src/trunk/ext/mysqli/mysqli_api.c
U   php/php-src/trunk/ext/mysqli/mysqli_nonapi.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-09-30 15:26:56 UTC 
(rev 303896)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-09-30 18:10:03 UTC 
(rev 303897)
@@ -637,7 +637,7 @@
efree(MySG(connect_error));
}

-#ifdef MYSQL_USE_MYSQLND
+#ifdef A0  MYSQL_USE_MYSQLND
zend_hash_apply(EG(persistent_list), (apply_func_t) 
php_mysql_persistent_helper TSRMLS_CC);
 #endif

@@ -888,7 +888,7 @@
mysql-multi_query = 0;
 #endif
/* ensure that the link did not die */
-#if defined(MYSQL_USE_MYSQLND)
+#if A0  defined(MYSQL_USE_MYSQLND)
mysqlnd_end_psession(mysql-conn);
 #endif
if (mysql_ping(mysql-conn)) {

Modified: php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c2010-09-30 15:26:56 UTC 
(rev 303896)
+++ php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c2010-09-30 18:10:03 UTC 
(rev 303897)
@@ -893,7 +893,8 @@
if (MyG(error_msg)) {
efree(MyG(error_msg));
}
-#ifdef MYSQLI_USE_MYSQLND
+#ifdef A0  MYSQLI_USE_MYSQLND
+   /* psession is being called when the connection is freed - explicitly 
or implicitly */
zend_hash_apply(EG(persistent_list), (apply_func_t) 
php_mysqli_persistent_helper_once TSRMLS_CC);
 #endif
return SUCCESS;

Modified: php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_api.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_api.c2010-09-30 
15:26:56 UTC (rev 303896)
+++ php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_api.c2010-09-30 
18:10:03 UTC (rev 303897)
@@ -588,6 +588,9 @@
if (zend_hash_find(EG(persistent_list), mysql-hash_key, 
strlen(mysql-hash_key) + 1, (void **)le) == SUCCESS) {
if (Z_TYPE_P(le) == php_le_pmysqli()) {
mysqli_plist_entry *plist = (mysqli_plist_entry 
*) le-ptr;
+#if defined(MYSQLI_USE_MYSQLND)
+   mysqlnd_end_psession(mysql-mysql);
+#endif
zend_ptr_stack_push(plist-free_links, 
mysql-mysql);

MyG(num_active_persistent)--;

Modified: php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_nonapi.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_nonapi.c 2010-09-30 
15:26:56 UTC (rev 303896)
+++ php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_nonapi.c 2010-09-30 
18:10:03 UTC (rev 303897)
@@ -123,7 +123,7 @@
flags = ~CLIENT_LOCAL_FILES;
}
}
-   if (mysql-mysql  mysqli_resource  mysqli_resource-status  
MYSQLI_STATUS_INITIALIZED) {
+   if (mysql-mysql  mysqli_resource  (mysqli_resource-status  
MYSQLI_STATUS_INITIALIZED || (strlen(SAFE_STR(hostname))  2  
!strncasecmp(hostname, p:, 2 {
/* already connected, we should close the connection */
php_mysqli_close(mysql, MYSQLI_CLOSE_IMPLICIT, 
mysqli_resource-status TSRMLS_CC);
}
@@ -168,9 +168,6 @@
mysql-mysql = 
zend_ptr_stack_pop(plist-free_links);


MyG(num_inactive_persistent)--;
-#if defined(MYSQLI_USE_MYSQLND)
-   
mysqlnd_end_psession(mysql-mysql);
-#endif
/* reset variables */

 #ifndef MYSQLI_NO_CHANGE_USER_ON_PCONNECT

Modified: php/php-src/trunk/ext/mysql/php_mysql.c
===
--- php/php-src/trunk/ext/mysql/php_mysql.c 2010-09-30 15:26:56 UTC (rev 
303896)
+++ php/php-src/trunk/ext/mysql/php_mysql.c 2010-09-30 18:10:03 UTC (rev 
303897)
@@ -637,7 +637,7 @@
efree(MySG(connect_error));
}

-#ifdef MYSQL_USE_MYSQLND
+#ifdef A0  

[PHP-CVS] svn: /php/php-src/branches/PHP_5_3/ext/mysql/ php_mysql.c tests/mysql_trace_mode.phpt

2010-08-17 Thread Andrey Hristov
andrey   Tue, 17 Aug 2010 18:07:11 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=302396

Log:
Update with PHP_DEF_FE, also update the test

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_trace_mode.phpt

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-08-17 17:40:31 UTC 
(rev 302395)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-08-17 18:07:11 UTC 
(rev 302396)
@@ -251,7 +251,7 @@
 #endif /* NETWARE */
PHP_FE(mysql_query, 
arginfo_mysql_query)
PHP_FE(mysql_unbuffered_query,  
arginfo_mysql_query)
-   PHP_FE(mysql_db_query,  
arginfo_mysql_db_query)
+   PHP_DEP_FE(mysql_db_query,  
arginfo_mysql_db_query)
PHP_FE(mysql_list_dbs,  
arginfo__optional_mysql_link)
PHP_DEP_FE(mysql_list_tables,   
arginfo_mysql_select_db)
PHP_FE(mysql_list_fields,   
arginfo_mysql_list_fields)

Modified: php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_trace_mode.phpt
===
--- php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_trace_mode.phpt  
2010-08-17 17:40:31 UTC (rev 302395)
+++ php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_trace_mode.phpt  
2010-08-17 18:07:11 UTC (rev 302396)
@@ -29,6 +29,8 @@
 require_once(clean_table.inc);
 ?
 --EXPECTF--
+Deprecated: Function mysql_db_query() is deprecated in %s on line %d
+
 Deprecated: mysql_db_query(): %s

 Deprecated: mysql_escape_string(): %s

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c trunk/ext/mysql/php_mysql.c

2010-06-27 Thread Felipe Pena
felipe   Mon, 28 Jun 2010 01:19:08 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=300792

Log:
- Fix arginfo name

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysql/php_mysql.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-06-28 00:15:18 UTC 
(rev 300791)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-06-28 01:19:08 UTC 
(rev 300792)
@@ -303,7 +303,7 @@
PHP_FALIAS(mysql_fieldlen,  mysql_field_len,
arginfo_mysql_field_seek)
PHP_FALIAS(mysql_fieldtype, mysql_field_type,   
arginfo_mysql_field_seek)
PHP_FALIAS(mysql_fieldflags,mysql_field_flags,  
arginfo_mysql_field_seek)
-   PHP_FALIAS(mysql_selectdb,  mysql_select_db,
mysql_list_tables)
+   PHP_FALIAS(mysql_selectdb,  mysql_select_db,
arginfo_mysql_select_db)
 #ifndef NETWARE/* The below two functions not supported on 
NetWare */
 #if MYSQL_VERSION_ID  4
PHP_DEP_FALIAS(mysql_createdb,  mysql_create_db,
arginfo_mysql_select_db)

Modified: php/php-src/trunk/ext/mysql/php_mysql.c
===
--- php/php-src/trunk/ext/mysql/php_mysql.c 2010-06-28 00:15:18 UTC (rev 
300791)
+++ php/php-src/trunk/ext/mysql/php_mysql.c 2010-06-28 01:19:08 UTC (rev 
300792)
@@ -303,7 +303,7 @@
PHP_FALIAS(mysql_fieldlen,  mysql_field_len,
arginfo_mysql_field_seek)
PHP_FALIAS(mysql_fieldtype, mysql_field_type,   
arginfo_mysql_field_seek)
PHP_FALIAS(mysql_fieldflags,mysql_field_flags,  
arginfo_mysql_field_seek)
-   PHP_FALIAS(mysql_selectdb,  mysql_select_db,
mysql_list_tables)
+   PHP_FALIAS(mysql_selectdb,  mysql_select_db,
arginfo_mysql_select_db)
 #ifndef NETWARE/* The below two functions not supported on 
NetWare */
 #if MYSQL_VERSION_ID  4
PHP_DEP_FALIAS(mysql_createdb,  mysql_create_db,
arginfo_mysql_select_db)

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c trunk/ext/mysql/php_mysql.c

2010-05-25 Thread Andrey Hristov
andrey   Tue, 25 May 2010 22:55:10 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=299764

Log:
Handle the situation when mysql_init()/mysqlnd_init()
return NULL. It is a rare case of OOM but PHP shouldn't crash, if possible.

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysql/php_mysql.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-05-25 22:46:17 UTC 
(rev 299763)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2010-05-25 22:55:10 UTC 
(rev 299764)
@@ -960,9 +960,17 @@
 #else
mysql-conn = mysql_init(persistent);
 #endif
+   if (!mysql-conn) {
+   MySG(connect_error) = estrdup(OOM);
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, OOM);
+   efree(hashed_details);
+   efree(mysql);
+   MYSQL_DO_CONNECT_RETURN_FALSE();
+   }

-   if (connect_timeout != -1)
-   mysql_options(mysql-conn, 
MYSQL_OPT_CONNECT_TIMEOUT, (const char *)connect_timeout);
+   if (connect_timeout != -1) {
+   mysql_options(mysql-conn, MYSQL_OPT_CONNECT_TIMEOUT, 
(const char *)connect_timeout);
+   }

 #ifndef MYSQL_USE_MYSQLND
if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, 
port, socket, client_flags)==NULL)

Modified: php/php-src/trunk/ext/mysql/php_mysql.c
===
--- php/php-src/trunk/ext/mysql/php_mysql.c 2010-05-25 22:46:17 UTC (rev 
299763)
+++ php/php-src/trunk/ext/mysql/php_mysql.c 2010-05-25 22:55:10 UTC (rev 
299764)
@@ -960,9 +960,17 @@
 #else
mysql-conn = mysql_init(persistent);
 #endif
+   if (!mysql-conn) {
+   MySG(connect_error) = estrdup(OOM);
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, OOM);
+   efree(hashed_details);
+   efree(mysql);
+   MYSQL_DO_CONNECT_RETURN_FALSE();
+   }

-   if (connect_timeout != -1)
-   mysql_options(mysql-conn, 
MYSQL_OPT_CONNECT_TIMEOUT, (const char *)connect_timeout);
+   if (connect_timeout != -1) {
+   mysql_options(mysql-conn, MYSQL_OPT_CONNECT_TIMEOUT, 
(const char *)connect_timeout);
+   }

 #ifndef MYSQL_USE_MYSQLND
if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, 
port, socket, client_flags)==NULL)

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c trunk/ext/mysql/php_mysql.c

2010-05-20 Thread Felipe Pena
felipe   Thu, 20 May 2010 17:28:16 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=299527

Log:
- Added arginfo

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysql/php_mysql.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c	2010-05-20 15:26:26 UTC (rev 299526)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c	2010-05-20 17:28:16 UTC (rev 299527)
@@ -135,65 +135,166 @@
 #define MYSQL_DISABLE_MQ
 #endif

+/* {{{ arginfo */
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_connect, 0, 0, 0)
+	ZEND_ARG_INFO(0, hostname)
+	ZEND_ARG_INFO(0, username)
+	ZEND_ARG_INFO(0, password)
+	ZEND_ARG_INFO(0, new)
+	ZEND_ARG_INFO(0, flags)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_pconnect, 0, 0, 0)
+	ZEND_ARG_INFO(0, hostname)
+	ZEND_ARG_INFO(0, username)
+	ZEND_ARG_INFO(0, password)
+	ZEND_ARG_INFO(0, flags)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo__optional_mysql_link, 0, 0, 0)
+	ZEND_ARG_INFO(0, link_identifier)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_select_db, 0, 0, 1)
+	ZEND_ARG_INFO(0, database_name)
+	ZEND_ARG_INFO(0, link_identifier)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO(arginfo__void_mysql_arg, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_set_charset, 0, 0, 1)
+	ZEND_ARG_INFO(0, charset_name)
+	ZEND_ARG_INFO(0, link_identifier)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_query, 0, 0, 1)
+	ZEND_ARG_INFO(0, query)
+	ZEND_ARG_INFO(0, link_identifier)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_db_query, 0, 0, 2)
+	ZEND_ARG_INFO(0, database_name)
+	ZEND_ARG_INFO(0, query)
+	ZEND_ARG_INFO(0, link_identifier)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_list_fields, 0, 0, 2)
+	ZEND_ARG_INFO(0, database_name)
+	ZEND_ARG_INFO(0, table_name)
+	ZEND_ARG_INFO(0, link_identifier)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_escape_string, 0, 0, 1)
+	ZEND_ARG_INFO(0, string)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_real_escape_string, 0, 0, 1)
+	ZEND_ARG_INFO(0, string)
+	ZEND_ARG_INFO(0, link_identifier)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_result, 0, 0, 2)
+	ZEND_ARG_INFO(0, result)
+	ZEND_ARG_INFO(0, row)
+	ZEND_ARG_INFO(0, field)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo__result_mysql_arg, 0, 0, 1)
+	ZEND_ARG_INFO(0, result)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_fetch_object, 0, 0, 1)
+	ZEND_ARG_INFO(0, result)
+	ZEND_ARG_INFO(0, class_name)
+	ZEND_ARG_INFO(0, ctor_params)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_fetch_array, 0, 0, 1)
+	ZEND_ARG_INFO(0, result)
+	ZEND_ARG_INFO(0, result_type)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_data_seek, 0, 0, 2)
+	ZEND_ARG_INFO(0, result)
+	ZEND_ARG_INFO(0, row_number)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_fetch_field, 0, 0, 1)
+	ZEND_ARG_INFO(0, result)
+	ZEND_ARG_INFO(0, field_offset)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_field_seek, 0, 0, 2)
+	ZEND_ARG_INFO(0, result)
+	ZEND_ARG_INFO(0, field_offset)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_mysql_field_name, 0, 0, 2)
+	ZEND_ARG_INFO(0, result)
+	ZEND_ARG_INFO(0, field_index)
+ZEND_END_ARG_INFO()
+/* }}} */
+
 /* {{{ mysql_functions[]
  */
 static const zend_function_entry mysql_functions[] = {
-	PHP_FE(mysql_connect,NULL)
-	PHP_FE(mysql_pconnect,NULL)
-	PHP_FE(mysql_close,	NULL)
-	PHP_FE(mysql_select_db,NULL)
+	PHP_FE(mysql_connect,arginfo_mysql_connect)
+	PHP_FE(mysql_pconnect,arginfo_mysql_pconnect)
+	PHP_FE(mysql_close,	arginfo__optional_mysql_link)
+	PHP_FE(mysql_select_db,arginfo_mysql_select_db)
 #ifndef NETWARE		/* The below two functions not supported on NetWare */
 #if MYSQL_VERSION_ID  4
-	PHP_DEP_FE(mysql_create_db,			NULL)
-	PHP_DEP_FE(mysql_drop_db,			NULL)
+	PHP_DEP_FE(mysql_create_db,			arginfo_mysql_select_db)
+	PHP_DEP_FE(mysql_drop_db,			arginfo_mysql_select_db)
 #endif
 #endif	/* NETWARE */
-	PHP_FE(mysql_query,	NULL)
-	PHP_FE(mysql_unbuffered_query,		NULL)
-	PHP_FE(mysql_db_query,NULL)
-	PHP_FE(mysql_list_dbs,NULL)
-	PHP_DEP_FE(mysql_list_tables,		NULL)
-	PHP_FE(mysql_list_fields,			NULL)
-	PHP_FE(mysql_list_processes,		NULL)
-	PHP_FE(mysql_error,	NULL)
+	PHP_FE(mysql_query,	arginfo_mysql_query)
+	PHP_FE(mysql_unbuffered_query,		arginfo_mysql_query)
+	PHP_FE(mysql_db_query,arginfo_mysql_db_query)
+	PHP_FE(mysql_list_dbs,arginfo__optional_mysql_link)
+	PHP_DEP_FE(mysql_list_tables,		arginfo_mysql_select_db)
+	PHP_FE(mysql_list_fields,			arginfo_mysql_list_fields)
+	

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c branches/PHP_5_3/ext/mysqli/mysqli.c branches/PHP_5_3/ext/mysqli/mysqli_api.c branches/PHP_5_3/ext/mysqli/mysqli_nonapi.c trunk/ext/

2010-05-18 Thread Andrey Hristov
andrey   Tue, 18 May 2010 11:50:31 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=299448

Log:
Remove duplicated code.
Use one centralized functions for data extraction.

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c
U   php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_api.c
U   php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_nonapi.c
U   php/php-src/trunk/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysqli/mysqli_api.c
U   php/php-src/trunk/ext/mysqli/mysqli_nonapi.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c	2010-05-18 11:36:54 UTC (rev 299447)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c	2010-05-18 11:50:31 UTC (rev 299448)
@@ -1993,7 +1993,7 @@
 		}
 	}
 #else
-	mysqlnd_fetch_into(mysql_result, MYSQLND_FETCH_ASSOC, return_value, MYSQLND_MYSQL);
+	mysqlnd_fetch_into(mysql_result, ((result_type  MYSQL_NUM)? MYSQLND_FETCH_NUM:0) | ((result_type  MYSQL_ASSOC)? MYSQLND_FETCH_ASSOC:0), return_value, MYSQLND_MYSQL);
 #endif

 #ifdef ZEND_ENGINE_2
@@ -2071,19 +2071,7 @@
Gets a result row as an enumerated array */
 PHP_FUNCTION(mysql_fetch_row)
 {
-#ifdef MYSQL_USE_MYSQLND
-	MYSQL_RES		*result;
-	zval			*mysql_result;
-
-	if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, r, mysql_result) == FAILURE) {
-		return;
-	}
-	ZEND_FETCH_RESOURCE(result, MYSQL_RES *, mysql_result, -1, MySQL result, le_result);
-
-	mysqlnd_fetch_into(result, MYSQLND_FETCH_NUM, return_value, MYSQLND_MYSQL);
-#else
 	php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_NUM, 1, 0);
-#endif
 }
 /* }}} */

@@ -2105,25 +2093,7 @@
Fetch a result row as an array (associative, numeric or both) */
 PHP_FUNCTION(mysql_fetch_array)
 {
-#ifndef MYSQL_USE_MYSQLND
 	php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, 0, 2, 0);
-#else
-	MYSQL_RES		*result;
-	zval			*mysql_result;
-	long			mode = MYSQLND_FETCH_BOTH;
-
-	if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, r|l, mysql_result, mode) == FAILURE) {
-		return;
-	}
-	ZEND_FETCH_RESOURCE(result, MYSQL_RES *, mysql_result, -1, MySQL result, le_result);
-
-	if (mode  ~MYSQL_BOTH) {
-php_error_docref(NULL TSRMLS_CC, E_WARNING, The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH);
-mode = MYSQL_BOTH;
-}
-
-	mysqlnd_fetch_into(result, mode, return_value, MYSQLND_MYSQL);
-#endif
 }
 /* }}} */

@@ -2132,19 +2102,7 @@
Fetch a result row as an associative array */
 PHP_FUNCTION(mysql_fetch_assoc)
 {
-#ifndef MYSQL_USE_MYSQLND
 	php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_ASSOC, 1, 0);
-#else
-	MYSQL_RES		*result;
-	zval			*mysql_result;
-
-	if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, r, mysql_result) == FAILURE) {
-		return;
-	}
-	ZEND_FETCH_RESOURCE(result, MYSQL_RES *, mysql_result, -1, MySQL result, le_result);
-
-	mysqlnd_fetch_into(result, MYSQLND_FETCH_ASSOC, return_value, MYSQLND_MYSQL);
-#endif
 }
 /* }}} */


Modified: php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c	2010-05-18 11:36:54 UTC (rev 299447)
+++ php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c	2010-05-18 11:50:31 UTC (rev 299448)
@@ -1195,7 +1195,7 @@
 		}
 	}
 #else
-	mysqlnd_fetch_into(result, MYSQLND_FETCH_ASSOC, return_value, MYSQLND_MYSQLI);
+	mysqlnd_fetch_into(result, ((fetchtype  MYSQLI_NUM)? MYSQLND_FETCH_NUM:0) | ((fetchtype  MYSQLI_ASSOC)? MYSQLND_FETCH_ASSOC:0), return_value, MYSQLND_MYSQLI);
 #endif

 	if (into_object  Z_TYPE_P(return_value) != IS_NULL) {

Modified: php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_api.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_api.c	2010-05-18 11:36:54 UTC (rev 299447)
+++ php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_api.c	2010-05-18 11:50:31 UTC (rev 299448)
@@ -1148,18 +1148,7 @@
Get a result row as an enumerated array */
 PHP_FUNCTION(mysqli_fetch_row)
 {
-#if !defined(MYSQLI_USE_MYSQLND)
 	php_mysqli_fetch_into_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQLI_NUM, 0);
-#else
-	MYSQL_RES	*result;
-	zval		*mysql_result;
-
-	if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), O, mysql_result, mysqli_result_class_entry) == FAILURE) {
-		return;
-	}
-	MYSQLI_FETCH_RESOURCE(result, MYSQL_RES *, mysql_result, mysqli_result, MYSQLI_STATUS_VALID);
-	mysqlnd_fetch_into(result, MYSQLND_FETCH_NUM, return_value, MYSQLND_MYSQLI);
-#endif
 }
 /* }}} */


Modified: php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_nonapi.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqli/mysqli_nonapi.c	2010-05-18 11:36:54 UTC (rev 

Re: [PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c branches/PHP_5_3/ext/mysql/php_mysql_structs.h branches/PHP_5_3/ext/mysqli/mysqli.c branches/PHP_5_3/ext/mysqli/mysqli_nonapi.

2009-12-09 Thread Pierre Joye
On Wed, Dec 9, 2009 at 9:21 PM, Andrey Hristov and...@php.net wrote:
 andrey                                   Wed, 09 Dec 2009 20:21:05 +

 Revision: http://svn.php.net/viewvc?view=revisionrevision=291928

 Log:
 Remove the zval caching from mysqlnd. It was disabled versions ago
 due to problems on windows, which were not debugged. Better have
 code that is disabled not in the core.

For the record, it was only easier to catch on Windows but the problem
was also on other platforms (Johannes reproduced it as well).

Thanks for your work :)

Cheers,
-- 
Pierre

http://blog.thepimp.net | http://www.libgd.org

--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c branches/PHP_5_3/ext/mysql/php_mysql_structs.h branches/PHP_5_3/ext/mysqli/mysqli.c branches/PHP_5_3/ext/mysqli/php_mysqli_structs.h

2009-12-09 Thread Andrey Hristov
andrey   Wed, 09 Dec 2009 20:38:11 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=291932

Log:
Remove stub code which never actually was used for anything.
Things like this can be built on top of the core.

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql_structs.h
U   php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c
U   php/php-src/branches/PHP_5_3/ext/mysqli/php_mysqli_structs.h
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/config.w32
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/config9.m4
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.h
D   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_qcache.c
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_result.c
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
U   php/php-src/trunk/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysql/php_mysql_structs.h
U   php/php-src/trunk/ext/mysqli/mysqli.c
U   php/php-src/trunk/ext/mysqli/php_mysqli_structs.h
U   php/php-src/trunk/ext/mysqlnd/config.w32
U   php/php-src/trunk/ext/mysqlnd/config9.m4
U   php/php-src/trunk/ext/mysqlnd/mysqlnd.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd.h
D   php/php-src/trunk/ext/mysqlnd/mysqlnd_qcache.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_result.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c	2009-12-09 20:33:31 UTC (rev 291931)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c	2009-12-09 20:38:11 UTC (rev 291932)
@@ -125,9 +125,6 @@
 	int multi_query;
 } php_mysql_conn;

-#ifdef MYSQL_USE_MYSQLND
-static MYSQLND_QCACHE		*mysql_mysqlnd_qcache;
-#endif

 #if MYSQL_VERSION_ID = 40101
 #define MYSQL_DISABLE_MQ if (mysql-multi_query) { \
@@ -457,8 +454,6 @@
 		return FAILURE;
 	}
 #endif
-#else
-	mysql_mysqlnd_qcache = mysqlnd_qcache_init_cache();
 #endif

 	return SUCCESS;
@@ -484,8 +479,6 @@
 	mysql_server_end();
 #endif
 #endif
-#else
-	mysqlnd_qcache_free_cache_reference(mysql_mysqlnd_qcache);
 #endif

 	UNREGISTER_INI_ENTRIES();

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql_structs.h
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql_structs.h	2009-12-09 20:33:31 UTC (rev 291931)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql_structs.h	2009-12-09 20:38:11 UTC (rev 291932)
@@ -124,9 +124,6 @@
 	long result_allocated;
 	long trace_mode;
 	long allow_local_infile;
-#ifdef MYSQL_USE_MYSQLND
-	MYSQLND_QCACHE			*mysqlnd_qcache;
-#endif
 ZEND_END_MODULE_GLOBALS(mysql)

 #ifdef ZTS

Modified: php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c	2009-12-09 20:33:31 UTC (rev 291931)
+++ php/php-src/branches/PHP_5_3/ext/mysqli/mysqli.c	2009-12-09 20:38:11 UTC (rev 291932)
@@ -73,11 +73,7 @@
 zend_class_entry *mysqli_warning_class_entry;
 zend_class_entry *mysqli_exception_class_entry;

-#ifdef MYSQLI_USE_MYSQLND
-MYSQLND_QCACHE		*mysqli_mysqlnd_qcache;
-#endif

-
 typedef int (*mysqli_read_t)(mysqli_object *obj, zval **retval TSRMLS_DC);
 typedef int (*mysqli_write_t)(mysqli_object *obj, zval *newval TSRMLS_DC);

@@ -633,8 +629,6 @@
 		return FAILURE;
 	}
 #endif
-#else
-	mysqli_mysqlnd_qcache = mysqlnd_qcache_init_cache();
 #endif

 	memcpy(mysqli_object_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers));
@@ -872,8 +866,6 @@
 	mysql_server_end();
 #endif
 #endif
-#else
-	mysqlnd_qcache_free_cache_reference(mysqli_mysqlnd_qcache);
 #endif

 	zend_hash_destroy(mysqli_driver_properties);

Modified: php/php-src/branches/PHP_5_3/ext/mysqli/php_mysqli_structs.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqli/php_mysqli_structs.h	2009-12-09 20:33:31 UTC (rev 291931)
+++ php/php-src/branches/PHP_5_3/ext/mysqli/php_mysqli_structs.h	2009-12-09 20:38:11 UTC (rev 291932)
@@ -196,10 +196,6 @@
 extern zend_property_info mysqli_driver_property_info_entries[];
 extern zend_property_info mysqli_warning_property_info_entries[];

-#ifdef MYSQLI_USE_MYSQLND
-extern MYSQLND_QCACHE		*mysqli_mysqlnd_qcache;
-#endif
-
 extern void php_mysqli_fetch_into_hash(INTERNAL_FUNCTION_PARAMETERS, int override_flag, int into_object);
 extern void php_clear_stmt_bind(MY_STMT *stmt TSRMLS_DC);
 extern void php_clear_mysql(MY_MYSQL *);

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/config.w32
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/config.w32	2009-12-09 20:33:31 UTC (rev 291931)
+++ 

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysql/php_mysql.c branches/PHP_5_3/ext/mysql/tests/mysql_fetch_array.phpt branches/PHP_5_3/ext/mysqlnd/mysqlnd_result.c trunk/ext/mysql/php_mysql.c tr

2009-09-30 Thread Ulf Wendel
uw   Wed, 30 Sep 2009 14:39:33 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=289004

Log:
Fixing a leak in mysqlnd when passing invalid fetch modes to mysqlnd.

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
U   php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_array.phpt
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_result.c
U   php/php-src/trunk/ext/mysql/php_mysql.c
U   php/php-src/trunk/ext/mysql/tests/mysql_fetch_array.phpt
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_result.c

Modified: php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c
===
--- php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2009-09-30 14:34:32 UTC 
(rev 289003)
+++ php/php-src/branches/PHP_5_3/ext/mysql/php_mysql.c  2009-09-30 14:39:33 UTC 
(rev 289004)
@@ -1972,7 +1972,7 @@
}
}

-   if ((result_type  MYSQL_BOTH) == 0) {
+   if (result_type  ~MYSQL_BOTH) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, The result type 
should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH);
result_type = MYSQL_BOTH;
}
@@ -2149,6 +2149,11 @@
}
ZEND_FETCH_RESOURCE(result, MYSQL_RES *, mysql_result, -1, MySQL 
result, le_result);

+   if (mode  ~MYSQL_BOTH) {
+php_error_docref(NULL TSRMLS_CC, E_WARNING, The result type 
should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH);
+mode = MYSQL_BOTH;
+}
+
mysqlnd_fetch_into(result, mode, return_value, MYSQLND_MYSQL);
 #endif
 }

Modified: php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_array.phpt
===
--- php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_array.phpt 
2009-09-30 14:34:32 UTC (rev 289003)
+++ php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_array.phpt 
2009-09-30 14:39:33 UTC (rev 289004)
@@ -56,7 +56,7 @@
 do {
$illegal_mode = mt_rand(0, 1);
 } while (in_array($illegal_mode, array(MYSQL_ASSOC, MYSQL_NUM, MYSQL_BOTH)));
-$tmp = @mysql_fetch_array($res, $illegal_mode);
+$tmp = mysql_fetch_array($res, $illegal_mode);
 if (!is_array($tmp))
printf([013] Expecting array, got %s/%s. [%d] %s\n,
gettype($tmp), $tmp, mysql_errno($link), mysql_error($link));
@@ -355,5 +355,7 @@
   %unicode|string%(1) 1
 }

+Warning: mysql_fetch_array(): The result type should be either MYSQL_NUM, 
MYSQL_ASSOC or MYSQL_BOTH in %s on line %d
+
 Warning: mysql_fetch_array(): %d is not a valid MySQL result resource in %s on 
line %d
 done!

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_result.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_result.c   2009-09-30 
14:34:32 UTC (rev 289003)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_result.c   2009-09-30 
14:39:33 UTC (rev 289004)
@@ -901,13 +901,8 @@
lengths[i] = len;
}

-   /* Forbid ZE to free it, we will clean it */
-   Z_ADDREF_P(data);
-
-   if ((flags  MYSQLND_FETCH_BOTH) == 
MYSQLND_FETCH_BOTH) {
-   Z_ADDREF_P(data);
-   }
if (flags  MYSQLND_FETCH_NUM) {
+   Z_ADDREF_P(data);
zend_hash_next_index_insert(row_ht, 
data, sizeof(zval *), NULL);
}
if (flags  MYSQLND_FETCH_ASSOC) {
@@ -918,6 +913,7 @@
  the index is a numeric and convert it 
to it. This however means constant
  hashing of the column name, which is 
not needed as it can be precomputed.
*/
+   Z_ADDREF_P(data);
if (zend_hash_key-is_numeric == FALSE) 
{
 #if PHP_MAJOR_VERSION = 6

zend_u_hash_quick_update(Z_ARRVAL_P(row), IS_UNICODE,
@@ -1128,16 +1124,8 @@
for (i = 0; i  result-field_count; i++, field++, 
zend_hash_key++) {
zval *data = current_row[i];

-   /*
- Let us later know what to do with this zval. If 
ref_count  1, we will just
- decrease it, otherwise free it. zval_ptr_dtor() make 
this very easy job.
-   */
-   Z_ADDREF_P(data);
-
-   if ((flags  MYSQLND_FETCH_BOTH) == MYSQLND_FETCH_BOTH) 
{
-   Z_ADDREF_P(data);
-   }