summaryrefslogtreecommitdiff
path: root/process.c
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-06-10 12:31:40 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-06-10 12:31:40 +0000
commitfa5cd00340d81b9771866cf635ddc4266546a15f (patch)
tree0a048ab246399ab3f6a9fb06ed1b3cf6ab478d39 /process.c
parent4fa66dc53ba7e6c975c71a7419e6081352dea250 (diff)
* process.c (rb_exec_without_timer_thread): renamed from rb_exec_err.
(rb_exec_err): new stub function to call rb_exec_without_timer_thread. (rb_f_exec): call rb_exec_without_timer_thread. (rb_exec): call rb_exec_without_timer_thread. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36021 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'process.c')
-rw-r--r--process.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/process.c b/process.c
index 63cd0fd424..f48a867ced 100644
--- a/process.c
+++ b/process.c
@@ -1975,6 +1975,8 @@ rb_exec_arg_prepare(struct rb_exec_arg *earg, int argc, VALUE *argv)
rb_exec_arg_fixup(earg);
}
+static int rb_exec_without_timer_thread(const struct rb_exec_arg *e, char *errmsg, size_t errmsg_buflen);
+
/*
* call-seq:
* exec([env,] command... [,options])
@@ -2029,7 +2031,7 @@ rb_f_exec(int argc, VALUE *argv)
rb_exec_arg_prepare(&earg, argc, argv);
#ifdef __MacOS_X__
- rb_exec_err(&earg, errmsg, sizeof(errmsg));
+ rb_exec_without_timer_thread(&earg, errmsg, sizeof(errmsg));
#else
rb_exec_async_signal_safe(&earg, errmsg, sizeof(errmsg));
#endif
@@ -2649,8 +2651,8 @@ failure:
return -1;
}
-int
-rb_exec_err(const struct rb_exec_arg *e, char *errmsg, size_t errmsg_buflen)
+static int
+rb_exec_without_timer_thread(const struct rb_exec_arg *e, char *errmsg, size_t errmsg_buflen)
{
int ret;
before_exec_non_async_signal_safe(); /* async-signal-safe if forked_child is true */
@@ -2660,11 +2662,17 @@ rb_exec_err(const struct rb_exec_arg *e, char *errmsg, size_t errmsg_buflen)
}
int
+rb_exec_err(const struct rb_exec_arg *e, char *errmsg, size_t errmsg_buflen)
+{
+ return rb_exec_without_timer_thread(e, errmsg, errmsg_buflen);
+}
+
+int
rb_exec(const struct rb_exec_arg *e)
{
#if !defined FD_CLOEXEC && !defined HAVE_SPAWNV
char errmsg[80] = { '\0' };
- int ret = rb_exec_err(e, errmsg, sizeof(errmsg));
+ int ret = rb_exec_without_timer_thread(e, errmsg, sizeof(errmsg));
preserving_errno(
if (errmsg[0]) {
fprintf(stderr, "%s\n", errmsg);
@@ -2677,7 +2685,7 @@ rb_exec(const struct rb_exec_arg *e)
);
return ret;
#else
- return rb_exec_err(e, NULL, 0);
+ return rb_exec_without_timer_thread(e, NULL, 0);
#endif
}