]> git.llucax.com Git - software/mutt-debian.git/blob - debian/patches/upstream/553321-ansi-escape-segfault.patch
upstream/553321-ansi-escape-segfault.patch: prevent mutt from segfaulting with large...
[software/mutt-debian.git] / debian / patches / upstream / 553321-ansi-escape-segfault.patch
1 This patch prevents mutt from crashing when *buf is freed, the root cause is the
2 fact that an adjacent memory segment (*fmt) overruns and overwrite prev_size
3 field in the heap.
4
5 The bug and the patch were forwarded upstream, see http://bugs.mutt.org/3371
6
7 --- a/pager.c
8 +++ b/pager.c
9 @@ -1028,7 +1028,7 @@
10      q = *fmt;
11      while (*p)
12      {
13 -      if (*p == '\010' && (p > *buf))
14 +      if (*p == '\010' && (p > *buf) && (q > *fmt))
15        {
16         if (*(p+1) == '_')      /* underline */
17           p += 2;