From: Arpad Ray Date: Thu, 27 Jun 2013 18:05:23 +0000 (+0100) Subject: Fix bug #62535 - $_SESSION[$key]["cancel_upload"] doesn't work as documented X-Git-Tag: php-5.4.18RC1~43^2~1 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ce8c023910562e84d5e00825a1e784174bcb3f1b;p=php Fix bug #62535 - $_SESSION[$key]["cancel_upload"] doesn't work as documented When uploading multiple files, the array in the session where the progress data is stored (and cancel_upload key is set) was overwritten whenever the progress data was updated, so pending uploads would proceed anyway. --- diff --git a/ext/session/session.c b/ext/session/session.c index d9989ba753..a130947419 100644 --- a/ext/session/session.c +++ b/ext/session/session.c @@ -2366,7 +2366,7 @@ static void php_session_rfc1867_update(php_session_rfc1867_progress *progress, i php_session_initialize(TSRMLS_C); PS(session_status) = php_session_active; IF_SESSION_VARS() { - progress->cancel_upload = php_check_cancel_upload(progress TSRMLS_CC); + progress->cancel_upload |= php_check_cancel_upload(progress TSRMLS_CC); ZEND_SET_SYMBOL_WITH_LENGTH(Z_ARRVAL_P(PS(http_session_vars)), progress->key.c, progress->key.len+1, progress->data, 2, 0); } php_session_flush(TSRMLS_C);