*** empty log message ***

svn path=/trunk/boinc/; revision=10626
This commit is contained in:
David Anderson 2006-07-11 23:23:27 +00:00
parent f2d0667735
commit db08822878
3 changed files with 25 additions and 5 deletions

View File

@ -7463,3 +7463,14 @@ David 11 July 2006
log_flags.C,h
lib/
parse.C
David 11 July 2006
- core client, Windows: don't call finalize() in quit_client();
quit_client() is run in a different thread, apparently,
and we can't safely do anything in that thread.
Instead, have it set a flag telling the main thread to exit,
then do a sleep loop until the main thread has exited.
(Windows... you gotta love it).
client/
main.C

View File

@ -30,6 +30,7 @@ extern HINSTANCE g_hClientLibraryDll;
static HANDLE g_hWin9xMonitorSystemThread = NULL;
static DWORD g_Win9xMonitorSystemThreadID = NULL;
static BOOL g_bIsWin9x = FALSE;
static bool main_thread_exited = false;
typedef BOOL (*pfnIsWindows2000Compatible)();
typedef BOOL (CALLBACK* ClientLibraryStartup)();
@ -129,7 +130,10 @@ void show_message(PROJECT *p, char* msg, int priority) {
#ifdef WIN32
void quit_client() {
gstate.requested_exit = true;
finalize();
while (1) {
boinc_sleep(1.0);
if (main_thread_exited) break;
}
}
void suspend_client() {
@ -542,7 +546,10 @@ int boinc_main_loop() {
DosSleep(0);
#endif
}
return finalize();
finalize();
#ifdef _WIN32
main_thread_exited = true;
#endif
}
int finalize() {

View File

@ -8,9 +8,11 @@ The core client reads configuration options from a file
This file has the following format:
".html_text("
<cc_config>
[ <save_stats_days>N</save_stats_days> ]
[ <dont_check_file_size>0|1</dont_check_file_size> ]
[ <ncpus>N</ncpus> ]
<options>
[ <save_stats_days>N</save_stats_days> ]
[ <dont_check_file_size>0|1</dont_check_file_size> ]
[ <ncpus>N</ncpus> ]
</options>
<log_flags>
[ flags ]
</log_flags>