Index: subversion/svnserve/main.c =================================================================== --- subversion/svnserve/main.c (revision 27161) +++ subversion/svnserve/main.c (working copy) @@ -640,6 +640,9 @@ int main(int argc, const char *argv[]) apr_socket_listen(sock, 7); + if (pid_filename) + SVN_INT_ERR(write_pid_file(pid_filename, pool)); + #if APR_HAS_FORK if (run_mode != run_mode_listen_once && !foreground) apr_proc_detach(APR_PROC_DETACH_DAEMONIZE); @@ -659,9 +662,6 @@ int main(int argc, const char *argv[]) apr_signal(SIGXFSZ, SIG_IGN); #endif - if (pid_filename) - SVN_INT_ERR(write_pid_file(pid_filename, pool)); - #ifdef WIN32 status = apr_os_sock_get(&winservice_svnserve_accept_socket, sock); if (status)