diff --git a/api/boinc_api.C b/api/boinc_api.C
index d8e78f781a..4e169d6bdc 100644
--- a/api/boinc_api.C
+++ b/api/boinc_api.C
@@ -88,14 +88,14 @@ GRAPHICS_INFO gi;
static double timer_period = 1.0/50.0; // 50 Hz timer
static double time_until_checkpoint;
static double time_until_fraction_done_update;
-static double time_until_suspend_check;
+static double time_until_quit_check;
static double fraction_done;
static double last_checkpoint_cpu_time;
static bool ready_to_checkpoint = false;
-static bool check_susp_quit = false;
+static bool check_quit = false;
static bool write_frac_done = false;
static bool this_process_active;
-static bool time_to_suspend = false,time_to_quit = false;
+static bool time_to_quit = false;
bool using_opengl = false;
// read the INIT_DATA and FD_INIT files
@@ -161,7 +161,7 @@ int boinc_init() {
#endif
time_until_checkpoint = aid.checkpoint_period;
time_until_fraction_done_update = aid.fraction_done_update_period;
- time_until_suspend_check = 1; // check every 1 second for suspend request from core client
+ time_until_quit_check = 1; // check every 1 second for quit request from core client
this_process_active = true;
boinc_install_signal_handlers();
@@ -306,14 +306,14 @@ int boinc_resolve_filename(char *virtual_name, char *physical_name, int len) {
}
bool boinc_time_to_checkpoint() {
- if (check_susp_quit) {
- FILE* f = fopen(SUSPEND_QUIT_FILE, "r");
+ if (check_quit) {
+ FILE* f = fopen(QUIT_FILE, "r");
if(f) {
- parse_suspend_quit_file(f,time_to_suspend,time_to_quit);
+ parse_quit_file(f,time_to_quit);
fclose(f);
}
- time_until_suspend_check = 1; // reset to 1 second
- check_susp_quit = false;
+ time_until_quit_check = 1; // reset to 1 second
+ check_quit = false;
}
if (write_frac_done) {
@@ -322,9 +322,9 @@ bool boinc_time_to_checkpoint() {
write_frac_done = false;
}
- // If the application has received a quit or suspend request
- // it should checkpoint
- if (time_to_quit || time_to_suspend) {
+ // If the application has received a quit request it should checkpoint
+ //
+ if (time_to_quit) {
return true;
}
@@ -341,20 +341,6 @@ int boinc_checkpoint_completed() {
if (time_to_quit) {
boinc_finish(ERR_QUIT_REQUEST);
}
- // If we're in a suspended state, sleep until instructed otherwise
- while (time_to_suspend) {
- if (time_to_quit) {
- boinc_finish(ERR_QUIT_REQUEST);
- }
- boinc_sleep(1); // Should this be a smaller value?
- FILE* f = fopen(SUSPEND_QUIT_FILE, "r");
- if(f) {
- parse_suspend_quit_file(f,time_to_suspend,time_to_quit);
- fclose(f);
- } else {
- time_to_suspend = time_to_quit = false;
- }
- }
return 0;
}
@@ -449,10 +435,10 @@ void on_timer(int a) {
}
}
- if (!check_susp_quit) {
- time_until_suspend_check -= timer_period;
- if (time_until_suspend_check <= 0) {
- check_susp_quit = true;
+ if (!check_quit) {
+ time_until_quit_check -= timer_period;
+ if (time_until_quit_check <= 0) {
+ check_quit = true;
}
}
@@ -575,8 +561,7 @@ int parse_init_data_file(FILE* f, APP_INIT_DATA& ai) {
int write_fraction_done_file(double pct, double cpu, double checkpoint_cpu) {
FILE* f = fopen(FRACTION_DONE_TEMP_FILE, "w");
- if (!f)
- return -1;
+ if (!f) return -1;
fprintf(f,
"%f\n"
@@ -607,23 +592,17 @@ int parse_fraction_done_file(FILE* f, double& pct, double& cpu, double& checkpoi
return 0;
}
-int write_suspend_quit_file(FILE* f, bool suspend, bool quit) {
- if (suspend) {
- fprintf(f, "\n");
- }
- if (quit) {
- fprintf(f, "\n");
- }
+int write_quit_file(FILE* f) {
+ fprintf(f, "\n");
return 0;
}
-int parse_suspend_quit_file(FILE* f, bool& suspend, bool& quit) {
+int parse_quit_file(FILE* f, bool& quit) {
char buf[256];
while (fgets(buf, 256, f)) {
- if (match_tag(buf, "")) suspend = true;
- else if (match_tag(buf, "")) quit = true;
- else fprintf(stderr, "parse_suspend_quit_file: unrecognized %s", buf);
+ if (match_tag(buf, "")) quit = true;
+ else fprintf(stderr, "parse_quit_file: unrecognized %s", buf);
}
return 0;
}
diff --git a/api/boinc_api.h b/api/boinc_api.h
index 04fa0e2dbe..a678a37ed7 100755
--- a/api/boinc_api.h
+++ b/api/boinc_api.h
@@ -84,15 +84,15 @@ int write_fd_init_file(FILE*, char*, int, int);
int parse_fd_init_file(FILE*);
int write_fraction_done_file(double, double, double);
int parse_fraction_done_file(FILE*, double&, double&, double&);
-int write_suspend_quit_file(FILE* f, bool suspend, bool quit);
-int parse_suspend_quit_file(FILE* f, bool& suspend, bool& quit);
+int write_quit_file(FILE* f);
+int parse_quit_file(FILE* f, bool& quit);
#define INIT_DATA_FILE "init_data.xml"
#define GRAPHICS_DATA_FILE "graphics.xml"
#define FD_INIT_FILE "fd_init.xml"
#define FRACTION_DONE_FILE "fraction_done.xml"
#define FRACTION_DONE_TEMP_FILE "fraction_done.tmp"
-#define SUSPEND_QUIT_FILE "suspend.xml"
+#define QUIT_FILE "quit.xml"
#define STDERR_FILE "stderr.txt"
int set_timer(double period);
diff --git a/client/app.C b/client/app.C
index acaff37eac..418ff56c7e 100644
--- a/client/app.C
+++ b/client/app.C
@@ -262,7 +262,7 @@ int ACTIVE_TASK::start(bool first_time) {
fclose(f);
- sprintf(temp, "%s%s%s", slot_dir, PATH_SEPARATOR, SUSPEND_QUIT_FILE);
+ sprintf(temp, "%s%s%s", slot_dir, PATH_SEPARATOR, QUIT_FILE);
file_delete(temp);
#ifdef _WIN32
@@ -356,13 +356,13 @@ int ACTIVE_TASK::start(bool first_time) {
// If it doesn't exit within a set time (seconds), the process is terminated
//
int ACTIVE_TASK::request_exit() {
- char susp_file[256];
+ char quit_file[256];
get_slot_dir(slot, slot_dir);
- sprintf(susp_file, "%s%s%s", slot_dir, PATH_SEPARATOR, SUSPEND_QUIT_FILE);
- FILE *fp = fopen(susp_file, "w");
+ sprintf(quit_file, "%s%s%s", slot_dir, PATH_SEPARATOR, QUIT_FILE);
+ FILE *fp = fopen(quit_file, "w");
if (!fp) return ERR_FOPEN;
- write_suspend_quit_file(fp, false, true);
+ write_quit_file(fp);
fclose(fp);
return 0;
}
@@ -561,7 +561,7 @@ void ACTIVE_TASK_SET::suspend_all() {
for (i=0; isuspend()) {
- fprintf(stderr, "ACTIVE_TASK_SET::exit_tasks(): could not suspend active_task\n");
+ fprintf(stderr, "ACTIVE_TASK_SET::suspend_all(): could not suspend active_task\n");
}
}
}
@@ -574,7 +574,7 @@ void ACTIVE_TASK_SET::unsuspend_all() {
for (i=0; iunsuspend()) {
- fprintf(stderr, "ACTIVE_TASK_SET::exit_tasks(): could not unsuspend active_task\n");
+ fprintf(stderr, "ACTIVE_TASK_SET::unsuspend_all(): could not unsuspend active_task\n");
}
}
}