Merge branch 'master' into sccp

* master:
  Fixed bug #74873 (Minor BC break: PCRE_JIT changes output of preg_match()).
  Fixed bug #72324 (imap_mailboxmsginfo() return wrong size)
  Fix redefine warnings
  Expand sb's name and capitalize my own
  Write the URL on a new line, so that it is easier copyable
This commit is contained in:
Dmitry Stogov 2017-07-07 10:22:37 +03:00
commit d17ed887f3
6 changed files with 39 additions and 7 deletions

10
NEWS
View File

@ -13,10 +13,18 @@ PHP NEWS
- GD: - GD:
. Fixed bug #74435 (Buffer over-read into uninitialized memory). (cmb) . Fixed bug #74435 (Buffer over-read into uninitialized memory). (cmb)
- IMAP:
. Fixed bug #72324 (imap_mailboxmsginfo() return wrong size).
(ronaldpoon at udomain dot com dot hk, Kalle)
- OpenSSL: - OpenSSL:
. Fixed bug #74651 (negative-size-param (-1) in memcpy in zif_openssl_seal()). . Fixed bug #74651 (negative-size-param (-1) in memcpy in zif_openssl_seal()).
(Stas) (Stas)
- PCRE:
. Fixed bug #74873 (Minor BC break: PCRE_JIT changes output of preg_match()).
(Dmitry)
06 Jul 2017, PHP 7.2.0alpha3 06 Jul 2017, PHP 7.2.0alpha3
- Core: - Core:
@ -63,7 +71,7 @@ PHP NEWS
22 Jun 2017, PHP 7.2.0alpha2 22 Jun 2017, PHP 7.2.0alpha2
- Core: - Core:
. Change PHP_OS_FAMILY value from "OSX" to "Darwin". (sb, kalle) . Change PHP_OS_FAMILY value from "OSX" to "Darwin". (Sebastian, Kalle)
- GD: - GD:
. Fixed bug #74744 (gd.h: stdarg.h include missing for va_list use in . Fixed bug #74744 (gd.h: stdarg.h include missing for va_list use in

View File

@ -2601,7 +2601,8 @@ PHP_FUNCTION(imap_mailboxmsginfo)
zval *streamind; zval *streamind;
pils *imap_le_struct; pils *imap_le_struct;
char date[100]; char date[100];
unsigned int msgno, unreadmsg, deletedmsg, msize; unsigned long msgno;
zend_ulong unreadmsg = 0, deletedmsg = 0, msize = 0;
if (zend_parse_parameters(ZEND_NUM_ARGS(), "r", &streamind) == FAILURE) { if (zend_parse_parameters(ZEND_NUM_ARGS(), "r", &streamind) == FAILURE) {
return; return;
@ -2614,10 +2615,6 @@ PHP_FUNCTION(imap_mailboxmsginfo)
/* Initialize return object */ /* Initialize return object */
object_init(return_value); object_init(return_value);
unreadmsg = 0;
deletedmsg = 0;
msize = 0;
for (msgno = 1; msgno <= imap_le_struct->imap_stream->nmsgs; msgno++) { for (msgno = 1; msgno <= imap_le_struct->imap_stream->nmsgs; msgno++) {
MESSAGECACHE * cache = mail_elt (imap_le_struct->imap_stream, msgno); MESSAGECACHE * cache = mail_elt (imap_le_struct->imap_stream, msgno);
mail_fetchstructure (imap_le_struct->imap_stream, msgno, NIL); mail_fetchstructure (imap_le_struct->imap_stream, msgno, NIL);

View File

@ -35,6 +35,21 @@
#if HAVE_IMAP #if HAVE_IMAP
#if defined(HAVE_IMAP2000) || defined(HAVE_IMAP2001) #if defined(HAVE_IMAP2000) || defined(HAVE_IMAP2001)
/* For now these appear on Windows, remove this check if it appears outside */
# ifdef PHP_WIN32
/* Undefine these LOG defines to avoid warnings */
# undef LOG_EMERG
# undef LOG_CRIT
# undef LOG_ERR
# undef LOG_WARNING
# undef LOG_NOTICE
# undef LOG_DEBUG
/* c-client also redefines its own ftruncate */
# undef ftruncate
# endif
/* these are used for quota support */ /* these are used for quota support */
# include "c-client.h" /* includes mail.h and rfc822.h */ # include "c-client.h" /* includes mail.h and rfc822.h */
# include "imap4r1.h" /* location of c-client quota functions */ # include "imap4r1.h" /* location of c-client quota functions */

View File

@ -826,6 +826,10 @@ PHPAPI void php_pcre_match_impl(pcre_cache_entry *pce, char *subject, int subjec
#ifdef HAVE_PCRE_JIT_SUPPORT #ifdef HAVE_PCRE_JIT_SUPPORT
if ((extra->flags & PCRE_EXTRA_EXECUTABLE_JIT) if ((extra->flags & PCRE_EXTRA_EXECUTABLE_JIT)
&& no_utf_check && !g_notempty) { && no_utf_check && !g_notempty) {
if (start_offset < 0 || start_offset > subject_len) {
pcre_handle_exec_error(PCRE_ERROR_BADOFFSET);
break;
}
count = pcre_jit_exec(pce->re, extra, subject, (int)subject_len, (int)start_offset, count = pcre_jit_exec(pce->re, extra, subject, (int)subject_len, (int)start_offset,
no_utf_check|g_notempty, offsets, size_offsets, jit_stack); no_utf_check|g_notempty, offsets, size_offsets, jit_stack);
} else } else

View File

@ -0,0 +1,8 @@
--TEST--
Bug #74873 (Minor BC break: PCRE_JIT changes output of preg_match())
--FILE--
<?php
var_dump(preg_match('/\S+/', 'foo bar', $matches, 0, 99999));
?>
--EXPECT--
bool(false)

View File

@ -3389,7 +3389,7 @@ function check_binary_tools_sdk()
/* Basic test, extend by need. */ /* Basic test, extend by need. */
if (BIN_TOOLS_SDK_VER_MAJOR < 2) { if (BIN_TOOLS_SDK_VER_MAJOR < 2) {
ERROR("Incompatible binary tools version. Please consult https://wiki.php.net/internals/windows/stepbystepbuild_sdk_2"); ERROR("Incompatible binary tools version. Please consult\r\nhttps://wiki.php.net/internals/windows/stepbystepbuild_sdk_2");
} }
} }