--- /n/sources/plan9/sys/src/cmd/gzip/unzip.c Fri Feb 28 10:50:04 2014 +++ /sys/src/cmd/gzip/unzip.c Thu Oct 10 07:42:13 2013 @@ -652,6 +652,8 @@ trailer(Biobuf *bin, ZipHead *zh) { if(zh->flags & ZTrailInfo){ zh->crc = get4(bin); + if(zh->crc == ZTHeader) + zh->crc = get4(bin); zh->csize = get4(bin); zh->uncsize = get4(bin); } --- /n/sources/plan9/sys/src/cmd/gzip/zip.h Wed Jun 7 17:23:05 2000 +++ /sys/src/cmd/gzip/zip.h Thu Oct 10 07:42:13 2013 @@ -8,6 +8,7 @@ enum ZHeader = 0x04034b50, ZCHeader = 0x02014b50, ZECHeader = 0x06054b50, + ZTHeader = 0x08074b50, /* optional trailer signature */ /* * "general purpose flag" bits --- /n/sources/plan9/sys/src/cmd/tapefs/zip.h Sun Oct 17 06:00:10 2004 +++ /sys/src/cmd/tapefs/zip.h Thu Oct 10 07:42:13 2013 @@ -8,6 +8,7 @@ enum ZHeader = 0x04034b50, ZCHeader = 0x02014b50, ZECHeader = 0x06054b50, + ZTHeader = 0x08074b50, /* optional trailer signature */ /* * "general purpose flag" bits --- /n/sources/plan9/sys/src/cmd/tapefs/zipfs.c Sat Feb 25 06:00:05 2006 +++ /sys/src/cmd/tapefs/zipfs.c Thu Oct 10 07:42:13 2013 @@ -300,6 +300,8 @@ trailer(Biobuf *bin, ZipHead *zh) { if(zh->flags & ZTrailInfo){ zh->crc = get4(bin); + if(zh->crc == ZTHeader) + zh->crc = get4(bin); zh->csize = get4(bin); zh->uncsize = get4(bin); }