diff --git a/kernel/base/vm/shm.c b/kernel/base/vm/shm.c index 637c6167..8ae1f824 100644 --- a/kernel/base/vm/shm.c +++ b/kernel/base/vm/shm.c @@ -689,6 +689,9 @@ INT32 ShmCtl(INT32 shmid, INT32 cmd, struct shmid_ds *buf) (shm_perm.mode & ACCESSPERMS); seg->ds.shm_ctime = time(NULL); #ifdef LOSCFG_SHELL + if (OsProcessIDUserCheckInvalid(shm_perm.uid)) { + break; + } (VOID)memcpy_s(seg->ownerName, OS_PCB_NAME_LEN, OS_PCB_FROM_PID(shm_perm.uid)->processName, OS_PCB_NAME_LEN); #endif