]> granicus.if.org Git - php/commitdiff
Fix 78213: Empty row pocket
authorChristoph M. Becker <cmbecker69@gmx.de>
Wed, 31 Jul 2019 16:05:40 +0000 (18:05 +0200)
committerChristoph M. Becker <cmbecker69@gmx.de>
Wed, 31 Jul 2019 16:05:40 +0000 (18:05 +0200)
We have to ensure that we don't create an arena which is smaller than
its header, regardless of the configured alignment.

NEWS
ext/mysqlnd/mysqlnd_block_alloc.c

diff --git a/NEWS b/NEWS
index 6e6407aed64fa004362d151316dad297943d4e61..db44d9b5355489a5c87c6a8294d4cd11fb7ebecd 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -21,6 +21,9 @@ PHP                                                                        NEWS
 - LiteSpeed:
   . Updated to LiteSpeed SAPI V7.5 (Fixed clean shutdown). (George Wang)
 
+- MySQLnd:
+  . Fixed bug #78213 (Empty row pocket). (cmb)
+
 - Standard:
   . Fixed bug #69100 (Bus error from stream_copy_to_stream (file -> SSL stream)
     with invalid length). (Nikita)
index e1d3f846ec81359d30ac2a198e1f245c13362286..10f6bd3b6db5dbaf0be8bc61bd8e8859e2739554 100644 (file)
@@ -161,7 +161,7 @@ mysqlnd_mempool_create(size_t arena_size)
        MYSQLND_MEMORY_POOL * ret;
 
        DBG_ENTER("mysqlnd_mempool_create");
-       arena = mysqlnd_arena_create(MAX(arena_size, sizeof(zend_arena)));
+       arena = mysqlnd_arena_create(MAX(arena_size, ZEND_MM_ALIGNED_SIZE(sizeof(zend_arena))));
        ret = mysqlnd_arena_alloc(&arena, sizeof(MYSQLND_MEMORY_POOL));
        ret->arena = arena;
        ret->last = NULL;