aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--missing/os2.c23
2 files changed, 28 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 04f50378cd..779d07dfd8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Thu Jan 22 01:12:12 2004 Siena. <siena@faculty.chiba-u.jp>
+
+ * missing/os2.c (chdir, getcwd):
+ use _chdir2 and _getcwd2 supporting multiple drives in OS/2 with EMX.
+
Thu Jan 22 00:33:52 2004 Siena. <siena@faculty.chiba-u.jp>
* configure.in: check availability of link(). [ruby-dev:22237]
diff --git a/missing/os2.c b/missing/os2.c
index beea824b95..14f663fe53 100644
--- a/missing/os2.c
+++ b/missing/os2.c
@@ -25,6 +25,29 @@ link(char *from, char *to)
}
#endif
+#if defined(EMX_REPLACE_GETCWD) && (EMX_REPLACE_GETCWD) \
+ || defined(EMX_REPLACE_CHDIR) && (EMX_REPLACE_CHDIR)
+#include <unistd.h>
+
+#if defined(EMX_REPLACE_GETCWD) && (EMX_REPLACE_GETCWD)
+/* to handle the drive letter and DBCS characters within a given path */
+char *
+getcwd(char *path, size_t len)
+{
+ return _getcwd2(path, (int)len);
+}
+#endif
+
+#if defined(EMX_REPLACE_CHDIR) && (EMX_REPLACE_CHDIR)
+/* to handle the drive letter and DBCS characters within a given path */
+int
+chdir(__const__ char *path)
+{
+ return _chdir2(path);
+}
+#endif
+#endif
+
typedef char* CHARP;
int