diff --git a/util/ego/cs/cs_getent.c b/util/ego/cs/cs_getent.c index e2bd9635a..c50d172cc 100644 --- a/util/ego/cs/cs_getent.c +++ b/util/ego/cs/cs_getent.c @@ -210,8 +210,11 @@ entity_p getentity(lnp, l_out) break; case ENALOCBASE: case ENAARGBASE: - en.en_static = TRUE; en.en_levels = off_set(lnp); + if (en.en_levels == 0) { + /* otherwise the program could change it */ + en.en_static = TRUE; + } break; case ENPROC: en.en_pro = PROC(lnp); diff --git a/util/ego/cs/cs_kill.c b/util/ego/cs/cs_kill.c index 5a2414c9d..331f87745 100644 --- a/util/ego/cs/cs_kill.c +++ b/util/ego/cs/cs_kill.c @@ -224,6 +224,12 @@ STATIC kill_local(enp, indir) } } break; + case ENALOCBASE: + case ENAARGBASE: + if (enp->en_loc == 0 && rep->en_levels >= 1) { + rep->en_vn = newvalnum(); + } + break; } } }