Commit:    cabf38af6d1013b6ea6d0c8539fc8f632da04870
Author:    Kalle Sommer Nielsen <ka...@php.net>         Mon, 5 Aug 2013 
17:23:00 +0200
Parents:   f718684a6c1d6221015031d1e72d3eb55ecbb659
Branches:  PHP-5.4

Link:       
http://git.php.net/?p=php-src.git;a=commitdiff;h=cabf38af6d1013b6ea6d0c8539fc8f632da04870

Log:
Merge branch 'PHP-5.4'

Changed paths:
  M  ext/mysqlnd/mysqlnd.c


Diff:
diff --git a/ext/mysqlnd/mysqlnd.c b/ext/mysqlnd/mysqlnd.c
index 8ed810d..843e52d 100644
--- a/ext/mysqlnd/mysqlnd.c
+++ b/ext/mysqlnd/mysqlnd.c
@@ -1142,6 +1142,7 @@ MYSQLND ** 
mysqlnd_stream_array_check_for_readiness(MYSQLND ** conn_array TSRMLS
 static int mysqlnd_stream_array_to_fd_set(MYSQLND ** conn_array, fd_set * fds, 
php_socket_t * max_fd TSRMLS_DC)
 {
        php_socket_t this_fd;
+       php_stream *stream = NULL;
        int cnt = 0;
        MYSQLND **p = conn_array;
 
@@ -1151,7 +1152,8 @@ static int mysqlnd_stream_array_to_fd_set(MYSQLND ** 
conn_array, fd_set * fds, p
                 * when casting.  It is only used here so that the buffered 
data warning
                 * is not displayed.
                 * */
-               if (SUCCESS == php_stream_cast((*p)->data->net->stream, 
PHP_STREAM_AS_FD_FOR_SELECT | PHP_STREAM_CAST_INTERNAL,
+               stream = (*p)->data->net->stream;
+               if (stream != NULL && SUCCESS == php_stream_cast(stream, 
PHP_STREAM_AS_FD_FOR_SELECT | PHP_STREAM_CAST_INTERNAL,
                                                                                
(void*)&this_fd, 1) && this_fd >= 0) {
 
                        PHP_SAFE_FD_SET(this_fd, fds);
@@ -1169,6 +1171,7 @@ static int mysqlnd_stream_array_to_fd_set(MYSQLND ** 
conn_array, fd_set * fds, p
 static int mysqlnd_stream_array_from_fd_set(MYSQLND ** conn_array, fd_set * 
fds TSRMLS_DC)
 {
        php_socket_t this_fd;
+       php_stream *stream = NULL;
        int ret = 0;
        zend_bool disproportion = FALSE;
 
@@ -1176,7 +1179,8 @@ static int mysqlnd_stream_array_from_fd_set(MYSQLND ** 
conn_array, fd_set * fds
        MYSQLND **fwd = conn_array, **bckwd = conn_array;
 
        while (*fwd) {
-               if (SUCCESS == php_stream_cast((*fwd)->data->net->stream, 
PHP_STREAM_AS_FD_FOR_SELECT | PHP_STREAM_CAST_INTERNAL,
+               stream = (*fwd)->data->net->stream;
+               if (stream != NULL && SUCCESS == php_stream_cast(stream, 
PHP_STREAM_AS_FD_FOR_SELECT | PHP_STREAM_CAST_INTERNAL,
                                                                                
(void*)&this_fd, 1) && this_fd >= 0) {
                        if (PHP_SAFE_FD_ISSET(this_fd, fds)) {
                                if (disproportion) {


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

Reply via email to