diff --git a/src/backend/postmaster/bgworker.c b/src/backend/postmaster/bgworker.c index 76619e9517c..fd552626684 100644 --- a/src/backend/postmaster/bgworker.c +++ b/src/backend/postmaster/bgworker.c @@ -1025,13 +1025,16 @@ WaitForBackgroundWorkerShutdown(BackgroundWorkerHandle *handle) status = GetBackgroundWorkerPid(handle, &pid); if (status == BGWH_STOPPED) - return status; + break; rc = WaitLatch(&MyProc->procLatch, WL_LATCH_SET | WL_POSTMASTER_DEATH, 0); if (rc & WL_POSTMASTER_DEATH) - return BGWH_POSTMASTER_DIED; + { + status = BGWH_POSTMASTER_DIED; + break; + } ResetLatch(&MyProc->procLatch); }