Blob Blame History Raw
From afb9212cd39efcabd8a2f444d2f2979abb325a6a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
Date: Mon, 24 Sep 2012 09:27:15 +0200
Subject: [PATCH] fdo#49819, fdo#54609: Do not consider timestamp differences
 as corruption

MSO 2010 can produce a files with different timestamps in the
central directory entry and local file header

Change-Id: Ic6fc0b2fad96eb30babdd7e6ef4a0175936da4c5
Signed-off-by: Michael Meeks <michael.meeks@suse.com>
---
 package/source/zipapi/ZipFile.cxx | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/package/source/zipapi/ZipFile.cxx b/package/source/zipapi/ZipFile.cxx
index f154dfe..53ace46 100644
--- a/package/source/zipapi/ZipFile.cxx
+++ b/package/source/zipapi/ZipFile.cxx
@@ -699,9 +699,11 @@ sal_Bool ZipFile::readLOC( ZipEntry &rEntry )
         // Do *not* compare nMethod / nHow, older versions with
         // encrypted streams write mismatching DEFLATE/STORE pairs
         // there.
+        // Do *not* compare timestamps, since MSO 2010 can produce documents
+        // with timestamp difference in the central directory entry and local
+        // file header.
         bBroken = rEntry.nVersion != nVersion
                         || (rEntry.nFlag & ~6L) != (nFlag & ~6L)
-                        || rEntry.nTime != nTime
                         || rEntry.nPathLen != nPathLen
                         || !rEntry.sPath.equals( sLOCPath );
     }
-- 
1.7.11.4