From: Vincent Pit <vince@profvince.com>
Date: Fri, 17 Apr 2009 14:51:36 +0000 (+0200)
Subject: Tighten the scope of pl_linestr in indirect_map_store()
X-Git-Tag: v0.12~12
X-Git-Url: http://git.vpit.fr/?a=commitdiff_plain;h=f5b9489370626c0c6c8becbdafa6c0ef5d6f0899;p=perl%2Fmodules%2Findirect.git

Tighten the scope of pl_linestr in indirect_map_store()
---

diff --git a/indirect.xs b/indirect.xs
index 2f8ab7d..85741a8 100644
--- a/indirect.xs
+++ b/indirect.xs
@@ -95,7 +95,6 @@ STATIC const char *indirect_linestr = NULL;
 STATIC void indirect_map_store(pTHX_ const OP *o, const char *src, SV *sv) {
 #define indirect_map_store(O, S, N) indirect_map_store(aTHX_ (O), (S), (N))
  OP2STR_BUF;
- const char *pl_linestr;
  SV *val;
 
  /* When lex_inwhat is set, we're in a quotelike environment (qq, qr, but not q)
@@ -103,7 +102,7 @@ STATIC void indirect_map_store(pTHX_ const OP *o, const char *src, SV *sv) {
   * still be alive somewhere. */
 
  if (!PL_lex_inwhat) {
-  pl_linestr = SvPVX_const(PL_linestr);
+  const char *pl_linestr = SvPVX_const(PL_linestr);
   if (indirect_linestr != pl_linestr) {
    hv_clear(indirect_map);
    indirect_linestr = pl_linestr;