summaryrefslogtreecommitdiff
path: root/remake.c
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2000-04-22 02:11:17 +0000
committerPaul Smith <psmith@gnu.org>2000-04-22 02:11:17 +0000
commit5ed9fb46b28be4a703c1d88915fa150f0b74d5f4 (patch)
tree61047b6120465235eb65f70345fb3afd4b8a063b /remake.c
parentf9c91ec34d9427c35bceec9b025a0bb20c9ec17f (diff)
downloadgunmake-5ed9fb46b28be4a703c1d88915fa150f0b74d5f4.tar.gz
* Various bug fixes.
Diffstat (limited to 'remake.c')
-rw-r--r--remake.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/remake.c b/remake.c
index ad0d3e5..0d01664 100644
--- a/remake.c
+++ b/remake.c
@@ -1038,6 +1038,7 @@ f_mtime (file, search)
char *arname, *memname;
struct file *arfile;
+ time_t memtime;
int arname_used = 0;
/* Find the archive's name. */
@@ -1097,7 +1098,12 @@ f_mtime (file, search)
/* The archive doesn't exist, so it's members don't exist either. */
return (FILE_TIMESTAMP) -1;
- mtime = FILE_TIMESTAMP_FROM_S_AND_NS (ar_member_date (file->hname), 0);
+ memtime = ar_member_date (file->hname);
+ if (memtime == (time_t) -1)
+ /* The archive member doesn't exist. */
+ return (FILE_TIMESTAMP) -1;
+
+ mtime = FILE_TIMESTAMP_FROM_S_AND_NS (memtime, 0);
}
else
#endif