diff options
| author | Raghuram Subramani <raghus2247@gmail.com> | 2025-07-30 08:44:05 +0530 |
|---|---|---|
| committer | Raghuram Subramani <raghus2247@gmail.com> | 2025-07-30 08:44:05 +0530 |
| commit | 9b68f90d3d705017990d4cf77cdf94c476842c34 (patch) | |
| tree | d17207025b1ddf66c2e3e9e11bbd4e7d2cb89726 /src/engine.c | |
| parent | 6b618e71f577ecc3e2665717515828d1ae12927b (diff) | |
engine,lexer: avoid memory leaks using delete_directive()
Diffstat (limited to 'src/engine.c')
| -rw-r--r-- | src/engine.c | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/src/engine.c b/src/engine.c index f4b2f63..fe54a94 100644 --- a/src/engine.c +++ b/src/engine.c @@ -45,7 +45,6 @@ handle_include(char **buffer, key_match_t *match, directive_t *directive) free(partial_content); free(temp_buffer); - free(operand); } void @@ -72,14 +71,12 @@ handle_contentfor(char **buffer, temp_buffer + operand->length); free(temp_buffer); - free(operand); } void handle_eachdo(char **buffer, key_match_t *match, directive_t *directive) { eachdo_operands_t *operands = directive->operands; - char *original_content = operands->content; list_t *content_headers = engine_ingest(&operands->content); list_delete(content_headers); @@ -189,9 +186,6 @@ handle_eachdo(char **buffer, key_match_t *match, directive_t *directive) list_delete(atoms); free(content); free(temp_buffer); - free(operands->key); - free(original_content); - free(operands); } list_t * @@ -244,7 +238,6 @@ engine_ingest(char **buffer) break; case PUT: - free(directive->operands); skip++; break; case ENDEACHDO: @@ -256,11 +249,8 @@ engine_ingest(char **buffer) break; } - if (directive != NULL) - free(directive); - - if (match != NULL) - free(match); + directive_delete(directive); + free(match); } return content_headers; |
