Hi, I got a bug report about mutt crashing in realpath():
https://bugzilla.redhat.com/show_bug.cgi?id=492861 It's caused by using buffer which is smaller than PATH_MAX bytes. When compiled with FORTIFY_SOURCE, glibc will check the length in runtime and abort even when the result fits in the smaller buffer. This fixes the problem for me: --- a/hcache.c Sat Mar 28 22:37:22 2009 +0100 +++ b/hcache.c Tue Mar 31 14:32:22 2009 +0200 @@ -836,7 +836,7 @@ * to ensure equivalent paths share the hcache */ if (stat (folder, &st) == 0) { - p = safe_malloc (_POSIX_PATH_MAX+1); + p = safe_malloc (PATH_MAX+1); if (!realpath (folder, p)) mutt_str_replace (&p, folder); } else diff -r be9fb07730c6 muttlib.c --- a/muttlib.c Sat Mar 28 22:37:22 2009 +0100 +++ b/muttlib.c Tue Mar 31 14:32:22 2009 +0200 @@ -759,7 +759,7 @@ char *p = s, *q = s; size_t len; url_scheme_t scheme; - char tmp[_POSIX_PATH_MAX]; + char tmp[PATH_MAX]; scheme = url_check_scheme (s); -- Miroslav Lichvar
