summaryrefslogtreecommitdiff
path: root/preproc.c
diff options
context:
space:
mode:
authorCyrill Gorcunov <gorcunov@gmail.com>2011-03-07 11:23:08 +0300
committerCyrill Gorcunov <gorcunov@gmail.com>2011-03-07 11:23:08 +0300
commitd34a1085b59e4171dfde4dfcfd2239247c909699 (patch)
tree9baf861a333b813c8dd09b94cfa49b3f184a0396 /preproc.c
parent91a65ba2b761fa8e19083a37184301569f70ddc7 (diff)
downloadnasm-d34a1085b59e4171dfde4dfcfd2239247c909699.tar.gz
nasm-d34a1085b59e4171dfde4dfcfd2239247c909699.tar.bz2
nasm-d34a1085b59e4171dfde4dfcfd2239247c909699.zip
preproc.c: Don't forget to dup filename before free
src_set_fname simply gets copy of pointer (ideally we need refcounting here) so don't pass the name which will be freed soon but rather pass a copy. Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Diffstat (limited to 'preproc.c')
-rw-r--r--preproc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/preproc.c b/preproc.c
index d7a96d8..07179e1 100644
--- a/preproc.c
+++ b/preproc.c
@@ -5006,7 +5006,7 @@ static char *pp_getline(void)
/* only set line and file name if there's a next node */
if (i->next) {
src_set_linnum(i->lineno);
- nasm_free(src_set_fname(i->fname));
+ nasm_free(src_set_fname(nasm_strdup(i->fname)));
}
istk = i->next;
list->downlevel(LIST_INCLUDE);