From: Eric Biggers Date: Wed, 22 May 2013 05:01:37 +0000 (-0500) Subject: read_metadata_resource(): Treat initial end-of-directory as empty image X-Git-Tag: v1.4.1~35 X-Git-Url: https://wimlib.net/git/?p=wimlib;a=commitdiff_plain;h=fa023959402e041d71295d5f2812174c55a0cc64 read_metadata_resource(): Treat initial end-of-directory as empty image --- diff --git a/src/metadata_resource.c b/src/metadata_resource.c index 041d1f78..109b0d32 100644 --- a/src/metadata_resource.c +++ b/src/metadata_resource.c @@ -138,8 +138,11 @@ read_metadata_resource(WIMStruct *wim, struct wim_image_metadata *imd) imd->security_data->total_length, root); if (ret == 0 && root->length == 0) { - ERROR("Metadata resource cannot begin with end-of-directory entry!"); - ret = WIMLIB_ERR_INVALID_DENTRY; + WARNING("Metadata resource begins with end-of-directory entry " + "(treating as empty image)"); + FREE(root); + root = NULL; + goto out_success; } if (ret) { @@ -175,6 +178,7 @@ read_metadata_resource(WIMStruct *wim, struct wim_image_metadata *imd) DEBUG("Done reading image metadata"); +out_success: imd->root_dentry = root; INIT_LIST_HEAD(&imd->unhashed_streams); goto out_free_buf;