diff --git a/asterisk.c b/asterisk.c
index e256d3f07b093115a053cb5fd57c94acfd63c26a..418ce491bd7f454d39445a4daf1649aea70706d7 100644
--- a/asterisk.c
+++ b/asterisk.c
@@ -2529,6 +2529,7 @@ int main(int argc, char *argv[])
 			fclose(f);
 		} else
 			ast_log(LOG_WARNING, "Unable to open pid file '%s': %s\n", ast_config_AST_PID, strerror(errno));
+		ast_mainpid = getpid();
 	}
 
 	/* Test recursive mutex locking. */