andrey                                   Thu, 03 Dec 2009 09:43:26 +0000

Revision: http://svn.php.net/viewvc?view=revision&revision=291633

Log:
fix segfault introduced by Pierre in a recent commit
old code was doing something like
conn + sizeof(MYSQLND) * MYSQLND + plugin * sizeof(void) * sizeof(MYSQLND)
because `conn` is not casted to void*. `conn` has to be casted to void * and
then the whole experession will be void * and the calculations will work.

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

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
===================================================================
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2009-12-03 08:21:28 UTC 
(rev 291632)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2009-12-03 09:43:26 UTC 
(rev 291633)
@@ -2393,7 +2393,7 @@
        if (!conn || plugin_id >= mysqlnd_plugin_count()) {
                return NULL;
        }
-       DBG_RETURN((void *)(conn + sizeof(MYSQLND) + plugin_id * sizeof(void 
*)));
+       DBG_RETURN((void *)conn + sizeof(MYSQLND) + plugin_id * sizeof(void *));
 }
 /* }}} */


Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd.c
===================================================================
--- php/php-src/trunk/ext/mysqlnd/mysqlnd.c     2009-12-03 08:21:28 UTC (rev 
291632)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd.c     2009-12-03 09:43:26 UTC (rev 
291633)
@@ -2393,7 +2393,7 @@
        if (!conn || plugin_id >= mysqlnd_plugin_count()) {
                return NULL;
        }
-       DBG_RETURN((void *)(conn + sizeof(MYSQLND) + plugin_id * sizeof(void 
*)));
+       DBG_RETURN((void *)conn + sizeof(MYSQLND) + plugin_id * sizeof(void *));
 }
 /* }}} */


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

Reply via email to