aboutsummaryrefslogtreecommitdiffstats
path: root/e-util/e-memory.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix from Zan Lynx <zlynx@acm.org> to lock the memchunk before freeing theNot Zed2004-01-051-0/+6
| | | | | | | | | | 2004-01-05 Not Zed <NotZed@Ximian.com> * e-memory.c (e_mempool_destroy): Fix from Zan Lynx <zlynx@acm.org> to lock the memchunk before freeing the pool header. svn path=/trunk/; revision=24042
* First big sync of my GNOME 2 porting work (incomplete, and stillEttore Perazzoli2002-11-021-1/+1
| | | | | | | | pretty broken). Weeeeee! svn path=/trunk/; revision=18503
* Cast to a string type. (term_eval_castint): Cast to an int type.Not Zed2002-07-161-3/+13
| | | | | | | | | | | | 2002-07-15 Not Zed <NotZed@Ximian.com> * e-sexp.c (term_eval_caststring): Cast to a string type. (term_eval_castint): Cast to an int type. (symbols[]): Add to symbol table. * e-memory.c: Some more profiling for epoolv's. svn path=/trunk/; revision=17474
* Prune free'd nodes from our free list otherwise we'll end up re-usingJeffrey Stedfast2002-01-051-0/+17
| | | | | | | | | | 2002-01-04 Jeffrey Stedfast <fejj@ximian.com> * e-memory.c (e_memchunk_clean): Prune free'd nodes from our free list otherwise we'll end up re-using free'd memory blocks and that's not a Good Thing (tm). svn path=/trunk/; revision=15250
* Fixing the license text.Ettore Perazzoli2001-10-281-1/+0
| | | | svn path=/trunk/; revision=14212
* Update the licensing information to require version 2 of the GPLEttore Perazzoli2001-10-271-2/+2
| | | | | | (instead of version 2 or any later version). svn path=/trunk/; revision=14190
* Added some malloc check stuff.Not Zed2001-07-091-7/+72
| | | | | | | | 2001-07-05 Not Zed <NotZed@Ximian.com> * e-memory.c: Added some malloc check stuff. svn path=/trunk/; revision=10899
* Update the copyrights, replacing Helix Code with Ximian andEttore Perazzoli2001-06-231-1/+1
| | | | | | helixcode.com with ximian.com all over the place. svn path=/trunk/; revision=10440
* Modified to match e_strv_get behaviour. Assert on bad cases, and return ""Not Zed2001-04-261-4/+328
| | | | | | | | | | | | | | | | | | | | | | | | | | 2001-04-26 Not Zed <NotZed@Ximian.com> * e-memory.c (e_poolv_get): Modified to match e_strv_get behaviour. Assert on bad cases, and return "" rather than NULL for empty/unset strings. (e_poolv_new): Simplify the mutex cases, only have a single mutex for mempool and hashtable references. (e_poolv_set): Simplify mutex code. Fixed a #ifdef orde prob in profile stuff. Always copy string to our own memory when we add it to the hash, even if we free it; I think this would have led to dangling references otherwise. (e_poolv_destroy): Renamed from poolv_free, for consistency with the rest of the allocators here. (e_poolv_set): Add optional refcounting code here, not currently enabled/used, but should make proper string collection work easily. (e_poolv_destroy): Unrefcount the strings here. (e_poolv_cpy): Add refcounting code here. * e-memory.[ch]: Applied Jacob's patches <jacob@ximian.com> for 'e-poolv' type, added his name to the authors list. svn path=/trunk/; revision=9570
* Added #include <glib.h> and move corresponding local headers to the top toKjartan Maraas2001-04-241-2/+2
| | | | | | | | | | 2001-04-24 Kjartan Maraas <kmaraas@gnome.org> * e-gui-utils.c, e-memory, e-msgport.c, e-pilot-map, e-sexp.c: Added #include <glib.h> and move corresponding local headers to the top to catch missing includes in them. Tip from clahey. svn path=/trunk/; revision=9537
* Remove #include <glib.h> Shuffle some headers. Remove #includeKjartan Maraas2001-03-301-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-29 Kjartan Maraas <kmaraas@gnome.org> * e-corba-utils.h: Remove #include <glib.h> * e-dialog-widgets.c: Shuffle some headers. * e-dialog-widgets.h: Remove #include <libgnomeui/gnome-propertybox.h> * e-gtk-utils.c: #include <gtk/gtksignal.h> * e-gtk-utils.h: Replace #include <gtk/gtk.h> * e-gui-utils.c: Replace #include <gnome.h> * e-html-utils.c: Shuffle headers. * e-iterator.c: Replace #include <gtk/gtk.h> * e-iterator.h: Replace #include <gtk/gtk.h> * e-list-iterator.c: Remove #include <gtk/gtk.h> * e-list-iterator.h: Replace #include <gtk/gtk.h> * e-list.c: Remove #include <gtk/gtk.h> * e-list.h: Replace #include <gtk/gtk.h> * e-memory.c: #include <string.h> and <stdlib.h> * e-msgport.c: Move around some includes. s/%d/%ld/g in a printf() call to fix a warning. * e-pilot-map.c: #include <string.h>. Replace #include <gnome.h> * e-pilot-util.c: Remove #include <gnome.h> * e-sexp.c: Remove #include <glib.h> * e-sexp.h: Replace #include <gtk/gtk.h> * e-time-utils.c: #include <string.h> * md5-utils.c: Shuffle headers. * test-ename-western-gtk.c: Replace #include <gnome.h> * test-ename-western.c: Same here. svn path=/trunk/; revision=9016
* Changed to allocate raw blocks for the data, and keep track of them withNot Zed2001-02-081-44/+23
| | | | | | | | | | 2001-02-08 Not Zed <NotZed@Ximian.com> * e-memory.c (EMemChunk): Changed to allocate raw blocks for the data, and keep track of them with an array, this is so the native malloc alignment is not lost at the allocation stage. svn path=/trunk/; revision=8100
* Fix typename of args (for all funcs). (e_strv_set_ref): Assert the indexNot Zed2000-11-301-20/+28
| | | | | | | | | | | | 2000-11-30 Not Zed <NotZed@HelixCode.com> * e-memory.c (e_strv_new): Fix typename of args (for all funcs). (e_strv_set_ref): Assert the index is in range. (e_strv_set_ref_free): " (e_strv_set): " (e_strv_get): " svn path=/trunk/; revision=6733
* Plug a memleak, need to free results from term_eval(). (term_eval_gt):Not Zed2000-11-291-0/+9
| | | | | | | | | | | | | | | | | 2000-11-29 Not Zed <NotZed@HelixCode.com> * e-sexp.c (term_eval_lt): Plug a memleak, need to free results from term_eval(). (term_eval_gt): (term_eval_eq): 2000-11-27 Not Zed <NotZed@HelixCode.com> * e-memory.c (e_mempool_new): Added some locking to global data. This should make the interfaces mt-safe, although each object is only per-thread safe. svn path=/trunk/; revision=6710
* New function, set a reference to a string that is then owned/free'd by theNot Zed2000-11-221-18/+59
| | | | | | | | | | | | 2000-11-22 Not Zed <NotZed@HelixCode.com> * e-memory.c (e_strv_set_ref_free): New function, set a reference to a string that is then owned/free'd by the strv. (e_strv_destroy): If there are any strings to destroy, free them here. svn path=/trunk/; revision=6645
* If we dont get a big enough chunk in the first node, give up. Otherwise weNot Zed2000-11-211-9/+9
| | | | | | | | | | | | 2000-11-22 Not Zed <NotZed@HelixCode.com> * e-memory.c (e_mempool_alloc): If we dont get a big enough chunk in the first node, give up. Otherwise we spend too much time searching. (e_mempool_strdup): Doh, and allocate enough for the terminating NUL at that. svn path=/trunk/; revision=6631
* New function to strdup into a mempool.Not Zed2000-11-211-0/+10
| | | | | | | | | 2000-11-21 Not Zed <NotZed@HelixCode.com> * e-memory.c (e_mempool_strdup): New function to strdup into a mempool. svn path=/trunk/; revision=6630
* New function to allocate a zero'd out chunk.Not Zed2000-11-211-0/+10
| | | | | | | | | 2000-11-21 Not Zed <NotZed@HelixCode.com> * e-memory.c (e_memchunk_alloc0): New function to allocate a zero'd out chunk. svn path=/trunk/; revision=6624
* New routines for fast memory management and compact string array storage.Not Zed2000-11-211-0/+831
2000-11-20 Not Zed <NotZed@HelixCode.com> * e-memory.[ch]: New routines for fast memory management and compact string array storage. * Makefile.am (libeutil_la_SOURCES): Added e-memory.[ch]. svn path=/trunk/; revision=6619