Project

General

Profile

Feature #706

Updated by zzak (zzak _) over 10 years ago

=begin 
  
  When using C/C++ objects in ruby through SWIG wrappers the garbage collectors causes segmentation faults when run. Heere is a backtrace 
 
  Program received signal SIGSEGV, Segmentation fault. 
  [Switching to Thread 47395701238496 (LWP 30763)] 
  garbage_collect () at gc.c:1184 
  1184 		     if (!(p->as.basic.flags & FL_MARK)) { 
  (gdb) bt 
  #0    garbage_collect () at gc.c:1184 
  #1    0x000000000042e41b in rb_gc () at gc.c:1533 
  #2    0x000000000042e439 in rb_gc_start () at gc.c:1550 
  #3    0x000000000041b87a in rb_call0 (klass=47395691970840, recv=47395691970880, id=5313, oid=5313, argc=0, argv=0x0, body=0x2b1b2b6240f0,  
      flags=<value optimized out>) at eval.c:5906 
  #4    0x000000000041c63f in rb_call (klass=47395691970840, recv=47395691970880, mid=5313, argc=0, argv=0x0, scope=0, self=47395816630240) at eval.c:6153 
  #5    0x000000000041734c in rb_eval (self=47395816630240, n=<value optimized out>) at eval.c:3494 
  #6    0x000000000041c0f2 in rb_call0 (klass=47395816630320, recv=47395816630240, id=107929, oid=107929, argc=0, argv=0x7fff7f4c4f50, body=0x2b1b32d383a8,  
      flags=<value optimized out>) at eval.c:6057 
  #7    0x000000000041c63f in rb_call (klass=47395816630320, recv=47395816630240, mid=107929, argc=4, argv=0x7fff7f4c4f30, scope=0, self=47395815611600) at eval.c:6153 
  #8    0x000000000041734c in rb_eval (self=47395815611600, n=<value optimized out>) at eval.c:3494 
  #9    0x00000000004176db in rb_eval (self=47395815611600, n=<value optimized out>) at eval.c:3049 
  #10 0x000000000041c0f2 in rb_call0 (klass=47395816155560, recv=47395815611600, id=111321, oid=111321, argc=0, argv=0x7fff7f4c5c48, body=0x2b1b32cc22c0,  
      flags=<value optimized out>) at eval.c:6057 
  #11 0x000000000041c63f in rb_call (klass=47395816155560, recv=47395815611600, mid=111321, argc=0, argv=0x7fff7f4c5c48, scope=1, self=6) at eval.c:6153 
  #12 0x000000000042421e in rb_f_send (argc=1, argv=0x7fff7f4c5c40, recv=47395815611600) at eval.c:6201 
  #13 0x000000000041b87a in rb_call0 (klass=47395692112200, recv=47395815611600, id=4225, oid=4225, argc=1, argv=0x7fff7f4c5c40, body=0x2b1b2b6423c0,  
      flags=<value optimized out>) at eval.c:5906 
  #14 0x000000000041c63f in rb_call (klass=47395692112200, recv=47395815611600, mid=4225, argc=1, argv=0x7fff7f4c5c40, scope=1, self=47395815611600) at eval.c:6153 
  #15 0x0000000000417482 in rb_eval (self=47395815611600, n=<value optimized out>) at eval.c:3509 
  #16 0x000000000041c0f2 in rb_call0 (klass=47395735937960, recv=47395815611600, id=63369, oid=56801, argc=0, argv=0x0, body=0x2b1b2e1bf750,  
      flags=<value optimized out>) at eval.c:6057 
  #17 0x000000000041c63f in rb_call (klass=47395735937960, recv=47395815611600, mid=63369, argc=0, argv=0x0, scope=2, self=47395815611600) at eval.c:6153 
  #18 0x00000000004174cc in rb_eval (self=47395815611600, n=<value optimized out>) at eval.c:3515 
  #19 0x000000000041c0f2 in rb_call0 (klass=47395736540480, recv=47395815611600, id=63337, oid=63337, argc=0, argv=0x7fff7f4c68a8, body=0x2b1b2dfa87f0,  
      flags=<value optimized out>) at eval.c:6057 
  #20 0x000000000041c63f in rb_call (klass=47395736540480, recv=47395815611600, mid=63337, argc=3, argv=0x7fff7f4c6890, scope=1, self=47395815611600) at eval.c:6153 
  #21 0x0000000000417482 in rb_eval (self=47395815611600, n=<value optimized out>) at eval.c:3509 
 
 =end 
 

Back