mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* ruby.c (set_arg0, ruby_prog_init): freeze $0. a patch from Keita
Yamaguchi <keita.yamaguchi at gmail.com>. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@17586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
9569facfdc
commit
c1ed3956a7
2 changed files with 11 additions and 4 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
Fri Jun 27 00:00:14 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
|
* ruby.c (set_arg0, ruby_prog_init): freeze $0. a patch from Keita
|
||||||
|
Yamaguchi <keita.yamaguchi at gmail.com>.
|
||||||
|
|
||||||
Thu Jun 26 22:07:54 2008 Tanaka Akira <akr@fsij.org>
|
Thu Jun 26 22:07:54 2008 Tanaka Akira <akr@fsij.org>
|
||||||
|
|
||||||
* process.c: include sys/resource.h if HAVE_SYS_RESOURCE_H is defined.
|
* process.c: include sys/resource.h if HAVE_SYS_RESOURCE_H is defined.
|
||||||
|
|
10
ruby.c
10
ruby.c
|
@ -1044,6 +1044,7 @@ set_arg0(val, id)
|
||||||
VALUE val;
|
VALUE val;
|
||||||
ID id;
|
ID id;
|
||||||
{
|
{
|
||||||
|
VALUE progname;
|
||||||
char *s;
|
char *s;
|
||||||
long i;
|
long i;
|
||||||
#if !defined(PSTAT_SETCMD) && !defined(HAVE_SETPROCTITLE)
|
#if !defined(PSTAT_SETCMD) && !defined(HAVE_SETPROCTITLE)
|
||||||
|
@ -1068,10 +1069,10 @@ set_arg0(val, id)
|
||||||
j.pst_command = s;
|
j.pst_command = s;
|
||||||
pstat(PSTAT_SETCMD, j, i, 0, 0);
|
pstat(PSTAT_SETCMD, j, i, 0, 0);
|
||||||
}
|
}
|
||||||
rb_progname = rb_tainted_str_new(s, i);
|
progname = rb_tainted_str_new(s, i);
|
||||||
#elif defined(HAVE_SETPROCTITLE)
|
#elif defined(HAVE_SETPROCTITLE)
|
||||||
setproctitle("%.*s", (int)i, s);
|
setproctitle("%.*s", (int)i, s);
|
||||||
rb_progname = rb_tainted_str_new(s, i);
|
progname = rb_tainted_str_new(s, i);
|
||||||
#else
|
#else
|
||||||
if (len == 0) {
|
if (len == 0) {
|
||||||
char *s = origargv[0];
|
char *s = origargv[0];
|
||||||
|
@ -1106,8 +1107,9 @@ set_arg0(val, id)
|
||||||
if (++i < len) memset(s + 1, ' ', len - i);
|
if (++i < len) memset(s + 1, ' ', len - i);
|
||||||
for (i = 1; i < origargc; i++)
|
for (i = 1; i < origargc; i++)
|
||||||
origargv[i] = s;
|
origargv[i] = s;
|
||||||
rb_progname = rb_tainted_str_new2(origargv[0]);
|
progname = rb_tainted_str_new2(origargv[0]);
|
||||||
#endif
|
#endif
|
||||||
|
rb_progname = rb_obj_freeze(progname);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1115,7 +1117,7 @@ ruby_script(name)
|
||||||
const char *name;
|
const char *name;
|
||||||
{
|
{
|
||||||
if (name) {
|
if (name) {
|
||||||
rb_progname = rb_tainted_str_new2(name);
|
rb_progname = rb_obj_freeze(rb_tainted_str_new2(name));
|
||||||
ruby_sourcefile = rb_source_filename(name);
|
ruby_sourcefile = rb_source_filename(name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue