summaryrefslogtreecommitdiff
path: root/perl.h
diff options
context:
space:
mode:
authorDave Mitchell <davem@fdisolutions.com>2007-05-12 19:21:02 +0000
committerDave Mitchell <davem@fdisolutions.com>2007-05-12 19:21:02 +0000
commit5486870fe7f0fd0e99bf9619d5fd857a5b972014 (patch)
tree9f5b70fdc6e84c85d8ccf54834fcd75578ed3a17 /perl.h
parent2f9285f84584cb56950bf07de6ded6ebcdc3d302 (diff)
downloadperl-5486870fe7f0fd0e99bf9619d5fd857a5b972014.tar.gz
move PL_rsfp_filters into the parser struct
p4raw-id: //depot/perl@31200
Diffstat (limited to 'perl.h')
-rw-r--r--perl.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/perl.h b/perl.h
index 1220de1426..8cd8753f0f 100644
--- a/perl.h
+++ b/perl.h
@@ -3214,8 +3214,14 @@ union any {
typedef I32 (*filter_t) (pTHX_ int, SV *, int);
#define FILTER_READ(idx, sv, len) filter_read(idx, sv, len)
-#define FILTER_DATA(idx) (AvARRAY(PL_rsfp_filters)[idx])
-#define FILTER_ISREADER(idx) (idx >= AvFILLp(PL_rsfp_filters))
+#define FILTER_DATA(idx) \
+ (PL_parser ? AvARRAY(PL_parser->rsfp_filters)[idx] : NULL)
+#define FILTER_ISREADER(idx) \
+ (PL_parser && PL_parser->rsfp_filters \
+ && idx >= AvFILLp(PL_parser->rsfp_filters))
+#define PERL_FILTER_EXISTS(i) \
+ (PL_parser && PL_parser->rsfp_filters \
+ && (i) <= av_len(PL_parser->rsfp_filters))
#if defined(_AIX) && !defined(_AIX43)
#if defined(USE_REENTRANT) || defined(_REENTRANT) || defined(_THREAD_SAFE)