[MacRuby] #1447: Crash - Assertion failed in RoxorVM::pop_current_exception
MacRuby
ruby-noreply at macosforge.org
Sat Feb 4 12:37:05 PST 2012
#1447: Crash - Assertion failed in RoxorVM::pop_current_exception
--------------------------------+-------------------------------------------
Reporter: msabramo@… | Owner: lsansonetti@…
Type: defect | Status: new
Priority: major | Milestone:
Component: MacRuby | Keywords: crash, GCD
--------------------------------+-------------------------------------------
Using the extra debug logging that I mentioned in #1446, I took the app
that I was working on that was crashing
(http://urbancoding.github.com/jenx/) and reduced it down quite a bit.
I will attach a tarball with the Xcode project (I attempted to reproduce
the problem in a simple command-line RSpec, but I couldn't).
When I run the attached tarball with a MacRuby with the change mentioned
in #1446, I get this output:
{{{
GNU gdb 6.3.50-20050815 (Apple version gdb-1708) (Mon Aug 15 16:03:10 UTC
2011)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for
details.
This GDB was configured as "x86_64-apple-darwin".Setting environment
variable "MANPATH_WITHOUT_PERLBREW" to null value.
Setting environment variable "SHMUX_SSH_OPTS" to null value.
tty /dev/ttys004
[Switching to process 63033 thread 0x0]
2012-02-04 12:33:49.342 Jenx[63033:903] Could not find image named
'refresh'.
2012-02-04 12:33:49.344 Jenx[63033:903] Could not find image named
'projects'.
2012-02-04 12:33:49.348 Jenx[63033:903] Could not connect the action
ensure_connection: to target of class Jenx
2012-02-04 12:33:49.348 Jenx[63033:903] Could not connect the action
show_preferences_window: to target of class Jenx
2012-02-04 12:33:49.457 Jenx[63033:903] switch_to_module - mod =
#<PreferencesGeneralViewController:0x2005be7a0>
2012-02-04 12:33:49.477 Jenx[63033:903] Could not connect the action
save_preferences: to target of class PreferencesGeneralViewController
2012-02-04 12:33:49.478 Jenx[63033:903]
PreferencesGeneralViewController.load_projects - Calling all_projects -
url = "http://anunresolvablehostname.com/foobar"...
2012-02-04 12:33:49.489 Jenx[63033:903] Creating JenxConnectionManager...
2012-02-04 12:33:49.499 Jenx[63033:903] JenxConnectionManager.initialize
calling async...
2012-02-04 12:33:49.501 Jenx[63033:903] JenxConnectionManager.initialize
@value = nil
2012-02-04 12:33:49.506 Jenx[63033:903] .value waiting...
*** Dispatch block exited prematurely because of an uncaught exception:
/Users/marca/Library/Developer/Xcode/DerivedData/jenx-
gcpqjcbitzazsievjxaddpxmrtnb/Build/Products/Debug/jenx.app/Contents/Resources/JenxConnection.rb:42:in
`block': getaddrinfo: nodename nor servname provided, or not known
(SocketError)
from /Users/marca/Library/Developer/Xcode/DerivedData/jenx-
gcpqjcbitzazsievjxaddpxmrtnb/Build/Products/Debug/jenx.app/Contents/Resources/JenxConnectionManager.rb:15:in
`block'
2012-02-04 12:33:49.626 Jenx[63033:903] .value about to return @value =
nil
2012-02-04 12:33:49.627 Jenx[63033:903] 1 - connection_result.value =
2012-02-04 12:33:49.628 Jenx[63033:903] .value waiting...
2012-02-04 12:33:49.628 Jenx[63033:903] .value about to return @value =
nil
2012-02-04 12:33:49.629 Jenx[63033:903] .value waiting...
2012-02-04 12:33:49.630 Jenx[63033:903] .value about to return @value =
nil
2012-02-04 12:33:49.630 Jenx[63033:903] 2 - connection_result.value =
2012-02-04 12:33:49.631 Jenx[63033:903] .value waiting...
2012-02-04 12:33:49.631 Jenx[63033:903] .value about to return @value =
nil
2012-02-04 12:33:49.632 Jenx[63033:903]
PreferencesGeneralViewController.load_projects - Called all_projects DONE.
@all_projects = nil
RoxorVM::pop_current_exception (vm.cpp:3607) - Warning: Assertion about to
fail: ((size_t)pos < current_exceptions.size()); pos = 1;
current_exceptions.size() = 1
current_exceptions[1]: "#<NoMethodError: undefined method `[]' for
nil:NilClass>"
Assertion failed: ((size_t)pos < current_exceptions.size()), function
pop_current_exception, file vm.cpp, line 3616.
sharedlibrary apply-load-rules all
Current language: auto; currently objective-c
}}}
So most likely the crash is related to uncaught exceptions inside a Grand
Central Dispatch (GCD) queue.
--
Ticket URL: <http://www.macruby.org/trac/ticket/1447>
MacRuby <http://macruby.org/>
More information about the macruby-tickets
mailing list