[java-dev] Crash Report: call outlet() with an invalid outlet index
topher lafata
topher at topher.com
Wed Feb 13 10:01:52 MST 2008
- Previous message: [java-dev] Crash Report: call outlet() with an invalid outlet index
- Next message: [java-dev] Re: Crash Report: call outlet() with an invalid outlet index
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
The thinking with this is that checking automatically if your outlet
index is in range everytime adds overhead to the outlet call.
If you wanted to subclass MaxObject with outletSafe it would be
pretty trivial. We don't want to force the checking on someone
who may not want it to happen every outlet call.
t
On Feb 11, 2008, at 22:56 PM, Adam Murray wrote:
>
> I know it should be the responsibility of my Max object to check
> outlet indexes, but I just got burned by this *again* so here we go...
>
>
> Steps to Reproduce:
>
> 1. Build this MXJ max object:
> import com.cycling74.max.MaxObject;
> public class crash extends MaxObject {
> public void bang() {
> outlet(2, "goodbye");
> }
> }
>
> 2. Create this patch:
> #P button 93 63 15 0;
> #P newex 93 88 56 196617 mxj crash;
> #P connect 1 0 0 0;
>
> 3. Click the button. Max crashes.
>
>
> Expected behavior:
> Do not crash! Print an error to the Max window indicating an
> invalid outlet index was used.
>
>
> Crash Log:
>
> Process: MaxMSP [338]
> Path: /Applications/MaxMSP 4.6/MaxMSP.app/Contents/MacOS/
> MaxMSP
> Identifier: com.cycling74.MaxMSP46
> Version: ??? (4.6.3)
> Code Type: X86 (Native)
> Parent Process: launchd [74]
>
> Date/Time: 2008-02-11 22:52:52.218 -0800
> OS Version: Mac OS X 10.5.1 (9B21)
> Report Version: 6
>
> Exception Type: EXC_BAD_ACCESS (SIGSEGV)
> Exception Codes: KERN_INVALID_ADDRESS at 0x0000000050dd9a05
> Crashed Thread: 0
>
> Application Specific Information:
>
> Java information:
> Version: Java HotSpot(TM) Client VM (1.5.0_13-119 mixed mode)
> Virtual Machine version: Java HotSpot(TM) Client VM (1.5.0_13-119)
> for macosx-x86, built on Sep 28 2007 23:59:21 by root with gcc
> 4.0.1 (Apple Inc. build 5465)
> Exception type: Bus Error (0xa) at pc=0x0002ff41
>
> Current thread (0x17f014d0): JavaThread "AWT-
> AppKit" [_thread_in_native, id=-1602322592]
> Stack: [0xbf800000,0xc0000000)
> Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
> j com.cycling74.max.MaxObject.doOutlet(ILjava/lang/String;[Lcom/
> cycling74/max/Atom;)Z+0
> j com.cycling74.max.MaxObject.outlet(ILjava/lang/String;[Lcom/
> cycling74/max/Atom;)Z+49
> j com.cycling74.max.MaxObject.outlet(ILjava/lang/String;)Z+6
> j crash.bang()V+4
> v ~StubRoutines::call_stub
> Java Threads: ( => current thread )
> 0x17f0ebb0 JavaThread "AWT-Shutdown" [_thread_blocked, id=17867264]
> 0x17f0b8b0 JavaThread "Low Memory Detector" daemon
> [_thread_blocked, id=17573888]
> 0x17f0ae80 JavaThread "CompilerThread0" daemon [_thread_blocked,
> id=17570304]
> 0x17f0a930 JavaThread "Signal Dispatcher" daemon
> [_thread_blocked, id=17566720]
> 0x17f0a670 JavaThread "Surrogate Locker Thread (CMS)" daemon
> [_thread_blocked, id=17560064]
> 0x17f09d80 JavaThread "Finalizer" daemon [_thread_blocked,
> id=17556480]
> 0x17f09980 JavaThread "Reference Handler" daemon
> [_thread_blocked, id=17550336]
> =>0x17f014d0 JavaThread "AWT-AppKit" [_thread_in_native,
> id=-1602322592]
> Other Threads:
> 0x17f090d0 VMThread [id=17476608]
> 0x17f0c550 WatcherThread [id=17577472]
>
> VM state:not at safepoint (normal execution)
> VM Mutex/Monitor currently owned by a thread: None
>
> Heap
> par new generation total 4032K, used 1134K [0x1c3e0000,
> 0x1c7e0000, 0x1cbe0000)
> eden space 3968K, 28% used [0x1c3e0000, 0x1c4fbac0, 0x1c7c0000)
> from space 64K, 0% used [0x1c7c0000, 0x1c7c0000, 0x1c7d0000)
> to space 64K, 0% used [0x1c7d0000, 0x1c7d0000, 0x1c7e0000)
> concurrent mark-sweep generation total 61440K, used 0K
> [0x1cbe0000, 0x207e0000, 0x2c3e0000)
> concurrent-mark-sweep perm gen total 8192K, used 2772K
> [0x2c3e0000, 0x2cbe0000, 0x303e0000)
>
> Virtual Machine arguments:
> JVM args: -Xincgc -Xms64m -Xmx256m
> Java command: <unknown>
> launcher type: generic
>
> Thread 0 Crashed:
> 0 com.cycling74.MaxMSP46 0x0002ff41 typedmess_lookup + 9
> (message.c:405)
> 1 com.cycling74.MaxMSP46 0x000e854f outlet_anything + 301
> (inletoutlet.c:968)
> 2 com.cycling74.MaxAPI 0x00e665b9 outlet_anything + 59
> 3 com.cycling74.mxj 0x1797b16e mxj_outlet_anything +
> 139
> 4 ??? 0x1a3679b1 0 + 439777713
> 5 ??? 0x1a361b2b 0 + 439753515
> 6 ??? 0x1a361b2b 0 + 439753515
> 7 ??? 0x1a361b2b 0 + 439753515
> 8 ??? 0x1a35f227 0 + 439743015
> 9 libjvm.dylib 0x17b9e63a 0x17a85000 + 1152570
> 10 libjvm.dylib 0x17b9e356 0x17a85000 + 1151830
> 11 libjvm.dylib 0x17b2868c 0x17a85000 + 669324
> 12 libjvm.dylib 0x17c954fa JNI_CreateJavaVM_Impl
> + 106170
> 13 com.cycling74.mxj 0x1796eb22 maxjava_bang + 73
> 14 com.cycling74.MaxMSP46 0x000e7af3 outlet_bang + 283
> (inletoutlet.c:657)
> 15 com.cycling74.MaxMSP46 0x00075eb5 vbutton_click
> (vbutton*, Point) + 35 (button.c:179)
> 16 com.cycling74.MaxMSP46 0x0000fbe8 box_click + 148
> (box.c:123)
> 17 com.cycling74.MaxMSP46 0x000363b4 patcher_boxclick +
> 436 (patcher.c:2175)
> 18 com.cycling74.MaxMSP46 0x000382a1 patcher_click + 1195
> (patcher.c:2424)
> 19 com.cycling74.MaxMSP46 0x0006a7c5 wind_click + 143
> (window.c:1118)
> 20 com.cycling74.MaxMSP46 0x0006f880 wind_event + 394
> (window.c:818)
> 21 com.cycling74.MaxMSP46 0x0002807d app_eventhandler
> (OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*) + 1273 (main.c:
> 1658)
> 22 com.apple.HIToolbox 0x95a0e863
> DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*,
> HandlerCallRec*) + 1181
> 23 com.apple.HIToolbox 0x95a0dc9d
> SendEventToEventTargetInternal(OpaqueEventRef*,
> OpaqueEventTargetRef*, HandlerCallRec*) + 405
> 24 com.apple.HIToolbox 0x95a2a08e
> SendEventToEventTarget + 52
> 25 com.apple.HIToolbox 0x95a3cb73
> ToolboxEventDispatcherHandler(OpaqueEventHandlerCallRef*,
> OpaqueEventRef*, void*) + 1211
> 26 com.apple.HIToolbox 0x95a0ec1c
> DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*,
> HandlerCallRec*) + 2134
> 27 com.apple.HIToolbox 0x95a0dc9d
> SendEventToEventTargetInternal(OpaqueEventRef*,
> OpaqueEventTargetRef*, HandlerCallRec*) + 405
> 28 com.apple.HIToolbox 0x95a2a08e
> SendEventToEventTarget + 52
> 29 com.apple.HIToolbox 0x95a97444
> ToolboxEventDispatcher + 86
> 30 com.apple.HIToolbox 0x95a93c9e
> RunApplicationEventLoop + 222
> 31 com.cycling74.MaxMSP46 0x00027854 app_run + 52 (main.c:
> 1519)
> 32 com.cycling74.MaxMSP46 0x00027afe main + 680 (main.c:416)
> 33 com.cycling74.MaxMSP46 0x00002ba2 _start + 216
> 34 com.cycling74.MaxMSP46 0x00002ac9 start + 41
>
> [other threads omitted]
> --
> Adam Murray
> compusition.com
> _______________________________________________
> java-dev mailing list
> java-dev at cycling74.com
> http://www.cycling74.com/mailman/listinfo/java-dev
- Previous message: [java-dev] Crash Report: call outlet() with an invalid outlet index
- Next message: [java-dev] Re: Crash Report: call outlet() with an invalid outlet index
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
