In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/a51ee39bac6a83e6d63d3e6d8941ae352ef3546f?hp=4b074b7191cf70ddeff23e80e0d7a236842ebd1a>

- Log -----------------------------------------------------------------
commit a51ee39bac6a83e6d63d3e6d8941ae352ef3546f
Author: Rafael Garcia-Suarez <r...@consttype.org>
Date:   Sat Nov 27 15:47:44 2010 +0100

    Fix a warning (that spotted a potential mro bug that I could not produce)
-----------------------------------------------------------------------

Summary of changes:
 mro.c |   15 +++++++--------
 1 files changed, 7 insertions(+), 8 deletions(-)

diff --git a/mro.c b/mro.c
index a5f1de0..4b90e67 100644
--- a/mro.c
+++ b/mro.c
@@ -985,15 +985,14 @@ S_mro_gather_and_rename(pTHX_ HV * const stashes, HV * 
const seen_stashes,
        /* If oldstash is not null, then we can use its HvENAME to look up
           the isarev hash, since all its subclasses will be listed there.
 
-          If oldstash is null, then this is an empty spot with no stash in
-          it, so subclasses could be listed in isarev hashes belonging to
-          any of the names, so we have to check all of them. */
-       if(oldstash) {
+          If oldstash is null or is no longer in the symbol table, then
+          this is an empty spot with no stash in it, so subclasses could
+          be listed in isarev hashes belonging to any of the names, so we
+          have to check all of them. */
+       char *hvename = oldstash ? HvENAME(oldstash) : NULL;
+       if (hvename) {
            fetched_isarev = TRUE;
-           svp
-            = hv_fetch(
-                PL_isarev, HvENAME(oldstash), HvENAMELEN_get(oldstash), 0
-              );
+           svp = hv_fetch(PL_isarev, hvename, HvENAMELEN_get(oldstash), 0);
            if (svp) isarev = MUTABLE_HV(*svp);
        }
        else if(SvTYPE(namesv) == SVt_PVAV) {

--
Perl5 Master Repository

Reply via email to