From d3a4e64e0737f054931b8b9fa88a25b20bbdd085 Mon Sep 17 00:00:00 2001 From: Rafael Garcia-Suarez Date: Sat, 29 Sep 2001 00:18:13 +0200 Subject: [PATCH] Allow an @INC hook to set %INC Message-ID: <20010928221813.A16889@rafael> p4raw-id: //depot/perl@12260 --- pp_ctl.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pp_ctl.c b/pp_ctl.c index 4b81fe5771..8b320bf92a 100644 --- a/pp_ctl.c +++ b/pp_ctl.c @@ -3323,10 +3323,14 @@ trylocal: { SETERRNO(0, SS$_NORMAL); /* Assume success here to prevent recursive requirement. */ - (void)hv_store(GvHVn(PL_incgv), name, strlen(name), - (hook_sv ? SvREFCNT_inc(hook_sv) - : newSVpv(CopFILE(&PL_compiling), 0)), - 0 ); + len = strlen(name); + /* Check whether a hook in @INC has already filled %INC */ + if (!hook_sv || !(svp = hv_fetch(GvHVn(PL_incgv), name, len, 0))) { + (void)hv_store(GvHVn(PL_incgv), name, len, + (hook_sv ? SvREFCNT_inc(hook_sv) + : newSVpv(CopFILE(&PL_compiling), 0)), + 0 ); + } ENTER; SAVETMPS; -- 2.34.1