Closed iq2luc closed 1 year ago
Thanks for spotting this, I believe it's fixed in cc09dd3cd01d4293a77497352e79562d00118bc6. Please let me know and I'll release a new version of cabextract.
I confirm cc09dd3 fixes the issue and the program is working OK. Thank you for the quick resolution and for the program itself.
This issue has now been fixed in the cabextract 1.11 release
Problem description
Path components coming from the archive are not properly created.
Cause
In function
ensure_filepath()
fromcabextract.c
line1229
,lstat()
is used to get information about that particular file system entry and then, at line1231
, even if thelstat()
call failed (for example the entry does not exist at all in the file system), thest_buf
is still used for determining if the path is a directory or not.Examples
Fail -
cabextract
does not create the path component coming from the archivePass - manually create the path component before calling
cabextract
Info - program version
Proposed solution
The proposed patch fixes the issue and the archive directory components are properly created.