Change 14938 by jhi@alpha on 2002/03/02 02:24:25

        Subject: PATCH (bleadperl): Quieter handling of tied arrays
        From: Mark-Jason Dominus <[EMAIL PROTECTED]>
        Date: Fri, 01 Mar 2002 18:35:35 -0500
        Message-ID: <[EMAIL PROTECTED]>

Affected files ...

.... //depot/perl/av.c#64 edit

Differences ...

==== //depot/perl/av.c#64 (text) ====
Index: perl/av.c
--- perl/av.c.~1~       Fri Mar  1 19:30:05 2002
+++ perl/av.c   Fri Mar  1 19:30:05 2002
@@ -514,8 +514,8 @@
     SV *retval;
     MAGIC* mg;
 
-    if (!av || AvFILL(av) < 0)
-       return &PL_sv_undef;
+    if (!av)
+      return &PL_sv_undef;
     if (SvREADONLY(av))
        Perl_croak(aTHX_ PL_no_modify);
     if ((mg = SvTIED_mg((SV*)av, PERL_MAGIC_tied))) {
@@ -534,6 +534,8 @@
        POPSTACK;
        return retval;
     }
+    if (AvFILL(av) < 0)
+       return &PL_sv_undef;
     retval = AvARRAY(av)[AvFILLp(av)];
     AvARRAY(av)[AvFILLp(av)--] = &PL_sv_undef;
     if (SvSMAGICAL(av))
@@ -559,7 +561,7 @@
     MAGIC* mg;
     I32 slide;
 
-    if (!av || num <= 0)
+    if (!av)
        return;
     if (SvREADONLY(av))
        Perl_croak(aTHX_ PL_no_modify);
@@ -581,6 +583,8 @@
        return;
     }
 
+    if (num <= 0)
+      return;
     if (!AvREAL(av) && AvREIFY(av))
        av_reify(av);
     i = AvARRAY(av) - AvALLOC(av);
@@ -626,7 +630,7 @@
     SV *retval;
     MAGIC* mg;
 
-    if (!av || AvFILL(av) < 0)
+    if (!av)
        return &PL_sv_undef;
     if (SvREADONLY(av))
        Perl_croak(aTHX_ PL_no_modify);
@@ -646,6 +650,8 @@
        POPSTACK;
        return retval;
     }
+    if (AvFILL(av) < 0)
+      return &PL_sv_undef;
     retval = *AvARRAY(av);
     if (AvREAL(av))
        *AvARRAY(av) = &PL_sv_undef;
End of Patch.

Reply via email to