Commit a550d535 authored by Kevin J. McCarthy's avatar Kevin J. McCarthy

Rename _regex.h to _mutt_regex.h to avoid name collision on Macs.

On Macs, <regex.h> includes <_regex.h>.  Because Mutt defines '-I .'
during compilation, our bundled version of _regex.h was being used
instead of the system one.

I have no idea how it managed to work before, but starting in Xcode
9.3, the differences in struct size and fields started to produce a
crash and other strange behavior.

The real issue is our use of '-I .' during compilation, which allows
our local headers to override system ones.  An easier fix for now is
to rename the header.

Many thanks to Charles Diza, Christian Ebert, and Fabian Groffen for
their help trying things out and helping to debug the problem.

Also, a huge thanks to Steve Karmeinsky for allowing me to ssh in to
his Mac so I could track down the underlying issue.
parent 4fe6cfeb
......@@ -71,7 +71,7 @@ EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP OPS.CRYPT OPS.SMIME TODO UPDATING \
mutt_regex.h mutt_sasl.h mutt_socket.h mutt_ssl.h mutt_tunnel.h \
mx.h pager.h pgp.h pop.h protos.h rfc1524.h rfc2047.h \
rfc2231.h rfc822.h rfc3676.h sha1.h sort.h mime.types VERSION prepare \
_regex.h OPS.MIX README.SECURITY remailer.c remailer.h browser.h \
_mutt_regex.h OPS.MIX README.SECURITY remailer.c remailer.h browser.h \
mbyte.h lib.h extlib.c pgpewrap.c smime_keys.pl pgplib.h \
README.SSL smime.h group.h \
muttbug pgppacket.h depcomp ascii.h BEWARE PATCHES patchlist.sh \
......
......@@ -24,7 +24,7 @@
#define MUTT_REGEX_H
#ifdef USE_GNU_REGEX
#include "_regex.h"
#include "_mutt_regex.h"
#else
#include <regex.h>
#endif
......
......@@ -212,7 +212,7 @@ init_syntax_once ()
/* Changed to fit into mutt - tlr, 1999-01-06 */
#include "_regex.h"
#include "_mutt_regex.h"
/* isalpha etc. are used for the character classes. */
#include <ctype.h>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment