diff --git a/NEWS b/NEWS index 57a141f7bce..252a1978887 100644 --- a/NEWS +++ b/NEWS @@ -22,6 +22,7 @@ PHP NEWS . SA_ONSTACK is now set when signals are disabled. (Kévin Dunglas) . Fix GH-9649: Signal handlers now do a no-op instead of crashing when executed on threads not managed by TSRM. (Kévin Dunglas) + . Fixed potential NULL pointer dereference Windows shm*() functions. (cmb) - Fileinfo: . Upgrade bundled libmagic to 5.43. (Anatol) diff --git a/TSRM/tsrm_win32.c b/TSRM/tsrm_win32.c index 22e65173992..f7ecea012b5 100644 --- a/TSRM/tsrm_win32.c +++ b/TSRM/tsrm_win32.c @@ -686,7 +686,7 @@ TSRM_API void *shmat(int key, const void *shmaddr, int flags) {/*{{{*/ shm_pair *shm = shm_get(key, NULL); - if (!shm->segment) { + if (!shm || !shm->segment) { return (void*)-1; } @@ -703,7 +703,7 @@ TSRM_API int shmdt(const void *shmaddr) shm_pair *shm = shm_get(0, (void*)shmaddr); int ret; - if (!shm->segment) { + if (!shm || !shm->segment) { return -1; } @@ -723,7 +723,7 @@ TSRM_API int shmctl(int key, int cmd, struct shmid_ds *buf) {/*{{{*/ shm_pair *shm = shm_get(key, NULL); - if (!shm->segment) { + if (!shm || !shm->segment) { return -1; }