Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#179 closed defect (fixed)

zip: Failure to archive wildcarded system and/or hidden files, even with -S option when not using sh

Reported by: Lewis Rosenthal Owned by:
Priority: major Milestone:
Component: *none Version:
Severity: high Keywords:
Cc:

Description

Under certain conditions (non-*nix shells), attempting to zip (with the -S parameter) a collection of files with either system, hidden, or both attributes set fails to find these files to archive. They are skipped.

OS2BOOT HS

zip -S ziptest.zip OS2*

Nothing is archived.

zip -S ziptest.zip OS2BOOT

OS2BOOT is archived.

However, if a path is specified, these files are found:

zip -S ziptest.zip .\OS2*

works, unless there is an OS2 directory which is seen, as is the case with a boot volume. In those cases, the directory is archived (not its contents, obviously), but all of the kernel files are skipped, even when a path is specified (\OS2* or .\OS2*).

Attachments (1)

zip.exe (107.9 KB ) - added by Silvan Scherrer 7 years ago.
try this build

Download all attachments as: .zip

Change History (5)

comment:1 by Lewis Rosenthal, 7 years ago

Wildcards now work when prefixing with a path:

[c:\] c:\zip.exe -S zipped.zip .\OS2*

This now picks up all files, identically to dash. This is an improvement over the previous build. However, without the path prefix, everything is as it was before.

Test:

Copy the above build to C:\

[c:\] c:\zip.exe -v | less

confirms that we are using the test build, above.

[c:\] attrib +SHR OS2*

ensures that all OS2* files in the root directory are now hidden, system, and read-only.

[c:\] c:\zip.exe -S zipped.zip OS2*
     zip warning: name not matched: OS2*

zip error: Nothing to do! (zipped.zip)

As before, CMD.EXE and 4OS2.EXE fail, but dash succeeds, including the OS2/ directory entry.

Under CMD.EXE and 4OS2.EXE, ? fails to expand, as well:

[c:\] c:\zip.exe -S zipped.zip OS2????
     zip warning: name not matched: OS2????

zip error: Nothing to do! (zipped.zip)

This should have picked up OS2BOOT, OS2DUMP, OS2KRNL, and OS2LOGO. (This works with a path prefix, e.g., .\OS2???? .)

*.* also fails similarly.

Specifying the full filename works:

[c:\] c:\zip.exe -S zipped.zip OS2BOOT
adding: OS2BOOT (deflated 91%)

I have not tested, but I expect that file lists should also work.

by Silvan Scherrer, 7 years ago

Attachment: zip.exe added

try this build

comment:2 by Lewis Rosenthal, 7 years ago

Resolution: fixed
Status: newclosed

Yes, that's got it, Silvan. All of the above tests - including lists - work with SHRA attributes, and under 4OS2 as well as CMD.

Kudos, and thanks.

comment:3 by Silvan Scherrer, 7 years ago

rpm uploaded in exp repo

comment:4 by Silvan Scherrer, 7 years ago

moved to rel as of now

Note: See TracTickets for help on using tickets.