summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-07-27 00:15:31 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-07-27 00:15:31 +0000
commit999c9535ee6a1f52f94d1022f69b4f58884e43d7 (patch)
tree3871a01bca2261f74c4ae624b00889bd5d3a5c81
parent4997a5bb1853770058b11c90adae9315054a7941 (diff)
downloadruby-999c9535ee6a1f52f94d1022f69b4f58884e43d7.tar.gz
ruby-999c9535ee6a1f52f94d1022f69b4f58884e43d7.tar.xz
ruby-999c9535ee6a1f52f94d1022f69b4f58884e43d7.zip
* dln.h (dln_find_exe, dln_find_file): deprecated, use reentrant
versions instead. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--dln.c4
-rw-r--r--dln.h4
-rw-r--r--win32/win32.c3
4 files changed, 11 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 29e34ce00..bdf8e9942 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sun Jul 27 09:15:28 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * dln.h (dln_find_exe, dln_find_file): deprecated, use reentrant
+ versions instead.
+
Sun Jul 27 09:02:32 2008 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/rinda/tuplespace.rb: merged from 1.8.
diff --git a/dln.c b/dln.c
index 219a22dbb..c19c42125 100644
--- a/dln.c
+++ b/dln.c
@@ -348,14 +348,14 @@ sym_hash(struct exec *hdrp, struct nlist *syms)
static int
dln_init(const char *prog)
{
- char *file;
+ char *file, fbuf[MAXPATHLEN];
int fd;
struct exec hdr;
struct nlist *syms;
if (dln_init_p == 1) return 0;
- file = dln_find_exe(prog, NULL);
+ file = dln_find_exe_r(prog, NULL, fbuf, sizeof(fbuf));
if (file == NULL || (fd = open(file, O_RDONLY)) < 0) {
dln_errno = errno;
return -1;
diff --git a/dln.h b/dln.h
index aee4c8fe4..f70b0d445 100644
--- a/dln.h
+++ b/dln.h
@@ -28,8 +28,8 @@
# define _(args) ()
#endif
-char *dln_find_exe(const char*,const char*);
-char *dln_find_file(const char*,const char*);
+DEPRECATED(char *dln_find_exe(const char*,const char*));
+DEPRECATED(char *dln_find_file(const char*,const char*));
char *dln_find_exe_r(const char*,const char*,char*,int);
char *dln_find_file_r(const char*,const char*,char*,int);
diff --git a/win32/win32.c b/win32/win32.c
index f6233e4bf..5c525d574 100644
--- a/win32/win32.c
+++ b/win32/win32.c
@@ -928,6 +928,7 @@ CreateChild(const char *cmd, const char *prog, SECURITY_ATTRIBUTES *psa,
const char *shell;
struct ChildRecord *child;
char *p = NULL;
+ char fbuf[MAXPATHLEN];
if (!cmd && !prog) {
errno = EFAULT;
@@ -975,7 +976,7 @@ CreateChild(const char *cmd, const char *prog, SECURITY_ATTRIBUTES *psa,
dwCreationFlags = (NORMAL_PRIORITY_CLASS);
if (prog) {
- if (!(p = dln_find_exe(prog, NULL))) {
+ if (!(p = dln_find_exe_r(prog, NULL, fbuf, sizeof(fbuf)))) {
shell = prog;
}
}