-
- Downloads
Add overwrite argument to extract_file_from_archive and Archive.extract
Previously, extracted files were always overwritten (so that is the "default" for Archive.extract() and mostly what I'm specifying in the C/C++ code by default now), but this caused a problem with DIZ extraction: archives that contained multiple DIZ files (e.g in sub-directories), the last to be extracted would be used. A maximum of 3 DIZs can be extracted, so it would usually be the 3rd DIZ in the archive if there were that many. Another solution would be to *only* extract DIZ files from the root of the archive and I should look into that as well, but the always-overwrite behavior also seemed to be wrong, so that *also* needed fixing (allow caller to control behavior). This fixes issue #317, at least for archives where the root DIZ exists *before* any nested DIZ files. I'll have to try and create a purposeful archive to test the other conditions (where the root DIZ would appear *after* the nested DIZ(s)).
parent
76720fc1
No related branches found
No related tags found
Showing
- src/sbbs3/filedat.c 4 additions, 1 deletionsrc/sbbs3/filedat.c
- src/sbbs3/filedat.h 1 addition, 1 deletionsrc/sbbs3/filedat.h
- src/sbbs3/js_archive.c 7 additions, 2 deletionssrc/sbbs3/js_archive.c
- src/sbbs3/pack_qwk.cpp 1 addition, 0 deletionssrc/sbbs3/pack_qwk.cpp
- src/sbbs3/pack_rep.cpp 1 addition, 0 deletionssrc/sbbs3/pack_rep.cpp
- src/sbbs3/sbbsecho.c 1 addition, 1 deletionsrc/sbbs3/sbbsecho.c
- src/sbbs3/un_qwk.cpp 1 addition, 0 deletionssrc/sbbs3/un_qwk.cpp
- src/sbbs3/un_rep.cpp 1 addition, 0 deletionssrc/sbbs3/un_rep.cpp
Loading
Please register or sign in to comment