From ac6974b62baade894d6c56280d9a05a0475da68e Mon Sep 17 00:00:00 2001 From: Rom Walton Date: Thu, 19 Apr 2007 20:53:16 +0000 Subject: [PATCH] Rom 19 Apr 2007 - Fix a minor compile problem on 64-bit Windows platforms with the call to SetTimer. - fixes #80: Introduce the notion of an alternate platform for 64-bit Windows clients, which can also run 32-bit Windows apps. TODO: We'll need to refactor the whole platform section in the scheduler request creation section so that it can handle multiple alternate platforms and for Linux/Mac. api/ windows_opengl.C client/ client_state.C, .h cpp.h cs_scheduler.C svn path=/trunk/boinc/; revision=12421 --- api/windows_opengl.C | 2 +- checkin_notes | 18 ++++++++++++++++++ client/client_state.C | 1 + client/client_state.h | 1 + client/cpp.h | 3 ++- client/cs_scheduler.C | 8 ++++++++ 6 files changed, 31 insertions(+), 2 deletions(-) diff --git a/api/windows_opengl.C b/api/windows_opengl.C index 622729572e..4922d0094b 100755 --- a/api/windows_opengl.C +++ b/api/windows_opengl.C @@ -510,7 +510,7 @@ void win_graphics_event_loop() { // reg_win_class(); - gfx_timer_id = SetTimer(NULL, 1, 30, &timer_handler); + gfx_timer_id = SetTimer(NULL, 1, 30, (TIMERPROC)&timer_handler); if (boinc_is_standalone()) { set_mode(MODE_WINDOW); diff --git a/checkin_notes b/checkin_notes index 1d632b9111..f5dca467ca 100755 --- a/checkin_notes +++ b/checkin_notes @@ -3752,3 +3752,21 @@ David 18 Apr 2007 sched/ sched_config.C,h sample_work_generator.C + +Rom 19 Apr 2007 + - Fix a minor compile problem on 64-bit Windows platforms with the + call to SetTimer. + - fixes #80: Introduce the notion of an alternate platform for 64-bit + Windows clients, which can also run 32-bit Windows apps. + + TODO: We'll need to refactor the whole platform section in the + scheduler request creation section so that it can handle + multiple alternate platforms and for Linux/Mac. + + api/ + windows_opengl.C + client/ + client_state.C, .h + cpp.h + cs_scheduler.C + diff --git a/client/client_state.C b/client/client_state.C index e4be4af11a..8e78f52836 100644 --- a/client/client_state.C +++ b/client/client_state.C @@ -74,6 +74,7 @@ CLIENT_STATE::CLIENT_STATE() { core_client_version.minor = BOINC_MINOR_VERSION; core_client_version.release = BOINC_RELEASE; platform_name = HOSTTYPE; + alt_platform_name = HOSTTYPE; exit_after_app_start_secs = 0; app_started = 0; exit_before_upload = false; diff --git a/client/client_state.h b/client/client_state.h index 0a6a3ab650..264f5fc32a 100644 --- a/client/client_state.h +++ b/client/client_state.h @@ -157,6 +157,7 @@ public: bool run_by_updater; double now; const char* platform_name; + const char* alt_platform_name; bool initialized; private: diff --git a/client/cpp.h b/client/cpp.h index 16b1b16f58..5d62854a49 100644 --- a/client/cpp.h +++ b/client/cpp.h @@ -20,7 +20,8 @@ #if defined(_WIN32) && !defined(__CYGWIN32__) #if defined(_WIN64) && defined(_M_X64) -#define HOSTTYPE "windows_x86_64" +#define HOSTTYPE "windows_x86_64" +#define HOSTTYPEALT "windows_intelx86" #else #define HOSTTYPE "windows_intelx86" #endif diff --git a/client/cs_scheduler.C b/client/cs_scheduler.C index 8651a3b22e..1b65a587f1 100644 --- a/client/cs_scheduler.C +++ b/client/cs_scheduler.C @@ -112,6 +112,11 @@ int CLIENT_STATE::make_scheduler_request(PROJECT* p) { " %d\n" " %d\n" " %s\n" +#ifdef _WIN64 + " \n" + " %s\n" + " \n" +#endif " %d\n" " %d\n" " %d\n" @@ -125,6 +130,9 @@ int CLIENT_STATE::make_scheduler_request(PROJECT* p) { p->hostid, p->rpc_seqno, p->anonymous_platform?"anonymous":platform_name, +#ifdef _WIN64 + alt_platform_name, +#endif core_client_version.major, core_client_version.minor, core_client_version.release,