Branch: Tag:

1996-12-05

1996-12-05 00:47:58 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

fixed a small memory leak and added _memory_usage

Rev: bin/test_pike.pike:1.3
Rev: src/ChangeLog:1.32
Rev: src/array.c:1.4
Rev: src/array.h:1.2
Rev: src/builtin_functions.c:1.16
Rev: src/builtin_functions.h:1.3
Rev: src/callback.c:1.4
Rev: src/callback.h:1.3
Rev: src/constants.c:1.4
Rev: src/constants.h:1.2
Rev: src/language.yacc:1.15
Rev: src/las.c:1.10
Rev: src/las.h:1.3
Rev: src/mapping.c:1.8
Rev: src/mapping.h:1.2
Rev: src/modules/call_out/call_out.c:1.4
Rev: src/modules/pipe/pipe.c:1.7
Rev: src/multiset.c:1.2
Rev: src/multiset.h:1.2
Rev: src/object.c:1.6
Rev: src/object.h:1.4
Rev: src/program.c:1.11
Rev: src/program.h:1.4
Rev: src/stralloc.c:1.8
Rev: src/stralloc.h:1.4

526:    }    free((char *)base_table);   } +  + void count_memory_in_strings(INT32 *num, INT32 *size) + { +  unsigned INT32 e, num_=0, size_=0; +  if(!base_table) return; +  size_+=htable_size * sizeof(struct pike_string *); +  for(e=0;e<htable_size;e++) +  { +  struct pike_string *p; +  for(p=base_table[e];p;p=p->next) +  { +  num_++; +  size_+=sizeof(struct pike_string)+p->len; +  } +  } + #ifdef DEBUG +  if(num_strings != num_) +  fatal("Num strings is wrong!.\n"); + #endif +  num[0]=num_; +  size[0]=size_; + }