From c52cb939992f6aa32b608690ef2b8d9e83102231 Mon Sep 17 00:00:00 2001 From: Martijn Dekker Date: Thu, 28 Jan 2021 04:38:48 +0000 Subject: [PATCH] sh_funscope(): Fix possible dereference of null pointer Patch from OpenSUSE: https://build.opensuse.org/package/view_file/shells/ksh/ksh93-unset-f.dif --- src/cmd/ksh93/sh/xec.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/cmd/ksh93/sh/xec.c b/src/cmd/ksh93/sh/xec.c index bb5f5e162..d460a9fa0 100644 --- a/src/cmd/ksh93/sh/xec.c +++ b/src/cmd/ksh93/sh/xec.c @@ -3120,7 +3120,8 @@ int sh_funscope(int argn, char *argv[],int(*fun)(void*),void *arg,int execflg) shp->st.var_local = shp->var_tree; if(!fun) { - shp->st.filename = fp->node->nvalue.rp->fname; + if(fp->node->nvalue.rp) + shp->st.filename = fp->node->nvalue.rp->fname; shp->st.funname = nv_name(fp->node); shp->last_root = nv_dict(DOTSHNOD); nv_putval(SH_PATHNAMENOD,shp->st.filename,NV_NOFREE);