summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Gruenbacher <agruen@suse.de>2009-04-08 16:37:57 +0200
committerAndreas Gruenbacher <agruen@suse.de>2009-04-08 16:37:57 +0200
commit70df4e46b3a6658aec2a6f661529c9c6746726e6 (patch)
tree32664262217de6094c72a73d16f72ea722d200b1
parentc59af953e8fdb74ef411474dfdd0febb186af54f (diff)
downloadpatch-70df4e46b3a6658aec2a6f661529c9c6746726e6.tar.gz
Don't forget to NUL terminate ptimestr in fetchname()
-rw-r--r--ChangeLog2
-rw-r--r--src/util.c5
2 files changed, 5 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 257fc1e..5c406e4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -8,6 +8,8 @@
* src/pch.c (there_is_another_patch): Allow special characters in
filenames read interactively.
+ * src/util.c (fetchname): Don't forget to NUL terminate ptimestr.
+
2009-04-07 Andreas Gruenbacher <agruen@suse.de>
* src/util.c (file_id_hasher): Adapt to Gnulib type change.
diff --git a/src/util.c b/src/util.c
index 79babd5..54ca328 100644
--- a/src/util.c
+++ b/src/util.c
@@ -1145,7 +1145,8 @@ fetchname (char *at, int strip_leading, char **ptimestr, time_t *pstamp)
t--;
if (t != u && *(t-1) == '\r')
t--;
- timestr = savebuf (u, t - u);
+ timestr = savebuf (u, t - u + 1);
+ timestr[t - u] = 0;
}
if (set_time | set_utc)
@@ -1204,7 +1205,7 @@ fetchname (char *at, int strip_leading, char **ptimestr, time_t *pstamp)
if (pstamp)
*pstamp = stamp;
- if (ptimestr)
+ if (timestr)
*ptimestr = timestr;
return savestr (name);
}