fsize = ftell(f);
rewind(f);
outdata->dptr = talloc_size(outdata, fsize);
- CTDB_NO_MEMORY(ctdb, outdata->dptr);
+ if (outdata->dptr == NULL) {
+ fclose(f);
+ CTDB_NO_MEMORY(ctdb, outdata->dptr);
+ }
outdata->dsize = fread(outdata->dptr, 1, fsize, f);
fclose(f);
if (outdata->dsize != fsize) {