summaryrefslogtreecommitdiff
path: root/ace/OS_Errno.inl
diff options
context:
space:
mode:
Diffstat (limited to 'ace/OS_Errno.inl')
-rw-r--r--ace/OS_Errno.inl25
1 files changed, 25 insertions, 0 deletions
diff --git a/ace/OS_Errno.inl b/ace/OS_Errno.inl
index 9330c37deb4..67ef64f3d5c 100644
--- a/ace/OS_Errno.inl
+++ b/ace/OS_Errno.inl
@@ -1,6 +1,31 @@
// -*- C++ -*-
// $Id$
+#if defined (ACE_HAS_WINCE_BROKEN_ERRNO)
+
+ACE_INLINE ACE_CE_Errno *
+ACE_CE_Errno::instance ()
+{
+ // This should be inlined.
+ return ACE_CE_Errno::instance_;
+}
+
+ACE_INLINE
+ACE_CE_Errno::operator int (void) const
+{
+ return (int) TlsGetValue (ACE_CE_Errno::errno_key_);
+}
+
+ACE_INLINE int
+ACE_CE_Errno::operator= (int x)
+{
+ // error checking?
+ TlsSetValue (ACE_CE_Errno::errno_key_, (void *) x);
+ return x;
+}
+
+#endif /* ACE_HAS_WINCE_BROKEN_ERRNO */
+
ACE_INLINE
ACE_Errno_Guard::ACE_Errno_Guard (ACE_ERRNO_TYPE &errno_ref,
int error)