summaryrefslogtreecommitdiff
path: root/ace/Timer_Wheel_T.cpp
diff options
context:
space:
mode:
authorSteve Huston <shuston@riverace.com>2002-10-05 00:25:54 +0000
committerSteve Huston <shuston@riverace.com>2002-10-05 00:25:54 +0000
commit0f9d1b93c445df745f37cb1f616cd9fd155a1b7c (patch)
tree7caccdf49e172841bf42289e545ee8ab18383951 /ace/Timer_Wheel_T.cpp
parent6327549fb88cee71553dc8a77222891d5f3600e3 (diff)
downloadATCD-0f9d1b93c445df745f37cb1f616cd9fd155a1b7c.tar.gz
ChangeLogTag:Fri Oct 4 20:22:41 2002 Steve Huston <shuston@riverace.com>
Diffstat (limited to 'ace/Timer_Wheel_T.cpp')
-rw-r--r--ace/Timer_Wheel_T.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/ace/Timer_Wheel_T.cpp b/ace/Timer_Wheel_T.cpp
index f770acf112d..0f5ac7b176b 100644
--- a/ace/Timer_Wheel_T.cpp
+++ b/ace/Timer_Wheel_T.cpp
@@ -290,7 +290,17 @@ ACE_Timer_Wheel_T<TYPE, FUNCTOR, ACE_LOCK>::generate_timer_id (u_int spoke)
// We use this field to keep track of the next counter value that
// may be in use. Of course it may have expired, so we just use
// this field so that we know when we don't have to check for duplicates
+#if defined (ACE_WIN64)
+ // The cast below is legit... we know that long is shorter than a
+ // pointer, but are only using it as a 'long' storage area.
+# pragma warning(push)
+# pragma warning(disable : 4311)
+#endif /* ACE_WIN64 */
long next_cnt = ACE_reinterpret_cast (long, root->get_act ());
+#if defined (ACE_WIN64)
+# pragma warning(pop)
+#endif /* ACE_WIN64 */
+
// This field is used as a counter instead of a timer_id.
long cnt = root->get_timer_id ();
@@ -335,7 +345,16 @@ ACE_Timer_Wheel_T<TYPE, FUNCTOR, ACE_LOCK>::generate_timer_id (u_int spoke)
if (tmp > cnt && (tmp < next_cnt || next_cnt == 0))
next_cnt = tmp;
}
+#if defined (ACE_WIN64)
+ // The cast below is legit... we know we're storing a long in
+ // a pointer, but are only using it as a 'long' storage area.
+# pragma warning(push)
+# pragma warning(disable : 4312)
+#endif /* ACE_WIN64 */
root->set_act (ACE_reinterpret_cast (void*, next_cnt));
+#if defined (ACE_WIN64)
+# pragma warning(pop)
+#endif /* ACE_WIN64 */
return id;
}
}