diff options
author | Christopher Faylor <me@cgf.cx> | 2005-05-29 02:42:36 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2005-05-29 02:42:36 +0000 |
commit | 65a7ca7b7b59302ee06374681bdf907c8bad8f72 (patch) | |
tree | 01b729cdbc2e0ab1a58171e5ee68010f17d50f3f | |
parent | 37b01058e74d4a94febd6267ea66e0d1ad8495b6 (diff) | |
download | newlib-65a7ca7b7b59302ee06374681bdf907c8bad8f72.zip newlib-65a7ca7b7b59302ee06374681bdf907c8bad8f72.tar.gz newlib-65a7ca7b7b59302ee06374681bdf907c8bad8f72.tar.bz2 |
* thread.h (pthread_key::set): Inline.
(pthread_key::get): Ditto.
* thread.cc (pthread::set): Delete.
(pthread::get): Ditto.
-rw-r--r-- | winsup/cygwin/ChangeLog | 7 | ||||
-rw-r--r-- | winsup/cygwin/thread.cc | 17 | ||||
-rw-r--r-- | winsup/cygwin/thread.h | 6 |
3 files changed, 10 insertions, 20 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 7bf04f5..c5159ef 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,5 +1,12 @@ 2005-05-28 Christopher Faylor <cgf@timesys.com> + * thread.h (pthread_key::set): Inline. + (pthread_key::get): Ditto. + * thread.cc (pthread::set): Delete. + (pthread::get): Ditto. + +2005-05-28 Christopher Faylor <cgf@timesys.com> + * cygwin.din: Remove signal front end from pthread_[gs]etspecific. 2005-05-28 Christopher Faylor <cgf@timesys.com> diff --git a/winsup/cygwin/thread.cc b/winsup/cygwin/thread.cc index 7964537..e2ffe8e 100644 --- a/winsup/cygwin/thread.cc +++ b/winsup/cygwin/thread.cc @@ -1367,23 +1367,6 @@ pthread_key::~pthread_key () } } -int -pthread_key::set (const void *value) -{ - /* the OS function doesn't perform error checking */ - TlsSetValue (tls_index, (void *) value); - return 0; -} - -void * -pthread_key::get () const -{ - int saved_error = ::GetLastError (); - void *result = TlsGetValue (tls_index); - ::SetLastError (saved_error); - return result; -} - void pthread_key::_fixup_before_fork () { diff --git a/winsup/cygwin/thread.h b/winsup/cygwin/thread.h index 712e36f..be2ada6 100644 --- a/winsup/cygwin/thread.h +++ b/winsup/cygwin/thread.h @@ -209,12 +209,12 @@ protected: class pthread_key: public verifyable_object { + DWORD tls_index; public: static bool is_good_object (pthread_key_t const *); - DWORD tls_index; - int set (const void *); - void *get () const; + int set (const void *value) {TlsSetValue (tls_index, (void *) value); return 0;} + void *get () const {return TlsGetValue (tls_index);} pthread_key (void (*)(void *)); ~pthread_key (); |