Fossil SCM
Just in case, modify backofficeTimeout() to handle being called more than once on Win32.
Commit
0ef0e10557e1e5a204bc1a12d99162bf69f10c236bdacb7be0555dbb6abd43cd
Parent
842bf225d2b93e8…
1 file changed
+1
-1
+1
-1
| --- src/backoffice.c | ||
| +++ src/backoffice.c | ||
| @@ -237,11 +237,11 @@ | ||
| 237 | 237 | return 0; /* NOT REACHED */ |
| 238 | 238 | } |
| 239 | 239 | #endif |
| 240 | 240 | static void backofficeTimeout(int x){ |
| 241 | 241 | #if defined(_WIN32) |
| 242 | - if( threadHandle!=NULL ) return; | |
| 242 | + backofficeWin32ThreadCleanup(); | |
| 243 | 243 | threadHandle = (void*)_beginthreadex( |
| 244 | 244 | 0, 0, backofficeWin32SigalrmThreadProc, FOSSIL_INT_TO_PTR(x), 0, 0 |
| 245 | 245 | ); |
| 246 | 246 | #else |
| 247 | 247 | signal(SIGALRM, backofficeSigalrmHandler); |
| 248 | 248 |
| --- src/backoffice.c | |
| +++ src/backoffice.c | |
| @@ -237,11 +237,11 @@ | |
| 237 | return 0; /* NOT REACHED */ |
| 238 | } |
| 239 | #endif |
| 240 | static void backofficeTimeout(int x){ |
| 241 | #if defined(_WIN32) |
| 242 | if( threadHandle!=NULL ) return; |
| 243 | threadHandle = (void*)_beginthreadex( |
| 244 | 0, 0, backofficeWin32SigalrmThreadProc, FOSSIL_INT_TO_PTR(x), 0, 0 |
| 245 | ); |
| 246 | #else |
| 247 | signal(SIGALRM, backofficeSigalrmHandler); |
| 248 |
| --- src/backoffice.c | |
| +++ src/backoffice.c | |
| @@ -237,11 +237,11 @@ | |
| 237 | return 0; /* NOT REACHED */ |
| 238 | } |
| 239 | #endif |
| 240 | static void backofficeTimeout(int x){ |
| 241 | #if defined(_WIN32) |
| 242 | backofficeWin32ThreadCleanup(); |
| 243 | threadHandle = (void*)_beginthreadex( |
| 244 | 0, 0, backofficeWin32SigalrmThreadProc, FOSSIL_INT_TO_PTR(x), 0, 0 |
| 245 | ); |
| 246 | #else |
| 247 | signal(SIGALRM, backofficeSigalrmHandler); |
| 248 |