diff options
Diffstat (limited to 'src/core/symbol.c')
| -rw-r--r-- | src/core/symbol.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/core/symbol.c b/src/core/symbol.c index 37a0cae..b6fd2ed 100644 --- a/src/core/symbol.c +++ b/src/core/symbol.c @@ -49,18 +49,18 @@ symbol_new(SymbolType sym, void *p_val) { void symbol_delete(Symbol *p_symbol) { - if (--p_symbol->i_refs == 0) { - switch (symbol_get_sym(p_symbol)) { - case SYM_PROCEDURE: - { - List *p_list_token = symbol_get_val(p_symbol); - list_delete(p_list_token); + if (--p_symbol->i_refs == 0) { + switch (symbol_get_sym(p_symbol)) { + case SYM_PROCEDURE: + { + List *p_list_token = symbol_get_val(p_symbol); + list_delete(p_list_token); + } + break; + NO_DEFAULT; + } + free(p_symbol); } - break; - NO_DEFAULT; - } - free(p_symbol); - } } void |
