diff options
Diffstat (limited to 'rdoff/rdfload.c')
-rw-r--r-- | rdoff/rdfload.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/rdoff/rdfload.c b/rdoff/rdfload.c index 5b981034..4737282e 100644 --- a/rdoff/rdfload.c +++ b/rdoff/rdfload.c @@ -29,12 +29,13 @@ extern int rdf_errno; rdfmodule * rdfload(const char *filename) { - rdfmodule * f = malloc(sizeof(rdfmodule)); + rdfmodule * f; long bsslength = 0; char * hdr; rdfheaderrec *r; - if (f == NULL) + f = malloc(sizeof(rdfmodule)); + if (f == NULL) { rdf_errno = 6; /* out of memory */ return NULL; @@ -92,7 +93,7 @@ rdfmodule * rdfload(const char *filename) } f->b = malloc ( bsslength ); - if (! f->b ) + if (bsslength && (!f->b)) { free(f->t); free(f->d); |