diff options
author | Ben Morrow <ben@morrow.me.uk> | 2009-10-21 15:33:55 +0100 |
---|---|---|
committer | Rafael Garcia-Suarez <rgs@consttype.org> | 2009-10-22 23:19:23 +0200 |
commit | df052ff84a4fc5e49545a6877ffa22ba4d4e31db (patch) | |
tree | d842a1dfd05c28eeb6473fad3df63d5a63ca62c4 /util.c | |
parent | f0826785082983bd9b5ba16476c6867f3b390fb9 (diff) | |
download | perl-df052ff84a4fc5e49545a6877ffa22ba4d4e31db.tar.gz |
Let SvRX(OK) recognise a bare REGEXP.
This means that re::is_regexp(${qr/x/}) will now return true.
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 11 |
1 files changed, 4 insertions, 7 deletions
@@ -6054,17 +6054,14 @@ Perl_my_dirfd(pTHX_ DIR * dir) { REGEXP * Perl_get_re_arg(pTHX_ SV *sv) { - SV *tmpsv; if (sv) { if (SvMAGICAL(sv)) mg_get(sv); - if (SvROK(sv) && - (tmpsv = MUTABLE_SV(SvRV(sv))) && /* assign deliberate */ - SvTYPE(tmpsv) == SVt_REGEXP) - { - return (REGEXP*) tmpsv; - } + if (SvROK(sv)) + sv = MUTABLE_SV(SvRV(sv)); + if (SvTYPE(sv) == SVt_REGEXP) + return (REGEXP*) sv; } return NULL; |