[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sc-dev] another switch() crash




switch works on identity not equality, so using strings won't work.
of course it should not crash.
using symbols works fine.

On Jan 11, 2006, at 7:47 PM, James Harkins wrote:

Run this, watch sc twitch and die.

http://www.newscores.com/scforum/index.php?topic=25.0

(
{ |type, index, function| var theController;
	 switch (type,
              // check for 'type'
                     "transport", {
                                       // assign correct CC number
                                    theController= CCResponder(
                                               function,
num: index + 1 // the controller to match
                                        );
                                },
                        "knob", {
                                       // assign correct CC number
                                    theController= CCResponder(
                                               function,
num: index + 23 // the controller to match
                                        );
                                },
                        "buttonA", {
                                       // assign correct CC number
                                    theController= CCResponder(
                                               function,
num: index + 31 // the controller to match
                                        );
                                },
                        "rotary", {
                                       // assign correct CC number
                                    theController= CCResponder(
                                               function,
num: index + 39 // the controller to match
                                        );
                                },
                        "buttonB", {
                                       // assign correct CC number
                                    theController= CCResponder(
                                               function,
num: index + 47 // the controller to match
                                        );
                                },
                        "slider", {
                                       // assign correct CC number
                                    theController= CCResponder(
                                               function,
num: index + 55 // the controller to match
                                        );
                                },
                        "buttonC", {
                                       // assign correct CC number
                                    theController= CCResponder(
                                               function,
num: index + 63 // the controller to match
                                        );
                                },
                        "xyPad", {
                                       // assign correct CC number
                                    theController= CCResponder(
                                               function,
num: index + 71 // the controller to match
                                        );
                                }
                );
}.value("buttonC", 1, { 0 });
)

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_PROTECTION_FAILURE (0x0002) at 0x0000000c

Thread 0 Crashed:
0 ??? 0x000498e8 Interpret(VMGlobals*) + 0x3cd4 (PyrInterpreter3.cpp:2184) 1 ??? 0x00045350 runInterpreter + 0x34 (PyrInterpreter3.cpp:132) 2 ??? 0x0004e468 runLibrary + 0x64 (PyrLexer.cpp:2273) 3 ??? 0x0001366c -[MyDocument sendSelection:] + 0xd0 (MyDocument.M:822) 4 ??? 0x00018828 -[SCTextView keyDown:] + 0x290 (SCTextView.M:183)
5   com.apple.AppKit     	0x92eb2c90 -[NSWindow sendEvent:] + 0x1780
6 com.apple.AppKit 0x92ea4ca0 -[NSApplication sendEvent:] + 0xebc
7   com.apple.AppKit     	0x92ead0d0 -[NSApplication run] + 0x240
8   com.apple.AppKit     	0x92f697bc NSApplicationMain + 0x1d0
9   ???                  	0x000030d0 _start + 0x188 (crt.c:267)
10  dyld                 	0x8fe1a278 _dyld_start + 0x64

Thread 1:
0   libSystem.B.dylib    	0x9628c76c recvfrom + 0xc
1 ??? 0x00081698 SC_UdpInPort::Run() + 0x5c (SC_ComPort.cpp:307)
2   libSystem.B.dylib    	0x962a3990 _pthread_body + 0x28

Thread 2:
0   libSystem.B.dylib    	0x96291808 clock_sleep_trap + 0x8
1   libSystem.B.dylib    	0x9628c9f8 nanosleep + 0x78
2   libSystem.B.dylib    	0x962aca2c sleep + 0x4c
3 ??? 0x00073d70 resyncThread(void*) + 0x3c (PyrSched.cpp:378)
4   libSystem.B.dylib    	0x962a3990 _pthread_body + 0x28

Thread 3:
0   libSystem.B.dylib    	0x96296238 semaphore_wait_signal_trap + 0x8
1   libSystem.B.dylib    	0x9628da1c _pthread_cond_wait + 0x270
2 ??? 0x000747fc TempoClock::Run() + 0x84 (PyrSched.cpp:830)
3   libSystem.B.dylib    	0x962a3990 _pthread_body + 0x28

Thread 4:
0   libSystem.B.dylib    	0x96296238 semaphore_wait_signal_trap + 0x8
1   libSystem.B.dylib    	0x9628da1c _pthread_cond_wait + 0x270
2 ??? 0x00073e38 schedRunFunc(void*) + 0x94 (PyrSched.cpp:404)
3   libSystem.B.dylib    	0x962a3990 _pthread_body + 0x28

Thread 5:
0   libSystem.B.dylib    	0x96296238 semaphore_wait_signal_trap + 0x8
1   libSystem.B.dylib    	0x9628da1c _pthread_cond_wait + 0x270
2 com.apple.Foundation 0x973a15f0 -[NSConditionLock lockWhenCondition:] + 0x44 3 com.apple.AppKit 0x92e7a14c -[NSUIHeartBeat _heartBeatThread:] + 0x190
4   com.apple.Foundation 	0x9738f510 forkThreadForFunction + 0x6c
5   libSystem.B.dylib    	0x962a3990 _pthread_body + 0x28

PPC Thread State:
  srr0: 0x000498e8 srr1: 0x0200f030                vrsave: 0x00000000
    cr: 0x24022424  xer: 0x20000007   lr: 0x000461e4  ctr: 0x00046544
    r0: 0x04ca2990   r1: 0xbfffef10   r2: 0x7ff90001   r3: 0x00000011
    r4: 0x00000000   r5: 0x003aa926   r6: 0x05fb2c62   r7: 0x00000011
    r8: 0x000008c4   r9: 0x0538a680  r10: 0x05fb2c65  r11: 0x00040000
   r12: 0x05fb2c62  r13: 0x0016a208  r14: 0x000003c8  r15: 0x00150000
   r16: 0x00000088  r17: 0x000004c5  r18: 0x00150000  r19: 0x00150000
   r20: 0x00000000  r21: 0x7ff90001  r22: 0x7ff90005  r23: 0x7ff90000
   r24: 0x059e0a70  r25: 0x00000002  r26: 0x00000000  r27: 0x7ff90000
   r28: 0x05f5fb90  r29: 0x0538a688  r30: 0x04ca2990  r31: 0x053f5158


: H. James Harkins
: jamshark70@xxxxxxxxxxxxxxxxx
: http://www.dewdrop-world.net
.::!:.:.......:.::........:..!.::.::...:..:...:.:.:.:..:

"Come said the Muse,
Sing me a song no poet has yet chanted,
Sing me the universal."  -- Whitman

_______________________________________________
sc-dev mailing list
sc-dev@xxxxxxxxxxxxxxx
http://www.create.ucsb.edu/mailman/listinfo/sc-dev