Skip to content
  • Tim Janik's avatar
    implemented static debugging hash-tree to validate slice adresses and · 1bd89934
    Tim Janik authored
    Thu Dec 28 12:50:31 2006  Tim Janik  <timj@imendio.com>
    
            * glib/gslice.h, glib/gslice.c: implemented static debugging
            hash-tree to validate slice adresses and sizes with G_SLICE=debug-blocks.
            use abort() to exit in mem_error() to allow catching of these in gdb.
            abort programs with a descriptive error message if g_thread_init() is
            called after GSlice was in use. previously this just silently corrupted
            the magazines.
    
            * glib/ghash.c (struct _GHashNode): reordered fields to keep 8-byte
            pointer alignment on 64bit systems and request smaller slice sizes
            on 32bit systems.
    
            * tests/slice-test.c: support '~' option flag to introduce slice
            allocation/release corruption with a significant probability. this
            allowes testing of G_SLICE=debug-blocks.
    1bd89934