[#7271] Re: [PATCH] solaris 10 isinf and ruby_setenv fixes — ville.mattila@...
[#7272] [PATCH] OS X core dumps when $0 is changed and then loads shared libraries — noreply@...
Bugs item #3399, was opened at 2006-01-31 22:25
[#7274] Re: [PATCH] solaris 10 isinf and ruby_setenv fixes — ville.mattila@...
[#7277] Re: [PATCH] solaris 10 isinf and ruby_setenv fixes — ville.mattila@...
[#7280] Re: [PATCH] solaris 10 isinf and ruby_setenv fixes — ville.mattila@...
[#7286] Re: ruby-dev summary 28206-28273 — ara.t.howard@...
On Thu, 2 Feb 2006, Minero Aoki wrote:
mathew wrote:
mathew wrote:
I'm not sure we even need the 'with' syntax. Even if we do, it breaks
On 2006.02.07 10:03, Evan Webb wrote:
Umm, on what version are you seeing a warning there? I don't and never
On 2006.02.07 14:47, Evan Webb wrote:
I'd by far prefer it never emit a warning. The warning is assumes you
On Tue, 7 Feb 2006, Evan Webb wrote:
On Wed, 8 Feb 2006, Timothy J. Wood wrote:
[#7305] Re: Problem with weak references on OS X 10.3 — Mauricio Fernandez <mfp@...>
On Sun, Feb 05, 2006 at 08:33:40PM +0900, Christian Neukirchen wrote:
On Feb 5, 2006, at 5:05 AM, Mauricio Fernandez wrote:
On Wed, Feb 22, 2006 at 02:21:24PM +0900, Eric Hodel wrote:
Hi,
On Mon, Feb 27, 2006 at 12:45:28AM +0900, Yukihiro Matsumoto wrote:
On Sun, Feb 26, 2006 at 06:06:17PM +0100, Mauricio Fernandez wrote:
In article <20060226171117.GB29508@tux-chan>,
In article <1140968746.321377.18843.nullmailer@x31.priv.netlab.jp>,
Hi,
In article <m1FDshr-0006MNC@Knoppix>,
In article <87irr047sx.fsf@m17n.org>,
In article <87vev0hxu5.fsf@m17n.org>,
Just my quick 2 cents...
In article <92f5f81d0602281855g27e78f4eua8bf20e0b8e47b68@mail.gmail.com>,
Hi,
In article <m1FESAD-0001blC@Knoppix>,
Hi,
[#7331] Set containing duplicates — noreply@...
Bugs item #3506, was opened at 2006-02-08 22:52
[#7337] Parse error within Regexp — Bertram Scharpf <lists@...>
Hi,
Hi,
On Sun, Feb 12, 2006 at 01:34:55AM +0900, Yukihiro Matsumoto wrote:
[#7344] Ruby 1.8.4 on Mac OS X 10.4 Intel — Dae San Hwang <daesan@...>
Hi, all. This is my first time posting to this mailing list.
On Feb 12, 2006, at 6:14 AM, Dae San Hwang wrote:
[#7347] Latest change to eval.c — Kent Sibilev <ksruby@...>
It seems that the latest change to eval.c (1.616.2.154) has broken irb.
Hi,
Thanks, Matz.
[#7364] Method object used as Object#instance_eval block doesn't work (as expected) — noreply@...
Bugs item #3565, was opened at 2006-02-15 02:32
Hi,
Hi,
On Pr 2006-02-16 at 03:18 +0900, Yukihiro Matsumoto wrote:
[#7376] Minor tracer.rb patch — Daniel Berger <Daniel.Berger@...>
Hi,
[#7396] IO#reopen — Mathieu Bouchard <matju@...>
[#7403] Module#define_method "send hack" fails with Ruby 1.9 — Emiel van de Laar <emiel@...>
Hi List,
Emiel van de Laar <emiel@rednode.nl> writes:
Hi --
[#7439] FYI: ruby-lang.org is on spamcop blacklists — mathew <meta@...>
dnsbl/bl.spamcop.net returned deny: for
[#7442] GC Question — zdennis <zdennis@...>
I have been posting to the ruby-talk mailing list about ruby memory and GC, and I think it's ready
Hello.
Hello.
Re: [ ruby-Bugs-3399 ] [PATCH] OS X core dumps when $0 is changed and then loads shared libraries
Hello.
>The problem is that Ruby is setting argv[1..argc-1] to 0 and OS X's dyld
>expects those to not be 0 as it uses them. Postgres had the same problem
>and describes why dyld uses argv:
>
>http://archives.postgresql.org/pgsql-hackers/2003-11/msg00449.php
Interesting, but Starndard C gurantees argc and argv should be modifiable,
so I think this is OSX's bug.
>It's not clear to me why in one branch of the function at the end,
>origargv[1..argc-1] are set to 0 and in the other they are not. Just out
>of consistently, it seems better to have both treat origargv[1..argc-1] the
>same and not set them to 0, which also prevents this core dump.
>
>Here's the patch:
>
>diff -ru ruby-1.8.4.orig/ruby.c ruby-1.8.4/ruby.c
>--- ruby-1.8.4.orig/ruby.c 2005-12-11 16:36:52.000000000 -0800
>+++ ruby-1.8.4/ruby.c 2006-01-31 22:13:18.000000000 -0800
>@@ -1067,8 +1067,6 @@
> *s++ = '\0';
> while (++i < len)
> *s++ = ' ';
>- for (i = 1; i < origargc; i++)
>- origargv[i] = 0;
> }
> rb_progname = rb_tainted_str_new2(origargv[0]);
> #endif
If this patch is applied, for example after set_arg0
origargv[i] (i >= 1) can point to the location which is filled with ' ',
and can be unterminated with '\0' like this
"fooboofoo\0 ?"
^
origargv[1]
if '?' != '\0', strlen(origargv[i]) will access out of memory block
How about this? This is shorter, probably safer.
Index: ruby.c
===================================================================
RCS file: /src/ruby/ruby.c,v
retrieving revision 1.83.2.13
diff -u -w -b -p -r1.83.2.13 ruby.c
--- ruby.c 1 Feb 2006 13:27:47 -0000 1.83.2.13
+++ ruby.c 2 Feb 2006 10:28:25 -0000
@@ -1065,18 +1065,9 @@ set_arg0(val, id)
if (i >= len) {
i = len;
- memcpy(origargv[0], s, i);
- origargv[0][i] = '\0';
}
- else {
memcpy(origargv[0], s, i);
- s = origargv[0]+i;
- *s++ = '\0';
- while (++i < len)
- *s++ = ' ';
- for (i = 1; i < origargc; i++)
- origargv[i] = 0;
- }
+ memset(origargv[0] + i, '\0', len - i + 1);
rb_progname = rb_tainted_str_new2(origargv[0]);
#endif
}