Moved __PHYSFS_platformCurrentDir() from Unix to POSIX sources.
authorRyan C. Gordon <icculus@icculus.org>
Sun, 11 Mar 2012 03:43:07 -0400
changeset 1211 09280603503b
parent 1210 cf758fec0273
child 1212 e3cd2449fe8e
Moved __PHYSFS_platformCurrentDir() from Unix to POSIX sources. getcwd() is part of POSIX, after all.
src/platform_beos.cpp
src/platform_macosx.c
src/platform_posix.c
src/platform_unix.c
--- a/src/platform_beos.cpp	Sun Mar 11 03:39:57 2012 -0400
+++ b/src/platform_beos.cpp	Sun Mar 11 03:43:07 2012 -0400
@@ -212,12 +212,6 @@
 } /* __PHYSFS_platformRealPath */
 
 
-char *__PHYSFS_platformCurrentDir(void)
-{
-    return(__PHYSFS_platformRealPath("."));  /* let BPath sort it out. */
-} /* __PHYSFS_platformCurrentDir */
-
-
 void *__PHYSFS_platformCreateMutex(void)
 {
     return(new BLocker("PhysicsFS lock", true));
--- a/src/platform_macosx.c	Sun Mar 11 03:39:57 2012 -0400
+++ b/src/platform_macosx.c	Sun Mar 11 03:43:07 2012 -0400
@@ -314,12 +314,6 @@
 } /* __PHYSFS_platformRealPath */
 
 
-char *__PHYSFS_platformCurrentDir(void)
-{
-    return __PHYSFS_platformRealPath(".");  /* let CFURL sort it out. */
-} /* __PHYSFS_platformCurrentDir */
-
-
 /* Platform allocator uses default CFAllocator at PHYSFS_init() time. */
 
 static CFAllocatorRef cfallocdef = NULL;
--- a/src/platform_posix.c	Sun Mar 11 03:39:57 2012 -0400
+++ b/src/platform_posix.c	Sun Mar 11 03:43:07 2012 -0400
@@ -221,6 +221,44 @@
 } /* __PHYSFS_platformEnumerateFiles */
 
 
+char *__PHYSFS_platformCurrentDir(void)
+{
+    int allocSize = 64;
+    char *retval = NULL;
+    char *ptr;
+
+    do
+    {
+        allocSize *= 2;
+        ptr = (char *) allocator.Realloc(retval, allocSize);
+        if (ptr == NULL)
+        {
+            if (retval != NULL)
+                allocator.Free(retval);
+            BAIL_MACRO(ERR_OUT_OF_MEMORY, NULL);
+        } /* if */
+
+        retval = ptr;
+        ptr = getcwd(retval, allocSize);
+    } while (ptr == NULL && errno == ERANGE);
+
+    if (ptr == NULL && errno)
+    {
+        /* getcwd() failed , for example current directory not existing... */
+        if (retval != NULL)
+            allocator.Free(retval);
+        BAIL_MACRO(ERR_NO_SUCH_FILE, NULL);
+    } /* if */
+
+    /* try to shrink buffer... */
+    ptr = (char *) allocator.Realloc(retval, strlen(retval) + 1);
+    if (ptr != NULL)
+        retval = ptr;  /* oh well if it failed. */
+
+    return retval;
+} /* __PHYSFS_platformCurrentDir */
+
+
 int __PHYSFS_platformMkDir(const char *path)
 {
     int rc;
--- a/src/platform_unix.c	Sun Mar 11 03:39:57 2012 -0400
+++ b/src/platform_unix.c	Sun Mar 11 03:43:07 2012 -0400
@@ -305,44 +305,6 @@
 } /* __PHYSFS_platformRealPath */
 
 
-char *__PHYSFS_platformCurrentDir(void)
-{
-    int allocSize = 64;
-    char *retval = NULL;
-    char *ptr;
-
-    do
-    {
-        allocSize *= 2;
-        ptr = (char *) allocator.Realloc(retval, allocSize);
-        if (ptr == NULL)
-        {
-            if (retval != NULL)
-                allocator.Free(retval);
-            BAIL_MACRO(ERR_OUT_OF_MEMORY, NULL);
-        } /* if */
-
-        retval = ptr;
-        ptr = getcwd(retval, allocSize);
-    } while (ptr == NULL && errno == ERANGE);
-
-    if (ptr == NULL && errno)
-    {
-        /* getcwd() failed , for example current directory not existing... */
-        if (retval != NULL)
-            allocator.Free(retval);
-        BAIL_MACRO(ERR_NO_SUCH_FILE, NULL);
-    } /* if */
-
-    /* try to shrink buffer... */
-    ptr = (char *) allocator.Realloc(retval, strlen(retval) + 1);
-    if (ptr != NULL)
-        retval = ptr;  /* oh well if it failed. */
-
-    return retval;
-} /* __PHYSFS_platformCurrentDir */
-
-
 int __PHYSFS_platformSetDefaultAllocator(PHYSFS_Allocator *a)
 {
     return 0;  /* just use malloc() and friends. */