pike.git / src / array.c

version» Context lines:

pike.git/src/array.c:16:   #include "pike_types.h"   #include "fsort.h"   #include "builtin_functions.h"   #include "pike_memory.h"   #include "gc.h"   #include "main.h"   #include "security.h"   #include "stuff.h"   #include "bignum.h"    - RCSID("$Id: array.c,v 1.66 2000/04/20 01:49:42 mast Exp $"); + RCSID("$Id: array.c,v 1.67 2000/04/20 02:41:44 hubbe Exp $");      struct array empty_array=   {    1, /* Never free */   #ifdef PIKE_SECURITY    0,   #endif    &empty_array, /* Next */    &empty_array, /* previous (circular) */    0, /* Size = 0 */
pike.git/src/array.c:1960:    describe(a);   #endif       add_ref(a);    free_svalues(ITEM(a), a->size, a->type_field);    a->size=0;       if(!(next=a->next))    fatal("Null pointer in array list.\n");    -  while((next=a->next) != &empty_array && a->refs == 1) -  { -  add_ref(next); -  free_program(a); -  a=next; -  } -  -  free_array(a); -  a=next; +  SET_NEXT_AND_FREE(a,free_array);    } while (a != & empty_array);   }         void count_memory_in_arrays(INT32 *num_, INT32 *size_)   {    INT32 num=0, size=0;    struct array *m;    for(m=empty_array.next;m!=&empty_array;m=m->next)    {