Opened 11 years ago
Closed 11 years ago
#502 closed defect (fixed)
Wrong error message when opening invalid zip file
Reported by: | John Small | Owned by: | Gregg Young |
---|---|---|---|
Priority: | minor | Milestone: | Release_3.22 |
Component: | fm/2 base | Version: | 3.21 |
Keywords: | Cc: |
Description
Attempting to open an invalid zip file (End-of-central-directory signature not found.) results in an error message saying that unzip32.exe is not found on the PATH.
unzip32.exe is indeed not on the PATH. But it is not the archiver that FM/2 should be using. The invalid file has the proper signature in the proper location for zip files. FM/2 should be using unzip.exe since its entry in ARCHIVER.BB2 is far ahead of the entry for unzip32.exe.
Valid zip files open as they should, using unzip.exe.
Attachments (1)
Change History (8)
comment:1 by , 11 years ago
comment:2 by , 11 years ago
I have attached a bad zip file, bad2.zip, which can be used for testing.
comment:3 by , 11 years ago
The exact text of the message is: "The program UNZIP32.EXE is not found on the PATH or is not an executable file type."
The message box has no title.
comment:4 by , 11 years ago
After a failure with using the first archiver the archiver.bb2 list with a matching extension and signature, it is fine if FM/2 chooses try other archivers in the list with a matching extension and signature.
But it should not give an error message regarding an archiver it cannot find. In a situation like this, where the user has not specified the archiver to be used, FM/2 should just skip over any that may be missing and try others in the list, if any.
After all, UNZIP32.EXE is probably not the only archiver in the archiver.bb2 file which is not actually present and on the PATH on most systems. These missing archivers are in archiver.bb2, not because it was intentionally put there by the user but because they were in the default archiver.bb2 file when they first started using FM/2.
This error message is only appropriate when the user specifically selects an archiver, For example, if a user selects "View" on the context menu and then "as archive" and then selects an archiver from the list which does not exist on their system. Then this message would be correct and appropriate.
comment:5 by , 11 years ago
Milestone: | → Release_3.22 |
---|---|
Owner: | set to |
Status: | new → assigned |
comment:6 by , 11 years ago
A change made for ticket #521 has affected the error message for this ticket. The message is the same with the following addition: "runemf2 was called from arccnrs.c 682"
This may be related to Ticket #517.