From b1d6d7f95c910a76a0cbd4d2d18b207712d3cc16 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg Date: Sat, 28 Nov 2015 19:03:33 +0000 Subject: [PATCH] Initializing a newly allocated multidata array. git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@5447 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- ChangeLog | 3 +++ src/nano.c | 8 +++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 5cbbfd15..db4eece6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,9 @@ * src/nano.c (main): Allow the user full control over the values of MALLOC_CHECK_ and MALLOC_PERTURB_; nano shouldn't override these. This reverts r5344 from August 6. + * src/nano.c (alloc_multidata_if_needed): When allocating a new + multidata array, initialize the array. Problem was betrayed by + using MALLOC_PERTURB_, and was located with valgrind. 2015-11-26 Benno Schulenberg * src/text.c (do_redo): Not just the undoing, also the redoing of a diff --git a/src/nano.c b/src/nano.c index 7401a411..963a1ec2 100644 --- a/src/nano.c +++ b/src/nano.c @@ -1849,8 +1849,14 @@ int do_mouse(void) #ifndef DISABLE_COLOR void alloc_multidata_if_needed(filestruct *fileptr) { - if (!fileptr->multidata) + int i; + + if (fileptr->multidata == NULL) { fileptr->multidata = (short *)nmalloc(openfile->syntax->nmultis * sizeof(short)); + + for (i = 0; i < openfile->syntax->nmultis; i++) + fileptr->multidata[i] = -1; + } } /* Precalculate the multi-line start and end regex info so we can -- 2.39.5