mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
P_S 5.7.28
This commit is contained in:
@@ -26,7 +26,7 @@
|
||||
|
||||
bool pfs_initialized= false;
|
||||
|
||||
void *pfs_malloc(size_t size, myf flags)
|
||||
void *pfs_malloc(PFS_builtin_memory_class *klass, size_t size, myf flags)
|
||||
{
|
||||
void *ptr= malloc(size);
|
||||
if (ptr && (flags & MY_ZEROFILL))
|
||||
@@ -34,19 +34,27 @@ void *pfs_malloc(size_t size, myf flags)
|
||||
return ptr;
|
||||
}
|
||||
|
||||
void pfs_free(void *ptr)
|
||||
void pfs_free(PFS_builtin_memory_class *, size_t, void *ptr)
|
||||
{
|
||||
if (ptr != NULL)
|
||||
free(ptr);
|
||||
}
|
||||
|
||||
void *pfs_malloc_array(size_t n, size_t size, myf flags)
|
||||
void *pfs_malloc_array(PFS_builtin_memory_class *klass, size_t n, size_t size, myf flags)
|
||||
{
|
||||
size_t array_size= n * size;
|
||||
/* Check for overflow before allocating. */
|
||||
if (is_overflow(array_size, n, size))
|
||||
return NULL;
|
||||
return pfs_malloc(array_size, flags);
|
||||
return pfs_malloc(klass, array_size, flags);
|
||||
}
|
||||
|
||||
void pfs_free_array(PFS_builtin_memory_class *klass, size_t n, size_t size, void *ptr)
|
||||
{
|
||||
if (ptr == NULL)
|
||||
return;
|
||||
size_t array_size= n * size;
|
||||
return pfs_free(klass, array_size, ptr);
|
||||
}
|
||||
|
||||
bool is_overflow(size_t product, size_t n1, size_t n2)
|
||||
|
Reference in New Issue
Block a user