diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2017-04-04 21:53:44 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2017-04-04 21:53:44 +0300 |
commit | 070c57daec076e780e81d8b1011a02ea8ac8915f (patch) | |
tree | 96d4c7747e2f29398b23cdcc550d92f8d4417439 /awk.h | |
parent | 4271b995d64430e794e344f0c4985162eb991052 (diff) | |
download | egawk-070c57daec076e780e81d8b1011a02ea8ac8915f.tar.gz egawk-070c57daec076e780e81d8b1011a02ea8ac8915f.tar.bz2 egawk-070c57daec076e780e81d8b1011a02ea8ac8915f.zip |
fixes for memory leak for user-supplied sorting function.
Diffstat (limited to 'awk.h')
-rw-r--r-- | awk.h | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -783,6 +783,7 @@ typedef struct exp_instruction { } x; short source_line; + short pool_size; // memory management in symbol.c OPCODE opcode; } INSTRUCTION; @@ -1031,9 +1032,15 @@ typedef struct srcfile { int lasttok; } SRCFILE; +// structure for INSTRUCTION pool, needed mainly for debugger +typedef struct instruction_pool { +#define MAX_INSTRUCTION_ALLOC 3 // we don't call bcalloc with more than this + INSTRUCTION pool[MAX_INSTRUCTION_ALLOC + 1]; +} INSTRUCTION_POOL; + /* structure for execution context */ typedef struct context { - INSTRUCTION pools; + INSTRUCTION_POOL pools; NODE symbols; INSTRUCTION rule_list; SRCFILE srcfiles; |