diff --git a/api/boinc_api.C b/api/boinc_api.C index 00cda5d071..2da988f529 100644 --- a/api/boinc_api.C +++ b/api/boinc_api.C @@ -295,6 +295,7 @@ int boinc_checkpoint_completed() { // If it's time to quit, call boinc_finish which will exit the app properly // if (time_to_quit) { + fprintf(stderr, "Received quit request from core client\n"); boinc_finish(ERR_QUIT_REQUEST); } return 0; diff --git a/checkin_notes b/checkin_notes index 6d4b96f02a..f28b7f04e2 100755 --- a/checkin_notes +++ b/checkin_notes @@ -7217,7 +7217,7 @@ Karl 2003-10-29 tools/ make_project -David 28 Oct 2003 +David 30 Oct 2003 - On call to CreateEvent() to make "event" object for core client to ask app to quit (Windows) changed ManualReset argument to false. @@ -7230,3 +7230,15 @@ David 28 Oct 2003 app.C client_state.C,h pers_file_xfer.C + +David 30 Oct 2003 + - API writes to stderr if get quit request + - Include signal numbers, error codes in messages about process exit + + api/ + boinc_api.C + client/ + app.C + client_state.C + cs_apps.C + cs_scheduler.C diff --git a/client/app.C b/client/app.C index 3b20f9fc0a..0b2606a281 100644 --- a/client/app.C +++ b/client/app.C @@ -655,9 +655,9 @@ bool ACTIVE_TASK_SET::check_app_exited() { atp->result->signal = atp->signal; atp->result->active_task_state = PROCESS_WAS_SIGNALED; gstate.report_result_error( - *(atp->result), 0, "process was signaled" + *(atp->result), 0, "process got signal %d", atp->signal ); - scope_messages.printf("ACTIVE_TASK_SET::check_app_exited(): process was signaled: %d\n", atp->signal); + scope_messages.printf("ACTIVE_TASK_SET::check_app_exited(): process got signal %d\n", atp->signal); } else { atp->state = PROCESS_EXIT_UNKNOWN; atp->result->state = PROCESS_EXIT_UNKNOWN; @@ -1032,7 +1032,7 @@ int ACTIVE_TASK_SET::restart_tasks() { atp->result->active_task_state = PROCESS_COULDNT_START; gstate.report_result_error( *(atp->result), retval, - "Couldn't restart the app for this result." + "Couldn't restart the app for this result: %d", retval ); active_tasks.erase(iter); } else { diff --git a/client/client_state.C b/client/client_state.C index 34e3430f85..300ad0c247 100644 --- a/client/client_state.C +++ b/client/client_state.C @@ -658,12 +658,12 @@ bool CLIENT_STATE::garbage_collect() { if (!rp->ready_to_report) { // had an error uploading a file for this result // - switch(failnum) { + switch (failnum) { case ERR_FILE_TOO_BIG: report_result_error(*rp, 0, "Output file exceeded size limit"); break; default: - report_result_error(*rp, 0, "Couldn't upload files or other output file error"); + report_result_error(*rp, 0, "Output file error: %d", failnum); } } } @@ -874,7 +874,11 @@ int CLIENT_STATE::report_result_error( va_list va; va_start(va, format); +#ifdef _WIN32 _vsnprintf(err_msg, sizeof(err_msg), format, va); +#else + vsnprintf(err_msg, sizeof(err_msg), format, va); +#endif va_end(va); sprintf(buf, "Unrecoverable error for result %s (%s)", res.name, err_msg); diff --git a/client/cs_apps.C b/client/cs_apps.C index 4bef1f09de..d593c222a6 100644 --- a/client/cs_apps.C +++ b/client/cs_apps.C @@ -264,8 +264,8 @@ bool CLIENT_STATE::start_apps() { atp->result->active_task_state = PROCESS_COULDNT_START; report_result_error( *(atp->result), retval, - "Couldn't start the app for this result." - ); + "Couldn't start the app for this result: error %d", retval + ); } action = true; set_client_state_dirty("start_apps"); diff --git a/client/cs_scheduler.C b/client/cs_scheduler.C index 9dd86ecc9a..541ae537ad 100644 --- a/client/cs_scheduler.C +++ b/client/cs_scheduler.C @@ -464,9 +464,7 @@ int CLIENT_STATE::handle_scheduler_reply( // deal with project preferences (should always be there) // if (sr.project_prefs_xml) { - if (strcmp( - project->project_specific_prefs, sr.project_prefs_xml - )) { + if (strcmp(project->project_specific_prefs, sr.project_prefs_xml)) { strcpy(project->project_specific_prefs, sr.project_prefs_xml); retval = project->write_account_file(); if (retval) return retval; diff --git a/doc/index.html b/doc/index.html index 921e130a6e..a99c00629d 100644 --- a/doc/index.html +++ b/doc/index.html @@ -63,6 +63,9 @@ Help debug and enhance the BOINC software. Contact us

+ +BOINC is supported by the +National Science Foundation
diff --git a/todo b/todo index 8cd4212e3a..9bf4e8d2d6 100755 --- a/todo +++ b/todo @@ -1,3 +1,7 @@ +port graphics API to X + CLI core interface: + --show slotnum or --show all +document update_versions reject spamming clients w/o DB lookup message window is slightly scrolled Don't render graphics if minimized