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