From: Gurusamy Sarathy <gsar@cpan.org>
Date: Wed, 22 Mar 2000 04:18:39 +0000 (+0000)
Subject: UMRs in universal.c (SvCUR() may not be there unless SvPOK())
X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=aca069ec24d9d45b6471cdbd86821d2695758021;p=p5sagit%2Fp5-mst-13.2.git

UMRs in universal.c (SvCUR() may not be there unless SvPOK())

p4raw-id: //depot/perl@5866
---

diff --git a/universal.c b/universal.c
index 686d9f8..fc0ec41 100644
--- a/universal.c
+++ b/universal.c
@@ -142,7 +142,7 @@ XS(XS_UNIVERSAL_isa)
     if (SvGMAGICAL(sv))
 	mg_get(sv);
 
-    if (!SvOK(sv) || !(SvROK(sv) || SvCUR(sv)))
+    if (!SvOK(sv) || !(SvROK(sv) || (SvPOK(sv) && SvCUR(sv))))
 	XSRETURN_UNDEF;
 
     name = (char *)SvPV(ST(1),n_a);
@@ -168,7 +168,7 @@ XS(XS_UNIVERSAL_can)
     if (SvGMAGICAL(sv))
 	mg_get(sv);
 
-    if (!SvOK(sv) || !(SvROK(sv) || SvCUR(sv)))
+    if (!SvOK(sv) || !(SvROK(sv) || (SvPOK(sv) && SvCUR(sv))))
 	XSRETURN_UNDEF;
 
     name = (char *)SvPV(ST(1),n_a);