<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to 67: Failure to properly handle archives with backward slashes under Linux</title><link>https://sourceforge.net/p/infozip/bugs/67/</link><description>Recent changes to 67: Failure to properly handle archives with backward slashes under Linux</description><atom:link href="https://sourceforge.net/p/infozip/bugs/67/feed.rss" rel="self"/><language>en</language><lastBuildDate>Fri, 15 Apr 2022 11:20:20 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/infozip/bugs/67/feed.rss" rel="self" type="application/rss+xml"/><item><title>#67 Failure to properly handle archives with backward slashes under Linux</title><link>https://sourceforge.net/p/infozip/bugs/67/?limit=25#4984</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;status&lt;/strong&gt;: open --&amp;gt; closed-invalid&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steven Schweda</dc:creator><pubDate>Fri, 15 Apr 2022 11:20:20 -0000</pubDate><guid>https://sourceforge.net002272e0b30f98d531d5a49ce605d1b444cca766</guid></item><item><title>#67 Failure to properly handle archives with backward slashes under Linux</title><link>https://sourceforge.net/p/infozip/bugs/67/?limit=25#3d4a</link><description>&lt;div class="markdown_content"&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://midnight-commander.org/ticket/4238" rel="nofollow"&gt;https://midnight-commander.org/ticket/4238&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;It's an upstream bug &lt;span&gt;[...]&lt;/span&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;Not on our tributary.  It might be helpful if someone explained the&lt;br/&gt;
actual situation in that other forum.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steven Schweda</dc:creator><pubDate>Sat, 09 Apr 2022 12:20:19 -0000</pubDate><guid>https://sourceforge.net7422364b4ac6093219c3cd969f372889bf618ac4</guid></item><item><title>#67 Failure to properly handle archives with backward slashes under Linux</title><link>https://sourceforge.net/p/infozip/bugs/67/?limit=25#2c87</link><description>&lt;div class="markdown_content"&gt;&lt;blockquote&gt;
&lt;p&gt;I need to apologize.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Ok.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;unzip under Fedora 35 unpacks both archives with zero issues&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I can believe that.&lt;/p&gt;
&lt;blockquote&gt;
&lt;ol&gt;
&lt;li&gt;So, there's a bug: files in archive directories cannot be extracted&lt;br/&gt;
by mask.&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;
&lt;p&gt;Or, it's not a bug in UnZip, but you didn't treat "\" as a special&lt;br/&gt;
character?  Try "\" instead of "\"?  Using your other (smaller) example&lt;br/&gt;
archive:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;proa$ ln -s ScreenRuler-v.0.8.1-Portable.zip SR.zip

proa$ unzip -l SR.zip 'ScreenRuler-v.0.8.1-Portable\README.html'
Archive:  SR.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
---------                     -------
        0                     0 files

proa$ unzip -l SR.zip 'ScreenRuler-v.0.8.1-Portable\\README.html'
Archive:  SR.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
     5578  01-31-2021 21:47   ScreenRuler-v.0.8.1-Portable\README.html
---------                     -------
     5578                     1 file
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;It works for actual extraction, too:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;proa$ unzip SR.zip 'ScreenRuler-v.0.8.1-Portable\README.html'
Archive:  SR.zip
caution: filename not matched:  ScreenRuler-v.0.8.1-Portable\README.html

proa$ unzip SR.zip 'ScreenRuler-v.0.8.1-Portable\\README.html'
Archive:  SR.zip
warning:  SR.zip appears to use backslashes as path separators
  inflating: ScreenRuler-v.0.8.1-Portable/README.html  
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;I wouldn't bet that the UnZip documentation mentions this, but it's&lt;br/&gt;
pretty standard behavior on "UNIX OSes".  Your apostrophes get your&lt;br/&gt;
backslash past the shell, but UnZip still needs to deal with it, and&lt;br/&gt;
it's special to UnZip, too.  Another (appostrophe-free) possibility:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;proa$ unzip -l SR.zip  ScreenRuler-v.0.8.1-Portable\\\\README.html 
Archive:  SR.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
     5578  01-31-2021 21:47   ScreenRuler-v.0.8.1-Portable\README.html
---------                     -------
     5578                     1 file
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;As usual, many things are possible.&lt;/p&gt;
&lt;blockquote&gt;
&lt;ol&gt;
&lt;li&gt;There's a feature request: replace \ with / in the output.&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;
&lt;p&gt;In &lt;em&gt;which&lt;/em&gt; "the output"?  A path in the (non-standard-compliant)&lt;br/&gt;
archive might include "\" separators, but a name in the local&lt;br/&gt;
(UNIX-like) file system will include "/" separators.  On a VMS system,&lt;br/&gt;
for example, the in-archive names are the same, but names in the local&lt;br/&gt;
file system look still different:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;its&lt;/span&gt; &lt;span class="o"&gt;$&lt;/span&gt; &lt;span class="nt"&gt;create&lt;/span&gt; &lt;span class="nt"&gt;SR&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;zip&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nt"&gt;symlink&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nt"&gt;ScreenRuler-v&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;0&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;8&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;1-Portable&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;zip&lt;/span&gt; 

&lt;span class="nt"&gt;its&lt;/span&gt; &lt;span class="o"&gt;$&lt;/span&gt; &lt;span class="nt"&gt;unzip6l&lt;/span&gt; &lt;span class="nt"&gt;-l&lt;/span&gt; &lt;span class="nt"&gt;SR&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;zip&lt;/span&gt; &lt;span class="nt"&gt;ScreenRuler-v&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;0&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;8&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;1-Portable&lt;/span&gt;&lt;span class="err"&gt;\\&lt;/span&gt;&lt;span class="nt"&gt;README&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;html&lt;/span&gt;
&lt;span class="nt"&gt;Archive&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="nt"&gt;ITS&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="nt"&gt;DKA0&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="cp"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;SMS.IZ.test_sf67_backslash&lt;/span&gt;&lt;span class="cp"&gt;]&lt;/span&gt;&lt;span class="nd"&gt;SR&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;zip&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;
  &lt;span class="nt"&gt;Length&lt;/span&gt;      &lt;span class="nt"&gt;Date&lt;/span&gt;    &lt;span class="nt"&gt;Time&lt;/span&gt;    &lt;span class="nt"&gt;Name&lt;/span&gt;
&lt;span class="nt"&gt;---------&lt;/span&gt;  &lt;span class="nt"&gt;----------&lt;/span&gt; &lt;span class="nt"&gt;-----&lt;/span&gt;   &lt;span class="nt"&gt;----&lt;/span&gt;
     &lt;span class="nt"&gt;5578&lt;/span&gt;  &lt;span class="nt"&gt;01-31-2021&lt;/span&gt; &lt;span class="nt"&gt;21&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nd"&gt;47&lt;/span&gt;   &lt;span class="nt"&gt;ScreenRuler-v&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;0&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;8&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;1-Portable&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;&lt;span class="nt"&gt;README&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;html&lt;/span&gt;
&lt;span class="nt"&gt;---------&lt;/span&gt;                     &lt;span class="nt"&gt;-------&lt;/span&gt;
     &lt;span class="nt"&gt;5578&lt;/span&gt;                     &lt;span class="nt"&gt;1&lt;/span&gt; &lt;span class="nt"&gt;file&lt;/span&gt;

&lt;span class="nt"&gt;its&lt;/span&gt; &lt;span class="o"&gt;$&lt;/span&gt; &lt;span class="nt"&gt;unzip6l&lt;/span&gt; &lt;span class="nt"&gt;SR&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;zip&lt;/span&gt; &lt;span class="nt"&gt;ScreenRuler-v&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;0&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;8&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;1-Portable&lt;/span&gt;&lt;span class="err"&gt;\\&lt;/span&gt;&lt;span class="nt"&gt;README&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;html&lt;/span&gt;
&lt;span class="nt"&gt;Archive&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="nt"&gt;ITS&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="nt"&gt;DKA0&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="cp"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;SMS.IZ.test_sf67_backslash&lt;/span&gt;&lt;span class="cp"&gt;]&lt;/span&gt;&lt;span class="nd"&gt;SR&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;zip&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;
&lt;span class="nt"&gt;warning&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="nt"&gt;ITS&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="nt"&gt;DKA0&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="cp"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;SMS.IZ.test_sf67_backslash&lt;/span&gt;&lt;span class="cp"&gt;]&lt;/span&gt;&lt;span class="nd"&gt;SR&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;zip&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt; &lt;span class="nt"&gt;appears&lt;/span&gt; &lt;span class="nt"&gt;to&lt;/span&gt; &lt;span class="nt"&gt;use&lt;/span&gt;
 &lt;span class="nt"&gt;backslashes&lt;/span&gt; &lt;span class="nt"&gt;as&lt;/span&gt; &lt;span class="nt"&gt;path&lt;/span&gt; &lt;span class="nt"&gt;separators&lt;/span&gt;
  &lt;span class="nt"&gt;inflating&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="cp"&gt;[&lt;/span&gt;&lt;span class="bp"&gt;.&lt;/span&gt;&lt;span class="nx nx-Member"&gt;ScreenRuler&lt;/span&gt;&lt;span class="na"&gt;-v&lt;/span&gt;&lt;span class="p"&gt;^&lt;/span&gt;&lt;span class="mf"&gt;.0&lt;/span&gt;&lt;span class="p"&gt;^&lt;/span&gt;&lt;span class="mf"&gt;.8&lt;/span&gt;&lt;span class="p"&gt;^&lt;/span&gt;&lt;span class="mf"&gt;.1&lt;/span&gt;&lt;span class="na"&gt;-Portable&lt;/span&gt;&lt;span class="cp"&gt;]&lt;/span&gt;&lt;span class="nt"&gt;README&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;html&lt;/span&gt;  
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;What, &lt;em&gt;exactly&lt;/em&gt;, don't you like about what UnZip does?  And what, &lt;br/&gt;
&lt;em&gt;exactly&lt;/em&gt;, would you like it to do, instead?&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steven Schweda</dc:creator><pubDate>Tue, 05 Apr 2022 19:44:55 -0000</pubDate><guid>https://sourceforge.net0b3f4be2b14b9a71f7c3259f005042b148f06717</guid></item><item><title>#67 Failure to properly handle archives with backward slashes under Linux</title><link>https://sourceforge.net/p/infozip/bugs/67/?limit=25#fe57</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;I need to apologize.&lt;/p&gt;
&lt;p&gt;unzip under Fedora 35 unpacks both archives with zero issues&lt;/p&gt;
&lt;p&gt;The issue is Midnight Commander which tries to parse unzip -l output and fails spectacularly:  &lt;a href="https://midnight-commander.org/ticket/4238" rel="nofollow"&gt;https://midnight-commander.org/ticket/4238&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Still, I've identified a bug:&lt;/p&gt;
&lt;p&gt;$ unzip macintosh.js-win32-ia32-1.1.0.zip 'swiftshader\libEGL.dll'&lt;br/&gt;
Archive:  macintosh.js-win32-ia32-1.1.0.zip&lt;br/&gt;
caution: filename not matched:  swiftshader\libEGL.dll&lt;/p&gt;
&lt;p&gt;$ unzip macintosh.js-win32-ia32-1.1.0.zip 'swiftshader/libEGL.dll'&lt;br/&gt;
Archive:  macintosh.js-win32-ia32-1.1.0.zip&lt;br/&gt;
caution: filename not matched:  swiftshader/libEGL.dll&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;So, there's a bug: files cannot be extracted by mask.&lt;/li&gt;
&lt;li&gt;There's a feature request: replace \ with / in the output.&lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Artem S. Tashkinov</dc:creator><pubDate>Tue, 05 Apr 2022 03:17:00 -0000</pubDate><guid>https://sourceforge.nete50daeebb10d89745e7b4175555e5705621fbf77</guid></item><item><title>#67 Failure to properly handle archives with backward slashes under Linux</title><link>https://sourceforge.net/p/infozip/bugs/67/?limit=25#1302</link><description>&lt;div class="markdown_content"&gt;&lt;blockquote&gt;
&lt;p&gt;The current behavior of UnZip (or Apple's Archive Utility app) makes&lt;br/&gt;
some sense, &lt;span&gt;[...]&lt;/span&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;More than I had realized.  I apologize.  Initially, I was too lazy to&lt;br/&gt;
do the extraction; I just looked at a listing ("unzip -l"), and saw the&lt;br/&gt;
backslashes.  "Trust no one," I always say.  So, today, I actually did&lt;br/&gt;
the work, and noticed that UnZip apparently already handles this&lt;br/&gt;
situation, which my tired, old brain had forgotten.  Around here, on a&lt;br/&gt;
Mac, for example:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;proa$ mkdir SR
proa$ cd SR
proa$ unzip6 ../ScreenRuler-v.0.8.1-Portable.zip
Archive:  ../ScreenRuler-v.0.8.1-Portable.zip
warning:  ../ScreenRuler-v.0.8.1-Portable.zip appears to use backslashes as path separators
  inflating: ScreenRuler-v.0.8.1-Portable/LICENSE.txt  
  inflating: ScreenRuler-v.0.8.1-Portable/README.html  
  inflating: ScreenRuler-v.0.8.1-Portable/screenruler.exe  
  inflating: ScreenRuler-v.0.8.1-Portable/screenruler.exe.config  
  inflating: ScreenRuler-v.0.8.1-Portable/de/screenruler.resources.dll  
  inflating: ScreenRuler-v.0.8.1-Portable/es/screenruler.resources.dll  
  inflating: ScreenRuler-v.0.8.1-Portable/fi/screenruler.resources.dll  
[...]

proa$ ls -l
total 0
drwxr-xr-x  20 sms  staff  640 Apr  3 14:20 ScreenRuler-v.0.8.1-Portable
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;The rest of the directory hierarchy looks fine, too.&lt;/p&gt;
&lt;p&gt;That "unzip6" executable was built from the original UnZip 6.00&lt;br/&gt;
source.  The "usr/bin/unzip" which Apple ships with the OS works the&lt;br/&gt;
same.&lt;/p&gt;
&lt;p&gt;It's similar for your other example (although you don't get the&lt;br/&gt;
warning until the first backslash gets processed, and that's later in&lt;br/&gt;
this case):&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;proa$ mkdir MAC
proa$ cd MAC
proa$ unzip6 ../macintosh.js-win32-ia32-1.1.0.zip
Archive:  ../macintosh.js-win32-ia32-1.1.0.zip
  inflating: chrome_100_percent.pak  
  inflating: chrome_200_percent.pak  
[...]
  inflating: vulkan-1.dll            
warning:  ../macintosh.js-win32-ia32-1.1.0.zip appears to use backslashes as
 path separators
  inflating: locales/am.pak          
  inflating: locales/ar.pak          
[...]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;blockquote&gt;
&lt;p&gt;If you try to unpack any of them, you'll get funny results.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I think that these results are pretty funny, but perhaps it would be&lt;br/&gt;
helpful if you provided a serious problem report, showing exactly what&lt;br/&gt;
you did, and exactly what happened when you did it.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;In my 25 years of using UNIX OSes &lt;span&gt;[...]&lt;/span&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;All that experience, and "you'll get funny results" is your idea of a&lt;br/&gt;
problem description?&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steven Schweda</dc:creator><pubDate>Sun, 03 Apr 2022 19:47:55 -0000</pubDate><guid>https://sourceforge.net3ed851caf68a752f0e0d2f5e386d38d2ba27c825</guid></item><item><title>#67 Failure to properly handle archives with backward slashes under Linux</title><link>https://sourceforge.net/p/infozip/bugs/67/?limit=25#0c51/65b0</link><description>&lt;div class="markdown_content"&gt;&lt;blockquote&gt;
&lt;p&gt;As always, a program version number would be helpful, but it probably doesn't matter much in this case.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;unzip-6.0-53.fc35.x86_64 : &lt;a href="https://src.fedoraproject.org/rpms/unzip/tree/rawhide" rel="nofollow"&gt;https://src.fedoraproject.org/rpms/unzip/tree/rawhide&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;One possible solution would be to enhance UnZip to convert "\" to "/" in the (path) names of archive members&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In my 25 years of using UNIX OSes I've not seen a single filename containing back slashes. I'd just go ahead and convert \ in filenames to / automatically but I'm not a C programmer.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;You might also complain to the people who distribute the non-compliant archives.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;It's a lost cause. Lots of these archives are not maintained, their creator wouldn't bother.&lt;/p&gt;
&lt;p&gt;I've "solved" the problem for myself by using WinRAR under Wine. Nothing native under Fedora (Linux) can properly unpack such archives.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Artem S. Tashkinov</dc:creator><pubDate>Sun, 03 Apr 2022 13:13:27 -0000</pubDate><guid>https://sourceforge.net42db136448303283c228bfcf26c4f6cac62f4f80</guid></item><item><title>#67 Failure to properly handle archives with backward slashes under Linux</title><link>https://sourceforge.net/p/infozip/bugs/67/?limit=25#0c51</link><description>&lt;div class="markdown_content"&gt;&lt;blockquote&gt;
&lt;p&gt;unzip &lt;span&gt;[...]&lt;/span&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;As always, a program version number would be helpful, but it probably&lt;br/&gt;
doesn't matter much in this case.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;  unzip -v
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;span&gt;[...]&lt;/span&gt; doesn't properly handle archives with backward slashes under Linux.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I just ran into this problem in a Ford/Microsoft SYNC software update&lt;br/&gt;
kit a few days ago.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;If you try to unpack any of them, you'll get funny results.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;That depends on your sense of humor.&lt;/p&gt;
&lt;p&gt;One could argue about what "properly" means in this case.  Such&lt;br/&gt;
archives do not conform to the zip archive standard, which requires a&lt;br/&gt;
forward slash ("/"), not a backward slash ("\") as the path separator. &lt;br/&gt;
See section "4.4.17 file name" in:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;  https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;It would be interesting to know exactly how such non-compliant&lt;br/&gt;
archives are created.  (Our Zip program does it properly when it's used&lt;br/&gt;
on Windows, for example.)&lt;/p&gt;
&lt;p&gt;The (Apple-supplied) Archive Utility app on Mac behaves the same way&lt;br/&gt;
with such non-compliant archives.  (Ford tells its victims with Macs to&lt;br/&gt;
download and use a (free) third-party app, "The Unarchiver", which works&lt;br/&gt;
for Ford's non-compliant software update kits.  And to disable Safari's&lt;br/&gt;
default behavior, which is to extract the contents of a zip archive&lt;br/&gt;
automatically when one is downloaded, using built-in tools, which don't&lt;br/&gt;
compensate for a non-compliant archive.  It's a mess.)&lt;/p&gt;
&lt;p&gt;The current behavior of UnZip (or Apple's Archive Utility app) makes&lt;br/&gt;
some sense, because "\" is a legal (albeit unpopular) character in a&lt;br/&gt;
file name on a Unix-like file system, so it would be an error always to&lt;br/&gt;
convert "\" to "/" on any Unix-like system.  Both programs comply with&lt;br/&gt;
the standard.  The program which made these non-compliant archives did&lt;br/&gt;
not.&lt;/p&gt;
&lt;p&gt;One possible solution would be to enhance UnZip to convert "\" to "/"&lt;br/&gt;
in the (path) names of archive members (in a non-compliant archive) when&lt;br/&gt;
the archive member is marked with a source-file-or-operating-system like&lt;br/&gt;
MS-DOS, or another system where "\" is the normal directory separator&lt;br/&gt;
character.  (See section 4.4.2.2 in the APPNOTE.)  There would need to&lt;br/&gt;
be a command-line option to enable/disable this behavior.&lt;/p&gt;
&lt;p&gt;I don't see any quick-and-easy work-around.  I might write a script&lt;br/&gt;
which renames a file with "\" in its name (and creates the required&lt;br/&gt;
directories).&lt;/p&gt;
&lt;p&gt;You might also complain to the people who distribute the&lt;br/&gt;
non-compliant archives.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steven Schweda</dc:creator><pubDate>Sat, 02 Apr 2022 05:55:20 -0000</pubDate><guid>https://sourceforge.neta7f08af0699e07a98c80da774edaae0d7f8ece69</guid></item><item><title>Failure to properly handle archives with backward slashes under Linux</title><link>https://sourceforge.net/p/infozip/bugs/67/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;unzip doesn't properly handle archives with backward slashes under Linux.&lt;/p&gt;
&lt;p&gt;Example archives:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/felixrieseberg/macintosh.js/releases/download/v1.1.0/macintosh.js-win32-ia32-1.1.0.zip" rel="nofollow"&gt;https://github.com/felixrieseberg/macintosh.js/releases/download/v1.1.0/macintosh.js-win32-ia32-1.1.0.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://sourceforge.net/projects/screenruler/files/v.0.8.1/ScreenRuler-v.0.8.1-Portable.zip/download"&gt;https://sourceforge.net/projects/screenruler/files/v.0.8.1/ScreenRuler-v.0.8.1-Portable.zip/download&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you try to unpack any of them, you'll get funny results.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Artem S. Tashkinov</dc:creator><pubDate>Sat, 02 Apr 2022 03:56:14 -0000</pubDate><guid>https://sourceforge.net681e9789213e10c9edcb2287cd79815450edba63</guid></item><item><title>Failure to properly handle archives with backward slashes under Linux</title><link>https://sourceforge.net/p/infozip/bugs/67/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Ticket 67 has been modified: Failure to properly handle archives with backward slashes under Linux&lt;br/&gt;
Edited By: Steven Schweda (antinode2)&lt;br/&gt;
Status updated: 'open' =&amp;gt; 'closed-invalid'&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Artem S. Tashkinov</dc:creator><pubDate>Sat, 02 Apr 2022 03:56:14 -0000</pubDate><guid>https://sourceforge.netd5c949fbd4eaed0fb582ea864e4ad096acd486a8</guid></item></channel></rss>