aboutsummaryrefslogtreecommitdiffstats
path: root/e-util/e-sexp.c
Commit message (Collapse)AuthorAgeFilesLines
* Add chunk allocators.Not Zed2001-01-251-56/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-24 Not Zed <NotZed@Ximian.com> * e-sexp.h (ESExp): Add chunk allocators. * e-sexp.c: Removed some redundant debug printfs. (e_sexp_term_eval): Dont allocate result till we have it. so we can have a fatal error, and not leak it. (term_eval_plus): If we have to abort, free our arguments. (term_eval_sub): Same. (parse_new_term): Renamed to parse_term_new for consistency. Fixed callers. (e_sexp_result_new): Add the esexp as an argument. Ouch, lots of code to change for this. Allocate blocks from an ememchunk. Fixed all callers. (e_sexp_result_free): Same as above, free blocks from the ememchunk. Fixed all callers. (parse_term_new): (parse_term_free): Similarly, add the esexp to the argument, and alloc/free from memchunks. Fixed all local callers. (e_sexp_init): Setup the memory chunk allocators. (e_sexp_finalise): Destroy memchunk allocators. svn path=/trunk/; revision=7795
* Removed some redundant debug printfs. (e_sexp_term_eval): Dont allocateNot Zed2001-01-241-48/+40
| | | | | | | | | | | | | | 2001-01-24 Not Zed <NotZed@Ximian.com> * e-sexp.c: Removed some redundant debug printfs. (e_sexp_term_eval): Dont allocate result till we have it. so we can have a fatal error, and not leak it. (term_eval_plus): If we have to abort, free our arguments. (term_eval_sub): Same. (parse_new_term): Renamed to parse_term_new for consistency. Fixed callers. svn path=/trunk/; revision=7766
* Setup error return and return error on parse error. (parse_list): Fail ifNot Zed2001-01-231-13/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-23 Not Zed <NotZed@Ximian.com> * e-sexp.c (e_sexp_parse): Setup error return and return error on parse error. (parse_list): Fail if we have a problem. (parse_value): Here too. (fatal_error): Fatal error handling function, jumps back to the top caller. (term_eval_and): (e_sexp_term_eval): (term_eval_sub): (term_eval_plus): (term_eval_gt): (term_eval_lt): (term_eval_or): Fail on error. (e_sexp_term_eval): Added a comment about where this can be called, which is only from inside e_sexp_eval(). (e_sexp_eval): Setup setjmp error handler. (e_sexp_error): Error accessor function. * e-sexp.h: Added a longjmp environment to the structure, and an error return to parse. svn path=/trunk/; revision=7738
* Merge from camel-mt-branch.Not Zed2000-12-241-64/+35
| | | | | | | | 2000-12-24 Not Zed <NotZed@HelixCode.com> * Merge from camel-mt-branch. svn path=/trunk/; revision=7152
* Plug a memleak, need to free results from term_eval(). (term_eval_gt):Not Zed2000-11-291-0/+6
| | | | | | | | | | | | | | | | | 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
* #include <string.h> to quench warning. #include <stdlib.h> for sameKjartan Maraas2000-10-311-0/+1
| | | | | | | | | 200-10-30 Kjartan Maraas <kmaraas@gnome.org> * e-dialog-widgets.c: #include <string.h> to quench warning. * e-sexp.c: #include <stdlib.h> for same reason. svn path=/trunk/; revision=6288
* Infrastructure for date-based queriesPeter Williams2000-08-151-1/+1
| | | | svn path=/trunk/; revision=4838
* Warning cleanup: `#if 0' an unused function and add a missing publicEttore Perazzoli2000-07-111-1/+2
| | | | | | function prototype. svn path=/trunk/; revision=4060
* Kill debugging messageDan Winship2000-07-061-3/+0
| | | | | | * e-sexp.c (e_sexp_parse): Kill debugging message svn path=/trunk/; revision=3905
* g_return_val_if_fail to prevent a crash.Christopher James Lahey2000-06-021-0/+2
| | | | | | | | 2000-06-01 Christopher James Lahey <clahey@helixcode.com> * e-sexp.c (e_sexp_term_eval): g_return_val_if_fail to prevent a crash. svn path=/trunk/; revision=3337
* Utility function to build a bool as part of an expression string.Not Zed2000-05-311-0/+42
| | | | | | | | | | 2000-05-30 Not Zed <NotZed@HelixCode.com> * e-sexp.c (e_sexp_encode_bool): Utility function to build a bool as part of an expression string. (e_sexp_encode_string): Likewise for strings. svn path=/trunk/; revision=3300
* Destroy the g_scanner when cleaning up. (e_sexp_finalise): Free symbolNotZed2000-05-121-0/+12
| | | | | | | | | 2000-05-11 NotZed <NotZed@HelixCode.com> * e-sexp.c (e_sexp_finalise): Destroy the g_scanner when cleaning up. (e_sexp_finalise): Free symbol table on finalise. svn path=/trunk/; revision=2988
* Free the parse tree if we have one. (e_sexp_parse): If we already have aNotZed2000-05-031-0/+21
| | | | | | | | | 2000-05-02 NotZed <NotZed@HelixCode.com> * e-sexp.c (e_sexp_finalise): Free the parse tree if we have one. (e_sexp_parse): If we already have a parse tree, free it. svn path=/trunk/; revision=2757
* Formatting cleanup.NotZed2000-03-241-1/+1
| | | | | | | | 2000-03-22 NotZed <NotZed@HelixCode.com> * e-util/e-sexp.h: Formatting cleanup. svn path=/trunk/; revision=2154
* Added. moved from filter-sexp.[ch]NotZed2000-02-291-0/+1088
2000-02-28 NotZed <NotZed@HelixCode.com> * e-util/e-sexp.[ch]: Added. moved from filter-sexp.[ch] * e-util/Makefile.am (libeutil_a_SOURCES): Add e-sexp. (noinst_LTLIBRARIES): Changed to a libtool library. * Makefile.am (SUBDIRS): Build e-util before other stuff. (SUBDIRS): Build filter after camel. svn path=/trunk/; revision=1980