List Archive

Thread

Thread Index

Message

From: Thomas Klausner <tk%giga.or.at@localhost>
To: Andreas Falkenhahn <andreas%falkenhahn.com@localhost>
Subject: Re: zip_file_set_mtime() bug?
Date: Wed, 15 Nov 2017 18:39:50 +0100

On Wed, Nov 15, 2017 at 05:48:07PM +0100, Andreas Falkenhahn wrote:
> 
> I want to set the datestamp of a file inside a zip archive to
> 16-Sep-2017 08:34:56. This is my code:
> 
>       struct tm tm;
> 
>       tm.tm_sec = 56;
>       tm.tm_min = 34;
>       tm.tm_hour = 8;
>       tm.tm_mday = 16;
>       tm.tm_mon = 8;
>       tm.tm_year = 117;
>       tm.tm_isdst = -1;
>       
>       zip_file_set_mtime(arc, 0, mktime(&tm), 0);
>       
> When I compile and run this code on Linux, Ubuntu shows the
> file date correctly as 16-Sep-2017 08:34:56.
> 
> When I compile and run this code on Windows, however, Windows
> Explorer shows the file date as 16-Sep-2017 09:34:56, i.e.
> one hour later than what I passed to zip_file_set_mtime().
> 
> Is this a bug in libzip or am I doing something wrong here?

libzip doesn't behave differently in this code path for the two
operating systems.

I'd take a closer look at what you get from mktime() on the two
systems.
 Thomas

Made by MHonArc.