]> granicus.if.org Git - php/commitdiff
Drop mysqlnd mempool refcount
authorNikita Popov <nikic@php.net>
Mon, 22 Feb 2016 16:33:41 +0000 (17:33 +0100)
committerNikita Popov <nikic@php.net>
Mon, 22 Feb 2016 18:40:32 +0000 (19:40 +0100)
This member was no longer used.

Also fix handling of from_pool in resize_chunk. It was setting
pool to NULL instead of from_pool to FALSE.

ext/mysqlnd/mysqlnd_block_alloc.c
ext/mysqlnd/mysqlnd_structs.h

index 0897c65a64fd4a32c547ea1f8825378619a0f006..d92fd755d89baa1b0d18afe2462ccb55bbd1f2e2 100644 (file)
@@ -41,7 +41,6 @@ mysqlnd_mempool_free_chunk(MYSQLND_MEMORY_POOL_CHUNK * chunk)
                        */
                        pool->free_size += chunk->size;
                }
-               pool->refcount--;
        } else {
                mnd_efree(chunk->ptr);
        }
@@ -74,8 +73,7 @@ mysqlnd_mempool_resize_chunk(MYSQLND_MEMORY_POOL_CHUNK * chunk, unsigned int siz
                                chunk->ptr = new_ptr;
                                pool->free_size += chunk->size;
                                chunk->size = size;
-                               chunk->pool = NULL; /* now we have no pool memory */
-                               pool->refcount--;
+                               chunk->from_pool = FALSE; /* now we have no pool memory */
                        } else {
                                /* If the chunk is > than asked size then free_memory increases, otherwise decreases*/
                                pool->free_size += (chunk->size - size);
@@ -93,8 +91,7 @@ mysqlnd_mempool_resize_chunk(MYSQLND_MEMORY_POOL_CHUNK * chunk, unsigned int siz
                                memcpy(new_ptr, chunk->ptr, chunk->size);
                                chunk->ptr = new_ptr;
                                chunk->size = size;
-                               chunk->pool = NULL; /* now we have non-pool memory */
-                               pool->refcount--;
+                               chunk->from_pool = FALSE; /* now we have non-pool memory */
                        }
                }
        } else {
@@ -136,7 +133,6 @@ MYSQLND_MEMORY_POOL_CHUNK * mysqlnd_mempool_get_chunk(MYSQLND_MEMORY_POOL * pool
                        }
                } else {
                        chunk->from_pool = TRUE;
-                       ++pool->refcount;
                        chunk->ptr = pool->arena + (pool->arena_size - pool->free_size);
                        /* Last step, update free_size */
                        pool->free_size -= size;
@@ -157,7 +153,6 @@ mysqlnd_mempool_create(size_t arena_size)
        if (ret) {
                ret->get_chunk = mysqlnd_mempool_get_chunk;
                ret->free_size = ret->arena_size = arena_size ? arena_size : 0;
-               ret->refcount = 0;
                /* OOM ? */
                ret->arena = mnd_emalloc(ret->arena_size);
                if (!ret->arena) {
index cc5e2b7ac4e84687f84401bd1f6bc14a817a95b7..f3813eeb31ff690c52c48a0f503c0d980069769e 100644 (file)
@@ -59,7 +59,6 @@ typedef struct st_mysqlnd_memory_pool_chunk_llist MYSQLND_MEMORY_POOL_CHUNK_LLIS
 struct st_mysqlnd_memory_pool
 {
        zend_uchar *arena;
-       unsigned int refcount;
        unsigned int arena_size;
        unsigned int free_size;