summaryrefslogtreecommitdiff
path: root/regcomp.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2006-06-11 20:52:36 +0000
committerNicholas Clark <nick@ccl4.org>2006-06-11 20:52:36 +0000
commite7f343b6de977b5993b7a5a4707f5051ea388ff2 (patch)
tree184de79fcc66ba94d970ca6590d5d0a2b77033a5 /regcomp.h
parentb1366aafc0ae88aa629334eee83ef65c43f75718 (diff)
downloadperl-e7f343b6de977b5993b7a5a4707f5051ea388ff2.tar.gz
A little more work needed to get ext/re/t/re.t test 14 (no segv) passing
with PERL_DESTRUCT_LEVEL=2. p4raw-id: //depot/perl@28378
Diffstat (limited to 'regcomp.h')
-rw-r--r--regcomp.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/regcomp.h b/regcomp.h
index 7310d3c89e..d06c7671b3 100644
--- a/regcomp.h
+++ b/regcomp.h
@@ -550,9 +550,10 @@ typedef struct _reg_ac_data reg_ac_data;
#define DEBUG_TRIE_COMPILE_MORE_r(x) \
DEBUG_TRIE_COMPILE_r( if (SvIV(re_debug_flags) & RE_DEBUG_TRIE_MORE) x )
+/* get_sv() can return NULL during global destruction. */
#define GET_RE_DEBUG_FLAGS DEBUG_r( \
re_debug_flags=get_sv(RE_DEBUG_FLAGS, 1); \
- if (!SvIOK(re_debug_flags)) { \
+ if (re_debug_flags && !SvIOK(re_debug_flags)) { \
sv_setiv(re_debug_flags, RE_DEBUG_COMPILE | RE_DEBUG_EXECUTE ); \
} \
)