[#25936] [Bug:1.9] [rubygems] $LOAD_PATH includes bin directory — Nobuyoshi Nakada <nobu@...>

Hi,

10 messages 2009/10/05

[#25943] Disabling tainting — Tony Arcieri <tony@...>

Would it make sense to have a flag passed to the interpreter on startup that

16 messages 2009/10/05

[#26028] [Bug #2189] Math.atanh(1) & Math.atanh(-1) should not raise an error — Marc-Andre Lafortune <redmine@...>

Bug #2189: Math.atanh(1) & Math.atanh(-1) should not raise an error

14 messages 2009/10/10

[#26222] [Bug #2250] IO::for_fd() objects' finalization dangerously closes underlying fds — Mike Pomraning <redmine@...>

Bug #2250: IO::for_fd() objects' finalization dangerously closes underlying fds

11 messages 2009/10/22

[#26244] [Bug #2258] Kernel#require inside rb_require() inside rb_protect() inside SysV context fails — Suraj Kurapati <redmine@...>

Bug #2258: Kernel#require inside rb_require() inside rb_protect() inside SysV context fails

24 messages 2009/10/22

[#26361] [Feature #2294] [PATCH] ruby_bind_stack() to embed Ruby in coroutine — Suraj Kurapati <redmine@...>

Feature #2294: [PATCH] ruby_bind_stack() to embed Ruby in coroutine

42 messages 2009/10/27

[#26371] [Bug #2295] segmentation faults — tomer doron <redmine@...>

Bug #2295: segmentation faults

16 messages 2009/10/27

[ruby-core:26012] Segfaults after multiple call of ruby_node_run

From: Christoph Kappel <unexist@...>
Date: 2009-10-08 19:58:49 UTC
List: ruby-core #26012
Hello list,

I am just trying to solve the embedding issue (ruby-core:25927) and tried to make a small testing program to narrow it down.
Actually I stumbled over another thing which I don't understand, why does this program segtaults in the second run of the loop:

It's started like this: ./test test.rb

test.c
---------
#include <stdio.h>
#include <unistd.h>
#include <ruby.h>

RUBY_GLOBAL_SETUP

int
main(int argc,
  char *argv[])
{
  void *node = NULL;

  if(2 != argc)
    {
      fprintf(stderr, "Usage: %s <FILE>\n", argv[0]);
      exit(1);
    }

  ruby_sysinit(&argc, &argv);
  RUBY_INIT_STACK;
  ruby_init();

  node = ruby_options(argc, argv);

  while(1)
    {
      ruby_run_node(node);

      sleep(1);
    }

  rb_exit(0);

  return(0);
}

test.rb
-------------
puts "foobar"

In This Thread

Prev Next