From c627509e598b5cd612f41a76b1a022af111dfcd6 Mon Sep 17 00:00:00 2001 From: axel Date: Thu, 26 Oct 2006 06:34:33 +1000 Subject: [PATCH] Make al_pop return null on empty lists instead of crashing darcs-hash:20061025203433-ac50b-5d3a18d788d6f36dffe1136664f029a500989db9.gz --- util.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/util.c b/util.c index 5f00c54b8..3c0ee968a 100644 --- a/util.c +++ b/util.c @@ -948,7 +948,16 @@ void al_truncate( array_list_t *l, int new_sz ) static anything_t al_pop_generic( array_list_t *l ) { - anything_t e = l->arr[--l->pos]; + anything_t e; + + if( l->pos <= 0 ) + { + memset( &e, 0, sizeof(anything_t ) ); + return e; + } + + + e = l->arr[--l->pos]; if( (l->pos*3 < l->size) && (l->size < MIN_SIZE) ) { anything_t *old_arr = l->arr;