X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=zip.c;h=337932ca0968f99f560b590c3ffeb99c499dd03c;hb=63aa2268a5abfed0116d04bbe3952e4a753af91d;hp=eb60409c7edc1851f31671921ba9d09806c1bb6f;hpb=51dee92f25d476f28bf126159ee428c7b916008c;p=debian%2Fgzip diff --git a/zip.c b/zip.c index eb60409..337932c 100644 --- a/zip.c +++ b/zip.c @@ -1,6 +1,6 @@ /* zip.c -- compress files to the gzip or pkzip format - Copyright (C) 1997-1999, 2006-2007, 2009-2016 Free Software Foundation, Inc. + Copyright (C) 1997-1999, 2006-2007, 2009-2018 Free Software Foundation, Inc. Copyright (C) 1992-1993 Jean-loup Gailly This program is free software; you can redistribute it and/or modify @@ -54,13 +54,15 @@ int zip(in, out) flags |= ORIG_NAME; } put_byte(flags); /* general flags */ - if (0 < time_stamp.tv_sec && time_stamp.tv_sec <= 0xffffffff) + if (time_stamp.tv_nsec < 0) + stamp = 0; + else if (0 < time_stamp.tv_sec && time_stamp.tv_sec <= 0xffffffff) stamp = time_stamp.tv_sec; else { - /* It's intended that time stamp 0 generates this warning, + /* It's intended that timestamp 0 generates this warning, since gzip format reserves 0 for something else. */ - warning ("file time stamp out of range for gzip format"); + warning ("file timestamp out of range for gzip format"); stamp = 0; } put_long (stamp);