diff --git a/checkin_notes b/checkin_notes index 4264ae003a..de67c1d1b0 100755 --- a/checkin_notes +++ b/checkin_notes @@ -25007,3 +25007,15 @@ David 18 Feb 2005 client/ http.C,h + +David 18 Feb 2005 + - For some reason I removed a strdup() in my 17 Feb checkin to start.C, + which caused memory corruption on all platforms. + It's back now + - handle in PROJECT::parse_account(). + Gets rid of a spurious warning + + client/ + app_start.C + cs_account.C + scheduler_op.C diff --git a/client/app_start.C b/client/app_start.C index fe8c7788cf..245d33c356 100644 --- a/client/app_start.C +++ b/client/app_start.C @@ -141,7 +141,7 @@ int ACTIVE_TASK::write_app_init_file() { safe_strcpy(aid.user_name, wup->project->user_name); safe_strcpy(aid.team_name, wup->project->team_name); if (wup->project->project_specific_prefs.length()) { - aid.project_preferences = (char*)wup->project->project_specific_prefs.c_str(); + aid.project_preferences = strdup(wup->project->project_specific_prefs.c_str()); } get_project_dir(wup->project, project_dir); relative_to_absolute(project_dir, project_path); diff --git a/client/cs_account.C b/client/cs_account.C index a81aa3ef3d..39832d3119 100644 --- a/client/cs_account.C +++ b/client/cs_account.C @@ -137,6 +137,7 @@ int PROJECT::parse_account(FILE* in) { } continue; } + else if (match_tag(buf, "")) continue; else if (parse_str(buf, "", master_url, sizeof(master_url))) { canonicalize_master_url(master_url); diff --git a/client/scheduler_op.C b/client/scheduler_op.C index 42a578ef12..6e69a675a4 100644 --- a/client/scheduler_op.C +++ b/client/scheduler_op.C @@ -606,7 +606,9 @@ int SCHEDULER_REPLY::parse(FILE* in, PROJECT* project) { } continue; } - if (match_tag(buf, "")) return 0; + if (match_tag(buf, "")) { + return 0; + } else if (parse_str(buf, "", project->project_name, sizeof(project->project_name))) continue; else if (parse_str(buf, "", project->user_name, sizeof(project->user_name))) continue; else if (parse_double(buf, "", project->user_total_credit)) continue;