2006-08-01 Andreas Tobler <a.tobler@schweiz.ch>
authorandreast <andreast@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Aug 2006 20:59:24 +0000 (20:59 +0000)
committerandreast <andreast@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Aug 2006 20:59:24 +0000 (20:59 +0000)
* gnu/classpath/natSystemProperties.cc: Add additional check for
getpwuid_r on _POSIX_PTHREAD_SEMANTICS.
(SystemProperties::insertSystemProperties): Likewise.
* java/io/natFilePosix.cc (File::performList): Add
additional check for readdir_r on _POSIX_PTHREAD_SEMANTICS.
* java/util/natVMTimeZone.cc (VMTimeZone::getSystemTimeZoneId): Add
additional check for localtime_r on _POSIX_PTHREAD_SEMANTICS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115864 138bc75d-0d04-0410-961f-82ee72b054a4

libjava/ChangeLog
libjava/gnu/classpath/natSystemProperties.cc
libjava/java/io/natFilePosix.cc
libjava/java/util/natVMTimeZone.cc

index 194f263..69916d9 100644 (file)
@@ -1,3 +1,13 @@
+2006-08-01  Andreas Tobler  <a.tobler@schweiz.ch>
+
+       * gnu/classpath/natSystemProperties.cc: Add additional check for
+       getpwuid_r on _POSIX_PTHREAD_SEMANTICS.
+       (SystemProperties::insertSystemProperties): Likewise.
+       * java/io/natFilePosix.cc (File::performList): Add
+       additional check for readdir_r on _POSIX_PTHREAD_SEMANTICS.
+       * java/util/natVMTimeZone.cc (VMTimeZone::getSystemTimeZoneId): Add
+       additional check for localtime_r on _POSIX_PTHREAD_SEMANTICS.
+
 2006-07-31  Thomas Fitzsimmons  <fitzsim@redhat.com>
 
        PR libgcj/28312
index ad0ff1c..e78ca74 100644 (file)
@@ -82,7 +82,7 @@ file_encoding ()
 
 static const char *default_file_encoding = DEFAULT_FILE_ENCODING;
 
-#if HAVE_GETPWUID_R
+#if defined(HAVE_GETPWUID_R) && defined(_POSIX_PTHREAD_SEMANTICS)
 /* Use overload resolution to find out the signature of getpwuid_r.  */
 
   /* This is Posix getpwuid_r.  */
@@ -223,7 +223,7 @@ gnu::classpath::SystemProperties::insertSystemProperties (java::util::Properties
   uid_t user_id = getuid ();
   struct passwd *pwd_entry;
 
-#ifdef HAVE_GETPWUID_R
+#if defined(HAVE_GETPWUID_R) && defined(_POSIX_PTHREAD_SEMANTICS)
   struct passwd pwd_r;
   size_t len_r = 200;
   char *buf_r = (char *) _Jv_AllocBytes (len_r);
index ff634b0..c9bf858 100644 (file)
@@ -1,6 +1,7 @@
 // natFile.cc - Native part of File class for POSIX.
 
-/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003  Free Software Foundation
+/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2006
+   Free Software Foundation
 
    This file is part of libgcj.
 
@@ -288,7 +289,7 @@ java::io::File::performList (java::io::FilenameFilter *filter,
 
   java::util::ArrayList *list = new java::util::ArrayList ();
   struct dirent *d;
-#ifdef HAVE_READDIR_R
+#if defined(HAVE_READDIR_R) && defined(_POSIX_PTHREAD_SEMANTICS)
   int name_max = pathconf (buf, _PC_NAME_MAX);
   char dbuf[sizeof (struct dirent) + name_max + 1];
   while (readdir_r (dir, (struct dirent *) dbuf, &d) == 0 && d != NULL)
index a6d7016..d45ebf9 100644 (file)
@@ -1,6 +1,6 @@
 // natVMTimeZone.cc -- Native side of VMTimeZone class.
 
-/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004
+/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2006
    Free Software Foundation
 
    This file is part of libgcj.
@@ -54,7 +54,7 @@ jstring
 java::util::VMTimeZone::getSystemTimeZoneId()
 {
   struct tm tim;
-#ifndef HAVE_LOCALTIME_R
+#if !defined(HAVE_LOCALTIME_R) || !defined(_POSIX_PTHREAD_SEMANTICS)
   struct tm *lt_tim;
 #endif
 #ifdef HAVE_TM_ZONE
@@ -66,7 +66,7 @@ java::util::VMTimeZone::getSystemTimeZoneId()
   char *tzid;
 
   time(&current_time);
-#ifdef HAVE_LOCALTIME_R
+#if defined(HAVE_LOCALTIME_R) && defined(_POSIX_PTHREAD_SEMANTICS)
   localtime_r(&current_time, &tim);
 #else
   /* Fall back on non-thread safe localtime. */