Skip to content
  • Tim Janik's avatar
    prepared deprecation of GMemChunk and GAllocator. added g_slice_*() API to · 0cba1b53
    Tim Janik authored
    Tue Nov  1 16:24:20 2005  Tim Janik  <timj@imendio.com>
    
            * glib/gmem.[hc]: prepared deprecation of GMemChunk and GAllocator.
            added g_slice_*() API to allocate and cache small bits of memory.
            an actuall allocator implementation for g_slice_*() is still pending.
    
            * glib/gthread.[hc]: changes from a patch by Matthias Clasen.
            changed GRealThread list to use in-structure *next; fields instead
            of GSList, in order for thread iteration to not depenend on g_slice_*()
            indirectly.
            _g_thread_mem_private_get():
            _g_thread_mem_private_set(): added accessors for private memory,
            needed because the ordinary GPrivate implementation relies on GArray
            and GSList and therefore indirectly on working g_slice_*() allocations.
    
            * glib/gthread.[hc]:
            g_thread_foreach(): new public API function to loop over all existing threads.
    
            * glib/gdataset.c:
            * glib/gstring.c:
            * glib/gcache.c:
            * glib/garray.c:
            * glib/gqueue.c:
            * glib/gslist.c:
            * glib/glist.c:
            * glib/ghash.c:
            * glib/gtree.c:
            * glib/ghook.c:
            * glib/gmain.c:
            * glib/gnode.c:
            removed GAllocator and free list usages and accompanying locks.
            use g_slice_*() API to allocate and cache small bits of memory.
    
            * glib/ghook.h: removed GMemChunk field from public API.
    
            * glib/gslist.h:
            * glib/glist.h: deprecate allocator API, provide _free1() for consistency.
    
            * glib/gnode.h: deprecate allocator API.
    
            * glib/gmain.c: reordered GPollRec fields so g_slice_free_chain() can
            be used for poll rec lists.
    
            * glib/grel.c: removed mem chunk usage, and allocated tuples via g_slice_*().
            g_relation_destroy(): free all tuples from the all_tuples hash table,
            this effectively maintains the life time track keeping of tuples.
            g_relation_delete_tuple(): free tuples which are removed from the
            all_tuples hash table. this fixes a temporary leak that was present
            in the memchunk code until the destruction of the relation.
    0cba1b53
To find the state of this project's repository at the time of any of these versions, check out the tags.