This is the mail archive of the cygwin-cvs@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[newlib-cygwin] Reinstantiate Cygwin function called `__getreent'


https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=6f3943bca189a934a6a04576b9a83db625a87d9f

commit 6f3943bca189a934a6a04576b9a83db625a87d9f
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Thu Aug 18 14:27:05 2016 +0200

    Reinstantiate Cygwin function called `__getreent'
    
    This partially reverts commit 10a30e7 as far as the Cygwin version of
    the __getreent function is concerned.  Remove _COMPILING_NEWLIB guard
    only allowing to use __getreent inline function when building newlib,
    since we wan to use it in Cygwin as well.
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
    Signed-off-by: Stefan Assmann <sassmann@redhat.com>

Diff:
---
 winsup/cygwin/include/cygwin/config.h | 2 --
 winsup/cygwin/thread.cc               | 7 +++++++
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/winsup/cygwin/include/cygwin/config.h b/winsup/cygwin/include/cygwin/config.h
index c09641e..46c0208 100644
--- a/winsup/cygwin/include/cygwin/config.h
+++ b/winsup/cygwin/include/cygwin/config.h
@@ -35,7 +35,6 @@ extern "C" {
    compute these offsets already exists for the sake of gendef so
    we might as well just use it here.  */
 
-#ifdef _COMPILING_NEWLIB
 #ifdef __x86_64__
 #include "../tlsoffsets64.h"
 #else
@@ -52,7 +51,6 @@ extern inline struct _reent *__getreent (void)
 #endif
   return (struct _reent *) (ret + tls_local_clib);
 }
-#endif  /* _COMPILING_NEWLIB */
 
 #ifdef __x86_64__
 # define __SYMBOL_PREFIX
diff --git a/winsup/cygwin/thread.cc b/winsup/cygwin/thread.cc
index d9271fc..4414785 100644
--- a/winsup/cygwin/thread.cc
+++ b/winsup/cygwin/thread.cc
@@ -80,6 +80,13 @@ pthread_mutex::no_owner()
     return res;
 }
 
+#undef __getreent
+extern "C" struct _reent *
+__getreent ()
+{
+  return &_my_tls.local_clib;
+}
+
 extern "C" void
 __cygwin_lock_init (_LOCK_T *lock)
 {


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]