2009-06-19 Marcus Brinkmann <marcus@g10code.de>
authorMarcus Brinkmann <mb@g10code.com>
Fri, 19 Jun 2009 00:09:52 +0000 (00:09 +0000)
committerMarcus Brinkmann <mb@g10code.com>
Fri, 19 Jun 2009 00:09:52 +0000 (00:09 +0000)
Suggested by Simon McVittie:
* gtk+-2/gtksecentry.c (g_malloc, g_realloc, g_free): Renamed to
secentry_malloc, secentry_realloc.
(g_malloc0): Removed.
(GMALLOC_SIZE): Move to ...
* gtk+-2/gtksecentry.h (GMALLOC_SIZE): ... here.
(secentry_malloc, secentry_realloc, secentry_free): New prototypes.
* gtk+-2/pinentry-gtk-2.c (main): Set memory allocation vtable.

ChangeLog
gtk+-2/gtksecentry.c
gtk+-2/gtksecentry.h
gtk+-2/pinentry-gtk-2.c

index e2926f2..1fe3539 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2009-06-19  Marcus Brinkmann  <marcus@g10code.de>
+
+       Suggested by Simon McVittie:
+       * gtk+-2/gtksecentry.c (g_malloc, g_realloc, g_free): Renamed to
+       secentry_malloc, secentry_realloc.
+       (g_malloc0): Removed.
+       (GMALLOC_SIZE): Move to ...
+       * gtk+-2/gtksecentry.h (GMALLOC_SIZE): ... here.
+       (secentry_malloc, secentry_realloc, secentry_free): New prototypes.
+       * gtk+-2/pinentry-gtk-2.c (main): Set memory allocation vtable.
+
 2009-05-04  Till Adam <till@kdab.net>
 
        * qt4/main.cpp (qt_cmd_handler): Use WId instead of HWND.
index 4595122..9be6274 100644 (file)
@@ -269,14 +269,8 @@ gboolean g_use_secure_mem = FALSE;
                                } while(0)
 
 
-#if GLIB_CHECK_VERSION (2,15,5)
-#define GMALLOC_SIZE gsize
-#else
-#define GMALLOC_SIZE gulong
-#endif
-
 gpointer
-g_malloc (GMALLOC_SIZE size)
+secentry_malloc (GMALLOC_SIZE size)
 {
     gpointer p;
 
@@ -293,28 +287,9 @@ g_malloc (GMALLOC_SIZE size)
     return p;
 }
 
-gpointer
-g_malloc0 (GMALLOC_SIZE size)
-{
-    gpointer p;
-
-    if (size == 0)
-       return NULL;
-
-    if (g_use_secure_mem) {
-       p = (gpointer) secmem_malloc(size);
-       if (p)
-           memset(p, 0, size);
-    } else
-       p = (gpointer) calloc(size, 1);
-    if (!p)
-       g_error("could not allocate %ld bytes", size);
-
-    return p;
-}
 
 gpointer
-g_realloc (gpointer mem, GMALLOC_SIZE size)
+secentry_realloc (gpointer mem, GMALLOC_SIZE size)
 {
     gpointer p;
 
@@ -344,7 +319,7 @@ g_realloc (gpointer mem, GMALLOC_SIZE size)
 }
 
 void
-g_free(gpointer mem)
+secentry_free(gpointer mem)
 {
     if (mem) {
        if (m_is_secure(mem))
index f621ee2..0e94abe 100644 (file)
@@ -173,6 +173,16 @@ void
 gtk_secure_entry_get_layout_offsets(GtkSecureEntry * entry,
                                    gint * x, gint * y);
 
+#if GLIB_CHECK_VERSION (2,15,5)
+#define GMALLOC_SIZE gsize
+#else
+#define GMALLOC_SIZE gulong
+#endif
+
+gpointer secentry_malloc (GMALLOC_SIZE size);
+gpointer secentry_realloc (gpointer mem, GMALLOC_SIZE size);
+void secentry_free (gpointer mem);
+
 #ifdef __cplusplus
 }
 #endif                         /* __cplusplus */
index 4d85704..304a06c 100644 (file)
@@ -531,6 +531,18 @@ pinentry_cmd_handler_t pinentry_cmd_handler = gtk_cmd_handler;
 int
 main (int argc, char *argv[])
 {
+  static GMemVTable secure_mem =
+    {
+      secentry_malloc,
+      secentry_realloc,
+      secentry_free,
+      NULL,
+      NULL,
+      NULL
+    };
+
+  g_mem_set_vtable (&secure_mem);
+
   pinentry_init (PGMNAME);
     
 #ifdef FALLBACK_CURSES