[#27919] 1.8.4 Preview2 検証 — "URABE Shyouhei aka. mput" <root@...>

卜部です。

33 messages 2005/12/01

[#27997] 1.8.4 documents? — "URABE Shyouhei aka. mput" <root@...>

卜部です。

22 messages 2005/12/12
[#28017] Re: 1.8.4 documents? — Koji Arai <jca02266@...> 2005/12/13

新井です。

[#28082] ruby_1_8 Segmentation fault on Cygwin — yanagi@...

柳田です。

13 messages 2005/12/21
[#28083] Re: ruby_1_8 Segmentation fault on Cygwin — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/12/21

山本です。

[#28140] ia64-hpux11.23/socket.sl: this executable file can't load extension libraries (LoadError) — Tanaka Akira <akr@...17n.org>

HP-UX で HP aC++/ANSI C を使って作った ruby で、openssl や drb のテストをすると、

34 messages 2005/12/27
[#28141] Re: ia64-hpux11.23/socket.sl: this executable file can't load extension libraries (LoadError) — WATANABE Tetsuya <Tetsuya.WATANABE@...> 2005/12/28

渡辺哲也です。

[#28142] Re: ia64-hpux11.23/socket.sl: this executable file can't load extension libraries (LoadError) — Tanaka Akira <akr@...17n.org> 2005/12/28

In article <200512280307.jBS37nnj005909@pbsg500.nifty.com>,

[#28147] Re: ia64-hpux11.23/socket.sl: this executable file can't load extension libraries (LoadError) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/12/28

山本です。

[#28149] Re: ia64-hpux11.23/socket.sl: this executable file can't load extension libraries (LoadError) — Tanaka Akira <akr@...17n.org> 2005/12/28

In article <20051228210640.13C71A10.ocean@m2.ccsnet.ne.jp>,

[#28151] Re: ia64-hpux11.23/socket.sl: this executable file can't load extension libraries (LoadError) — WATANABE Tetsuya <Tetsuya.WATANABE@...> 2005/12/29

渡辺哲也です。

[#28152] Re: ia64-hpux11.23/socket.sl: this executable file can't load extensionlibraries (LoadError) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/12/29

山本です。

[#28153] Re: ia64-hpux11.23/socket.sl: this executable file can't load extensionlibraries (LoadError) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/12/29

山本です。

[#28154] thread based generator.rb — Tanaka Akira <akr@...17n.org> 2005/12/29

In article <20051229114438.44D19F00.ocean@m2.ccsnet.ne.jp>,

[ruby-dev:27948] rb_mod_module_evalでSEGV

From: "Yuya.Nishida." <yuya@...96.org>
Date: 2005-12-04 09:08:07 UTC
List: ruby-dev #27948
雄也です.

Ruby 1.8.4preview2でRastがSEGVすることを聞いて調べました.
添付のCコードを1.8.4preview2でコンパイル・実行することで再現します.
  % gcc -g -O2 -I/usr/local/lib/ruby/1.8/i686-linux -pipe -Wall -lm -lcrypt -ldl -ocall-rb_mod_module_eval call-rb_mod_module_eval.c /usr/local/lib/libruby1.8.4preview2-static.a
  % ./call-rb_mod_module_eval
  ruby: [BUG] Segmentation fault
  ruby 1.8.4 (2005-12-01) [i686-linux]

eval.cのリビジョン1.616.2.134のときにexec_underで
PUSH_FRAME()前のruby_frame->prevを
変数fに代入するようにされていますが,
このときからSEGVするようになったと考えます.

添付のパッチでSEGVしなくなりました.
よろしければ取り込んでください.

---
西田雄也 (Yuya.Nishida.)
http://www.j96.org/~yuya/

Attachments (2)

call-rb_mod_module_eval.c (316 Bytes, text/x-csrc)
#include <ruby.h>

int
main()
{
    VALUE mFooModule;
    VALUE eval_args[1], result;

    ruby_init();

    mFooModule = rb_define_module("FooModule");
    eval_args[0] = rb_str_new2("1 + 2");
    result = rb_mod_module_eval(1, eval_args, mFooModule);

    printf("1 + 2 = %d\n", NUM2INT(result));

    return 0;
}
exec_under.patch (466 Bytes, text/x-diff)
Index: eval.c
===================================================================
RCS file: /src/ruby/eval.c,v
retrieving revision 1.616.2.135
diff -u -r1.616.2.135 eval.c
--- eval.c	30 Nov 2005 15:51:05 -0000	1.616.2.135
+++ eval.c	4 Dec 2005 07:37:57 -0000
@@ -6442,7 +6442,7 @@
     VALUE val = Qnil;		/* OK */
     int state;
     int mode;
-    struct FRAME *f = ruby_frame->prev;
+    struct FRAME *f = ruby_frame;
 
     PUSH_CLASS(under);
     PUSH_FRAME();

In This Thread

Prev Next