commit 4abf9449b41099f6c00d0d49584a9fc504c9ef70
parent c4520d57aa0ddc8ce4bab1fba55c4c8868f6a79c
Author: Benno Schulenberg <bensberg@justemail.net>
Date: Sat, 22 Feb 2014 20:44:43 +0000
Adding a missing malloc, to avoid a segfault on some systems.
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4595 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
Diffstat:
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/ChangeLog b/ChangeLog
@@ -1,4 +1,8 @@
2014-02-22 Benno Schulenberg <bensberg@justemail.net>
+ * src/files.c (write_file) - Add a missing malloc.
+ Reported by an anonymous cross compiler, bug #30671.
+
+2014-02-22 Benno Schulenberg <bensberg@justemail.net>
* src/winio.c (get_mouseinput) - Correct an oversight,
use the proper 'do_up_void' and 'do_down_void' names.
Reported by Zhou Z.J. <zzj666@Savannah>, bug #38268.
diff --git a/src/files.c b/src/files.c
@@ -1746,8 +1746,10 @@ bool write_file(const char *name, FILE *f_open, bool tmp, append_type
* specified it interactively), stat and save the value
* or else we will chase null pointers when we do
* modtime checks, preserve file times, etc. during backup */
- if (openfile->current_stat == NULL && !tmp && realexists)
+ if (openfile->current_stat == NULL && !tmp && realexists) {
+ openfile->current_stat = (struct stat *)nmalloc(sizeof(struct stat));
stat(realname, openfile->current_stat);
+ }
/* We backup only if the backup toggle is set, the file isn't
* temporary, and the file already exists. Furthermore, if we