Bug 767608

Summary: Memory leak with non-matching named captures
Product: Red Hat Enterprise Linux 6 Reporter: Petr Pisar <ppisar>
Component: perlAssignee: Petr Pisar <ppisar>
Status: CLOSED ERRATA QA Contact: Martin Kyral <mkyral>
Severity: medium Docs Contact:
Priority: high    
Version: 6.2CC: mkyral, mmaslano, ppisar, psabata, tcallawa
Target Milestone: rcKeywords: Patch
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://rt.perl.org/rt3/Public/Bug/Display.html?id=78266
Whiteboard:
Fixed In Version: perl-5.10.1-132.el6 Doc Type: Bug Fix
Doc Text:
Cause: Referring to named capturing group when the group has not matched. Consequence: A memory leaks. Fix: Code to obtain a named capture group value has been corrected not to allocated a new memory if no match has occurred. Result: Using value of non-matched capturing group does not leak memory anymore.
Story Points: ---
Clone Of: 767597 Environment:
Last Closed: 2013-11-21 04:40:09 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 947775, 960054    
Attachments:
Description Flags
Upstream fix applicable to perl-5.10.1 none

Description Petr Pisar 2011-12-14 13:40:07 UTC
+++ This bug was initially created as a clone of Bug #767597 +++

Referring non-matched named capture leaks memory:

for (1..10_000_000) {
  if ("foo" =~ /(foo|(?<capture>bar))?/) {
    my $capture = $+{capture}
  }
}


This is tracked by upstream (https://rt.perl.org/rt3/Public/Bug/Display.html?id=78266) and fixed by commit 7402016d87474403eea5c52dc2c071f68cbbe25c.

----

RHEL-6.2 (perl-5.10.1-119.el6_1.1.x86_64) affected.

Comment 2 Petr Pisar 2011-12-14 14:06:30 UTC
Named captures are not supported by perl-5.8 and older. This is not an issue for older RHEL releases.

Comment 3 Petr Pisar 2011-12-15 12:51:09 UTC
Created attachment 547216 [details]
Upstream fix applicable to perl-5.10.1

Comment 12 errata-xmlrpc 2013-11-21 04:40:09 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2013-1534.html