Also, free file->dir when freeing file. Signed-off-by: Scott Wood <[EMAIL PROTECTED]> --- srcpos.c | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/srcpos.c b/srcpos.c index 7340c33..7a0c47e 100644 --- a/srcpos.c +++ b/srcpos.c @@ -86,6 +86,16 @@ struct dtc_file *dtc_open_file(const char *fname, return file; } + if (fname[0] == '/') { + file->file = fopen(fname, "r"); + + if (!file->file) + goto out; + + file->name = strdup(fname); + return file; + } + if (!search) search = &default_search; @@ -100,6 +110,7 @@ struct dtc_file *dtc_open_file(const char *fname, } out: + free((void *)file->dir); free(file); return NULL; } @@ -109,5 +120,6 @@ void dtc_close_file(struct dtc_file *file) if (fclose(file->file)) die("Error closing \"%s\": %s\n", file->name, strerror(errno)); + free((void *)file->dir); free(file); } -- 1.5.3 _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev