[glib] gmem.c: array is only paritally filled by memcpy



commit 96a0c589eec8e66f0d879c2a0979df6fd2c23dde
Author: Thomas Hindoe Paaboel Andersen <phomes gmail com>
Date:   Mon Aug 20 16:41:42 2012 +0200

    gmem.c: array is only paritally filled by memcpy
    
    The size of the local_data arrray is too large. It should not be
    multiplied by the sizeof guint.
    
    The memcpy of profile_data to local_data later will only fill a part of the
    array.
    
    Spotted with the PVS-Studio static analyzer
    
    https://bugzilla.gnome.org/show_bug.cgi?id=681501

 glib/gmem.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
---
diff --git a/glib/gmem.c b/glib/gmem.c
index 3283f2b..c221453 100644
--- a/glib/gmem.c
+++ b/glib/gmem.c
@@ -714,7 +714,7 @@ profile_print_locked (guint   *local_data,
 void
 g_mem_profile (void)
 {
-  guint local_data[(MEM_PROFILE_TABLE_SIZE + 1) * 8 * sizeof (profile_data[0])];
+  guint local_data[(MEM_PROFILE_TABLE_SIZE + 1) * 8];
   gsize local_allocs;
   gsize local_zinit;
   gsize local_frees;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]