]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
cleanup pid file on orderly exit.
authorMichael Jerris <mike@jerris.com>
Fri, 7 Dec 2007 02:03:55 +0000 (02:03 +0000)
committerMichael Jerris <mike@jerris.com>
Fri, 7 Dec 2007 02:03:55 +0000 (02:03 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@6559 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/switch.c

index 854b923e30d586dfc71c68c6677046c29e5d2496..9028749c2e7a4a8195d864e6edcb6a582bfba3dd 100644 (file)
@@ -214,6 +214,7 @@ int main(int argc, char *argv[])
        int known_opt;
        int high_prio = 0;
        switch_core_flag_t flags = SCF_USE_SQL;
+       int status;
 
 #ifdef WIN32
        SERVICE_TABLE_ENTRY dispatchTable[] = {
@@ -428,11 +429,16 @@ int main(int argc, char *argv[])
        }
 
        fprintf(f, "%d", pid = getpid());
-       fclose(f);
+       fflush(f);
 
        switch_core_runtime_loop(nc);
 
-       return switch_core_destroy();
+       status = switch_core_destroy();
+
+       fclose(f);
+       unlink(pid_path);
+
+       return status;
 }
 
 /* For Emacs: