diff options
author | Ivan Kohler <ivan@freeside.biz> | 2014-05-27 15:20:05 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2014-05-30 13:00:41 -0700 |
commit | 0ea23112cfa0d82738b0f08d60d90579721b7524 (patch) | |
tree | 392dee3654d0f3839944f748819a39c8ce20192c /rt/lib/RT/Config.pm | |
parent | 60dd95422a1ad4724e0c5d9dd7f8e8878cd96aa8 (diff) |
rt 4.0.20 (RT#13852)
Diffstat (limited to 'rt/lib/RT/Config.pm')
-rw-r--r-- | rt/lib/RT/Config.pm | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/rt/lib/RT/Config.pm b/rt/lib/RT/Config.pm index 18f2b7ae3..23441934f 100644 --- a/rt/lib/RT/Config.pm +++ b/rt/lib/RT/Config.pm @@ -1219,11 +1219,14 @@ sub SetFromConfig { my $entry = ${$pack}{$k}; next unless $entry; - # get entry for type we are looking for - # XXX skip references to scalars or other references. - # Otherwie 5.10 goes boom. maybe we should skip any - # reference - next if ref($entry) eq 'SCALAR' || ref($entry) eq 'REF'; + # Inlined constants are simplified in the symbol table -- + # namely, when possible, you only get a reference back in + # $entry, rather than a full GLOB. In 5.10, scalar + # constants began being inlined this way; starting in 5.20, + # list constants are also inlined. Notably, ref(GLOB) is + # undef, but inlined constants are currently either REF, + # SCALAR, or ARRAY. + next if ref($entry); my $ref_type = ref($ref); |