diff options
Diffstat (limited to 'libspectre/ps.c')
-rw-r--r-- | libspectre/ps.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/libspectre/ps.c b/libspectre/ps.c index e6b508c..678aa7f 100644 --- a/libspectre/ps.c +++ b/libspectre/ps.c @@ -588,11 +588,12 @@ psscan(FILE *file, const char *filename, int scanstyle) // fall-through case 1: if (maxpages > 0) { + PS_free(doc->pages); doc->pages = (struct page *) PS_calloc(maxpages, sizeof(struct page)); - if (!doc->pages) - maxpages = 0; - CHECK_MALLOCED(doc->pages); + if (!doc->pages) + maxpages = 0; + CHECK_MALLOCED(doc->pages); } } } |