aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsiena <siena@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-01-21 16:23:07 +0000
committersiena <siena@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-01-21 16:23:07 +0000
commitd0149b9e210450113353e9bc8dc1f151f4563313 (patch)
tree305c0ab6dc14ab409424dcbdd0ab0410abcdccda
parenta9f5c042ef8d293aeed9170bd551138018c58b95 (diff)
downloadruby-d0149b9e210450113353e9bc8dc1f151f4563313.tar.gz
* missing/os2.c (chdir, getcwd):
use _chdir2 and _getcwd2 supporting multiple drives in OS/2 with EMX. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-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