summaryrefslogtreecommitdiff
path: root/doop.c
diff options
context:
space:
mode:
Diffstat (limited to 'doop.c')
-rw-r--r--doop.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/doop.c b/doop.c
index 33726bf983..2dccbb993e 100644
--- a/doop.c
+++ b/doop.c
@@ -535,8 +535,8 @@ SV *right;
char *lsave;
char *rsave;
- if (sv == left && !SvOK(sv) && !SvGMAGICAL(sv) && SvTYPE(sv) <= SVt_PVMG)
- sv_setpvn(sv, "", 0); /* avoid warning on &= etc. */
+ if (optype == OP_BIT_OR && sv == left && !SvOK(sv) && !SvGMAGICAL(sv))
+ sv_setpvn(sv, "", 0); /* avoid undef warning on |= */
lsave = lc = SvPV(left, leftlen);
rsave = rc = SvPV(right, rightlen);
len = leftlen < rightlen ? leftlen : rightlen;