[Nokogiri-talk] Segmentation fault
Julien Genestoux
julien.genestoux at gmail.com
Mon Mar 23 18:22:46 EDT 2009
Hey Aaron,
Thanks for the very quick fix!! It actually solved the problem... but I am
now facing another one!
I am using the Feedzirra gem to parse feeds that I find online.
Unfortunately (but not suprisingly), most of them are not valid, which is
probably why we're having problems here.
Unfortunately it seems that gdb is not as verbose as for the other error :
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x024e5000
0xffff07d7 in ?? ()
And Mac OS X's error console :
Process: ruby [3873]
Path: /opt/local/bin/ruby
Identifier: ruby
Version: ??? (???)
Code Type: X86 (Native)
Parent Process: bash [3317]
Date/Time: 2009-03-23 15:21:57.650 -0700
OS Version: Mac OS X 10.5.6 (9G55)
Report Version: 6
Exception Type: EXC_BAD_ACCESS (SIGABRT)
Exception Codes: KERN_PROTECTION_FAILURE at 0x000000000000000c
Crashed Thread: 0
Thread 0 Crashed:
0 libSystem.B.dylib 0x92a0de42 __kill + 10
1 libSystem.B.dylib 0x92a8023a raise + 26
2 libSystem.B.dylib 0x92a8c679 abort + 73
3 libruby.dylib 0x000fdfbe rb_bug + 238
4 libruby.dylib 0x00170966 sigbus + 54
5 libSystem.B.dylib 0x92a0c2bb _sigtramp + 43
6 ??? 0xffffffff 0 + 4294967295
7 libruby.dylib 0x001022b0 call_cfunc + 768
8 libruby.dylib 0x0010c502 rb_call0 + 706
9 libruby.dylib 0x0010d10c rb_call + 284
10 libruby.dylib 0x0010aa47 rb_eval + 9047
11 libruby.dylib 0x0010a75a rb_eval + 8298
12 libruby.dylib 0x0010cda0 rb_call0 + 2912
13 libruby.dylib 0x0010d10c rb_call + 284
14 libruby.dylib 0x00109a61 rb_eval + 4977
15 libruby.dylib 0x00110d11 rb_yield_0 + 1985
16 libruby.dylib 0x00111e71 rb_yield + 33
17 libruby.dylib 0x000e9f7f rb_ary_each + 63
18 libruby.dylib 0x0010c502 rb_call0 + 706
19 libruby.dylib 0x0010d10c rb_call + 284
20 libruby.dylib 0x0010aa47 rb_eval + 9047
21 libruby.dylib 0x0010be41 rb_eval + 14161
22 libruby.dylib 0x0010cda0 rb_call0 + 2912
23 libruby.dylib 0x0010d10c rb_call + 284
24 libruby.dylib 0x0010aa47 rb_eval + 9047
25 libruby.dylib 0x00110d11 rb_yield_0 + 1985
26 libruby.dylib 0x001114e8 proc_invoke + 1016
27 libruby.dylib 0x0010c502 rb_call0 + 706
28 libruby.dylib 0x0010d10c rb_call + 284
29 libruby.dylib 0x0010aa47 rb_eval + 9047
30 libruby.dylib 0x0010cda0 rb_call0 + 2912
31 libruby.dylib 0x00117a98 method_call + 136
32 libruby.dylib 0x001022f5 call_cfunc + 837
33 libruby.dylib 0x0010c502 rb_call0 + 706
34 libruby.dylib 0x0010d10c rb_call + 284
35 libruby.dylib 0x0010aa47 rb_eval + 9047
36 libruby.dylib 0x00110d11 rb_yield_0 + 1985
37 libruby.dylib 0x001114e8 proc_invoke + 1016
38 libruby.dylib 0x0010c502 rb_call0 + 706
39 libruby.dylib 0x0010d10c rb_call + 284
40 libruby.dylib 0x0010de6d vafuncall + 141
41 libruby.dylib 0x0010dfc1 rb_funcall + 33
42 curb_core.bundle 0x01308956 rb_curl_multi_read_info +
438
43 curb_core.bundle 0x01308a28 ruby_curl_multi_add + 200
44 libruby.dylib 0x0010c502 rb_call0 + 706
45 libruby.dylib 0x0010d10c rb_call + 284
46 libruby.dylib 0x0010aa47 rb_eval + 9047
47 libruby.dylib 0x0010cda0 rb_call0 + 2912
48 libruby.dylib 0x0010d10c rb_call + 284
49 libruby.dylib 0x00109a61 rb_eval + 4977
50 libruby.dylib 0x00110d11 rb_yield_0 + 1985
51 libruby.dylib 0x001114e8 proc_invoke + 1016
52 libruby.dylib 0x0010c502 rb_call0 + 706
53 libruby.dylib 0x0010d10c rb_call + 284
54 libruby.dylib 0x0010de6d vafuncall + 141
55 libruby.dylib 0x0010dfc1 rb_funcall + 33
56 curb_core.bundle 0x01308956 rb_curl_multi_read_info +
438
57 curb_core.bundle 0x01308a28 ruby_curl_multi_add + 200
58 libruby.dylib 0x0010c502 rb_call0 + 706
59 libruby.dylib 0x0010d10c rb_call + 284
60 libruby.dylib 0x0010aa47 rb_eval + 9047
61 libruby.dylib 0x0010cda0 rb_call0 + 2912
62 libruby.dylib 0x0010d10c rb_call + 284
63 libruby.dylib 0x00109a61 rb_eval + 4977
64 libruby.dylib 0x00110d11 rb_yield_0 + 1985
65 libruby.dylib 0x001114e8 proc_invoke + 1016
66 libruby.dylib 0x0010c502 rb_call0 + 706
67 libruby.dylib 0x0010d10c rb_call + 284
68 libruby.dylib 0x0010de6d vafuncall + 141
69 libruby.dylib 0x0010dfc1 rb_funcall + 33
70 curb_core.bundle 0x013088b3 rb_curl_multi_read_info +
275
71 curb_core.bundle 0x01308af5 ruby_curl_multi_perform +
85
72 libruby.dylib 0x0010c502 rb_call0 + 706
73 libruby.dylib 0x0010d10c rb_call + 284
74 libruby.dylib 0x0010aa47 rb_eval + 9047
75 libruby.dylib 0x0010cda0 rb_call0 + 2912
76 libruby.dylib 0x0010d10c rb_call + 284
77 libruby.dylib 0x0010aa47 rb_eval + 9047
78 libruby.dylib 0x0010be41 rb_eval + 14161
79 libruby.dylib 0x0010cda0 rb_call0 + 2912
80 libruby.dylib 0x0010d10c rb_call + 284
81 libruby.dylib 0x0010abf8 rb_eval + 9480
82 libruby.dylib 0x0010adc6 rb_eval + 9942
83 libruby.dylib 0x0010b63b rb_eval + 12107
84 libruby.dylib 0x00108e03 rb_eval + 1811
85 libruby.dylib 0x00110d11 rb_yield_0 + 1985
86 libruby.dylib 0x00113cb5 rb_thread_start_0 + 1125
87 libruby.dylib 0x0010c502 rb_call0 + 706
88 libruby.dylib 0x0010d10c rb_call + 284
89 libruby.dylib 0x0010dba2 rb_obj_call_init + 82
90 libruby.dylib 0x0010dbf8 rb_thread_s_new + 56
91 libruby.dylib 0x001022f5 call_cfunc + 837
92 libruby.dylib 0x0010c502 rb_call0 + 706
93 libruby.dylib 0x0010d10c rb_call + 284
94 libruby.dylib 0x0010aa47 rb_eval + 9047
95 libruby.dylib 0x0010be41 rb_eval + 14161
96 libruby.dylib 0x0010938a rb_eval + 3226
97 libruby.dylib 0x00110d11 rb_yield_0 + 1985
98 libruby.dylib 0x00111e71 rb_yield + 33
99 libruby.dylib 0x00136d9f int_dotimes + 239
100 libruby.dylib 0x0010c502 rb_call0 + 706
101 libruby.dylib 0x0010d10c rb_call + 284
102 libruby.dylib 0x0010aa47 rb_eval + 9047
103 libruby.dylib 0x0010be41 rb_eval + 14161
104 libruby.dylib 0x0011ac57 ruby_exec_internal + 151
105 libruby.dylib 0x0011ac96 ruby_exec + 22
106 libruby.dylib 0x0011acca ruby_run + 42
107 ruby 0x00001ffd 0x1000 + 4093
108 ruby 0x00001f96 start + 54
Thread 1:
0 libSystem.B.dylib 0x929a73ae __semwait_signal + 10
1 libruby.dylib 0x0010620a thread_timer + 90
2 libSystem.B.dylib 0x929d1095 _pthread_start + 321
3 libSystem.B.dylib 0x929d0f52 thread_start + 34
Thread 0 crashed with X86 Thread State (32-bit):
eax: 0x00000000 ebx: 0x92a8c639 ecx: 0xbfff712c edx: 0x92a0de42
edi: 0xa0295690 esi: 0x0000001a ebp: 0xbfff7148 esp: 0xbfff712c
ss: 0x0000001f efl: 0x00000286 eip: 0x92a0de42 cs: 0x00000007
ds: 0x0000001f es: 0x0000001f fs: 0x00000000 gs: 0x00000037
cr2: 0x02b32000
Binary Images:
0x1000 - 0x1ffc +ruby ??? (???) <3632364748fc11d634bbcb0d42f61b4d>
/opt/local/bin/ruby
0x39000 - 0x3bffe +thread.bundle ??? (???)
<f64a6726fe4ca8df92ac362f74b6d261>
/opt/local/lib/ruby/1.8/i686-darwin9/thread.bundle
0x98000 - 0x9affe +stringio.bundle ??? (???)
<a959f7500cd21205daa11abf57b69cc2>
/opt/local/lib/ruby/1.8/i686-darwin9/stringio.bundle
0x9e000 - 0x9eff4 +etc.bundle ??? (???)
<a1419cdf11e6f54b3407cee79bd3ceed>
/opt/local/lib/ruby/1.8/i686-darwin9/etc.bundle
0xa2000 - 0xaafff +bigdecimal.bundle ??? (???)
<517e35a65722aa8c9e01561cc366f45b>
/opt/local/lib/ruby/1.8/i686-darwin9/bigdecimal.bundle
0xaf000 - 0xb0ff8 +iconv.bundle ??? (???)
<2f591c928227d136bd05220d8f26d991>
/opt/local/lib/ruby/1.8/i686-darwin9/iconv.bundle
0xb4000 - 0xb4ffd +sha1.bundle ??? (???)
<62d5bf5996732b635e910e207ae9df3d>
/opt/local/lib/ruby/1.8/i686-darwin9/digest/sha1.bundle
0xe8000 - 0x19ffe3 +libruby.dylib ??? (???)
<4edc293e2bb9c2bd178bce192e954cf1> /opt/local/lib/libruby.dylib
0x1d0000 - 0x1e5ff7 +syck.bundle ??? (???)
<778f9946b43e3ab04f2b6b9874485442>
/opt/local/lib/ruby/1.8/i686-darwin9/syck.bundle
0x1ec000 - 0x1eeffd +strscan.bundle ??? (???)
<6b210a99f3a9b0b38e3ed3589f6e8e1f>
/opt/local/lib/ruby/1.8/i686-darwin9/strscan.bundle
0x1f2000 - 0x1f3ffb +cparse.bundle ??? (???)
<734a80ecc33d229453d7d494d7b47908>
/opt/local/lib/ruby/1.8/i686-darwin9/racc/cparse.bundle
0x1f7000 - 0x1f8ff5 +digest.bundle ??? (???)
<bfed07ba3749594e5c2afe3198cabece>
/opt/local/lib/ruby/1.8/i686-darwin9/digest.bundle
0x1fc000 - 0x1fcff4 +fcntl.bundle ??? (???)
<dee0e4438bcd79c31bba1ede4f0d1ce6>
/opt/local/lib/ruby/1.8/i686-darwin9/fcntl.bundle
0x39f000 - 0x3cdfe6 +nkf.bundle ??? (???)
<c6cdc50a53fb9f4c1751b92b40301b02>
/opt/local/lib/ruby/1.8/i686-darwin9/nkf.bundle
0x3da000 - 0x3eaffd +libz.1.dylib ??? (???)
<25163f077baad0c860ebf6152d7c4183> /opt/local/lib/libz.1.dylib
0x3ef000 - 0x3f6ff4 +native.bundle ??? (???)
<ad712e701b3a567e8a44ce2573120f0d>
/opt/local/lib/ruby/gems/1.8/gems/nokogiri-1.2.3/lib/nokogiri/native.bundle
0x61d000 - 0x714ff0 +libiconv.2.dylib ??? (???)
<7e3c963d3ead0a1a598d93bdc1875177> /opt/local/lib/libiconv.2.dylib
0x721000 - 0x73aff6 +rubyeventmachine.bundle ??? (???)
<18002433c02e462428775c6386ca8ac5>
/opt/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.6/lib/rubyeventmachine.bundle
0x74a000 - 0x77ffeb +libssl.0.9.8.dylib ??? (???)
<42ce87ce153df90420b3f94faf854fda> /opt/local/lib/libssl.0.9.8.dylib
0x792000 - 0x79cfff libexslt.0.dylib ??? (???)
<2d56b8c39848d8a524cb0ae8d6299f19> /usr/lib/libexslt.0.dylib
0x7a2000 - 0x7a9ff1 +socket.bundle ??? (???)
<4b78fb4cf8227e2ff738701f3a3b28af>
/opt/local/lib/ruby/1.8/i686-darwin9/socket.bundle
0x7ae000 - 0x7ddff8 +openssl.bundle ??? (???)
<cb4e5ca263c0e574eb8d94f60842a286>
/opt/local/lib/ruby/1.8/i686-darwin9/openssl.bundle
0x7ef000 - 0x7f4ffc +zlib.bundle ??? (???)
<a8dd4c827873a020d2d9cb2d49b7745f>
/opt/local/lib/ruby/1.8/i686-darwin9/zlib.bundle
0x1301000 - 0x130aff9 +curb_core.bundle ??? (???)
<6b6ce54bb3e6a2832ae756acb9cf8406>
/opt/local/lib/ruby/gems/1.8/gems/curb-0.3.2/lib/curb_core.bundle
0x1311000 - 0x1347fef +libcurl.4.dylib ??? (???)
<89d0898454fc790681bb45feb9cf1393> /usr/local/lib/libcurl.4.dylib
0x1368000 - 0x1378ff0 +mysql.bundle ??? (???)
<2f22d15ee49761774a04b3c26f929af1>
/opt/local/lib/ruby/vendor_ruby/1.8/i686-darwin9/mysql.bundle
0x1700000 - 0x1801fe7 +libcrypto.0.9.8.dylib ??? (???)
<71abfc53b8c705ef97e0088d8015e067> /opt/local/lib/libcrypto.0.9.8.dylib
0x2000000 - 0x2039fef +libmysqlclient.15.dylib ??? (???)
<23a41a96b11b62b2318fe08da6b99c01>
/opt/local/lib/mysql5/mysql/libmysqlclient.15.dylib
0x8fe00000 - 0x8fe2db43 dyld 97.1 (???) <100d362e03410f181a34e04e94189ae5>
/usr/lib/dyld
0x9162d000 - 0x91765ff7 libicucore.A.dylib ??? (???)
<18098dcf431603fe47ee027a60006c85> /usr/lib/libicucore.A.dylib
0x92692000 - 0x92696fff libmathCommon.A.dylib ??? (???)
/usr/lib/system/libmathCommon.A.dylib
0x928ad000 - 0x9298eff7 libxml2.2.dylib ??? (???)
<306036e0070330e35045650e6d9f0d05> /usr/lib/libxml2.2.dylib
0x9299f000 - 0x92b06ff3 libSystem.B.dylib ??? (???)
<d68880dfb1f8becdbdac6928db1510fb> /usr/lib/libSystem.B.dylib
0x930e0000 - 0x93112fff com.apple.LDAPFramework 1.4.5 (110)
<e9e44dec1fd4b049276257c7cc97b423>
/System/Library/Frameworks/LDAP.framework/Versions/A/LDAP
0x937e6000 - 0x93898ffb libcrypto.0.9.7.dylib ??? (???)
<75b80bff0d5cfaf10b6b6fe982da3578> /usr/lib/libcrypto.0.9.7.dylib
0x93ccd000 - 0x93cf8fe7 libauto.dylib ??? (???)
<2e44c523b851e8e25f05d13a48070a58> /usr/lib/libauto.dylib
0x9418a000 - 0x94198ffd libz.1.dylib ??? (???)
<a98b3b221a72b54faf73ded3dd7000e5> /usr/lib/libz.1.dylib
0x953f9000 - 0x95456ffb libstdc++.6.dylib ??? (???)
<f75e5133d72769de5ce6c06153fc65f6> /usr/lib/libstdc++.6.dylib
0x95910000 - 0x9591ffff libsasl2.2.dylib ??? (???)
<bb7971ca2f609c070f87786a93d1041e> /usr/lib/libsasl2.2.dylib
0x95960000 - 0x95984feb libssl.0.9.7.dylib ??? (???)
<d04156c610530ca44979c899834fc24d> /usr/lib/libssl.0.9.7.dylib
0x9670f000 - 0x9672dfff libresolv.9.dylib ??? (???)
<9ed809256ce8913cddc3269c2e364654> /usr/lib/libresolv.9.dylib
0x96954000 - 0x96a34fff libobjc.A.dylib ??? (???)
<400e943f9e8a678eea22a1d1205490ee> /usr/lib/libobjc.A.dylib
0x96bb3000 - 0x96bbafe9 libgcc_s.1.dylib ??? (???)
<e280ddf3f5fb3049e674edcb109f389a> /usr/lib/libgcc_s.1.dylib
0x96bfb000 - 0x96c1ffff libxslt.1.dylib ??? (???)
<0a9778d6368ae668826f446878deb99b> /usr/lib/libxslt.1.dylib
0xfffe8000 - 0xfffebfff libobjc.A.dylib ??? (???) /usr/lib/libobjc.A.dylib
0xffff0000 - 0xffff1780 libSystem.B.dylib ??? (???)
/usr/lib/libSystem.B.dylib
--
Julien Genestoux, Notifixio.us
http://twitter.com/julien51
http://www.ouvre-boite.com
http://blog.notifixio.us
+1 (415) 254 7340
+33 (0)9 70 44 76 29
On Mon, Mar 23, 2009 at 1:54 PM, Aaron Patterson
<aaron.patterson at gmail.com>wrote:
> 2009/3/23 Julien Genestoux <julien.genestoux at gmail.com>:
> > Hey,
> >
> > Still playing with Nokogiri... I use to have Segmentation fault pretty
> often
> > on my Mac. I assumed this was "local", but as I run the same code on an
> > Ubuntu box I get the seg fault as well... So I am submitting it so that
> you
> > can look into it.
> >
> > I am really not a C guy, so here is what I could get (please tell me if
> you
> > need anything and how I can provide it!) :
>
> This was very helpful. I reproduced the problem and have posted a fix
> here:
>
>
> http://github.com/tenderlove/nokogiri/commit/a953b2c7cf3872d613234e0ccdde8c2edd063406
>
> Can you provide a sample of what you were doing to make the code
> break? It looks to me like you were passing a Node in to the CDATA
> constructor when it wants Document.
>
> --
> Aaron Patterson
> http://tenderlovemaking.com/
> _______________________________________________
> Nokogiri-talk mailing list
> Nokogiri-talk at rubyforge.org
> http://rubyforge.org/mailman/listinfo/nokogiri-talk
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/nokogiri-talk/attachments/20090323/50f22211/attachment-0001.html>
More information about the Nokogiri-talk
mailing list