GL Tools 1.4 crash in Music Visualizer

cybero's picture

Please find quoted below the resulting crash report when iTunes ducked my CLGL variation of the Arabesque screensaver as a music visualier. I am going to dive in and take a look at what I've changed to provoke this error, seems to be one of the presets alone, all others run AOK.

GLTools got mentioned in dispatches as follows :-

Process:         iTunes [1936]
Path:            /Applications/iTunes.app/Contents/MacOS/iTunes
Identifier:      com.apple.iTunes
Version:         9.0.3 (9.0.3)
Build Info:      iTunes-9031501~5
Code Type:       X86 (Native)
Parent Process:  launchd [134]
 
PlugIn Path:       /Users/cybero/Library/Graphics/Quartz Composer Patches/GLTools.plugin/Contents/MacOS/GLTools
PlugIn Identifier: net.kineme.GLTools
PlugIn Version:    1.4 (20091217.2212r6563)
 
Date/Time:       2010-02-24 12:41:20.288 +0000
OS Version:      Mac OS X 10.6.2 (10C540)
Report Version:  6
 
Interval Since Last Report:          321683 sec
Crashes Since Last Report:           58
Per-App Interval Since Last Report:  190820 sec
Per-App Crashes Since Last Report:   1
Anonymous UUID:                      1AA3AE71-8AF0-44AD-8109-9157EDB0AF38
 
Exception Type:  EXC_BAD_INSTRUCTION (SIGILL)
Exception Codes: 0x0000000000000001, 0x0000000000000000
Crashed Thread:  0  Dispatch queue: com.apple.main-thread
 
Application Specific Information:
objc[1936]: FREED(id): message retain sent to freed object=0x1de4bc30
 
Thread 0 Crashed:  Dispatch queue: com.apple.main-thread
0   libobjc.A.dylib                  0x970374b4 _objc_error + 116
1   libobjc.A.dylib                  0x970374ea __objc_error + 52
2   libobjc.A.dylib                  0x970357dc _freedHandler + 58
3   com.apple.QuartzComposer         0x968d0b48 -[QCStreamExporter_QCArray createRepresentationOfType:withProvider:withCount:elementSize:type:options:] + 1830
4   com.apple.QuartzComposer         0x968d0178 -[QCStreamManager createRepresentationFromProvider:ofType:withCount:elementSize:type:options:] + 1490
5   com.apple.QuartzComposer         0x969c7ce0 -[QCStream(QCStructure) _populateWithStream] + 301
6   com.apple.QuartzComposer         0x969c737e -[QCStream(QCStructure) memberAtIndex:] + 71
7   net.kineme.GLTools               0x1e296ebf 0x1e27c000 + 110271
8   com.apple.QuartzComposer         0x96840575 -[QCRenderingManager renderAtTime:arguments:] + 1674
9   com.apple.QuartzComposer         0x968a5a71 -[QCRenderInImage executeSubpatches:arguments:] + 118
10  com.apple.QuartzComposer         0x968a54cc -[QCRenderInImage execute:time:arguments:] + 2557
11  com.apple.QuartzComposer         0x9683f396 -[QCPatch(Private) _renderAtTime:arguments:] + 111
12  com.apple.QuartzComposer         0x9683f302 -[QCRenderingManager addPatch:context:time:arguments:nextExecutionTime:] + 2200
13  com.apple.QuartzComposer         0x9683e21f -[QCPatch(Private) __execute:arguments:] + 754
14  com.apple.QuartzComposer         0x9683deba -[QCPatch(Private) _execute:arguments:] + 1728
15  com.apple.QuartzComposer         0x9683e991 -[QCPort _execute:arguments:] + 268
16  com.apple.QuartzComposer         0x9683dd6e -[QCPatch(Private) _execute:arguments:] + 1396
17  com.apple.QuartzComposer         0x9683e991 -[QCPort _execute:arguments:] + 268
18  com.apple.QuartzComposer         0x9683dd6e -[QCPatch(Private) _execute:arguments:] + 1396
19  com.apple.QuartzComposer         0x9683e991 -[QCPort _execute:arguments:] + 268
20  com.apple.QuartzComposer         0x9685dc3d -[QCMultiplexerImagePort _execute:arguments:] + 130
21  com.apple.QuartzComposer         0x9683dd6e -[QCPatch(Private) _execute:arguments:] + 1396
22  com.apple.QuartzComposer         0x9683e991 -[QCPort _execute:arguments:] + 268
23  com.apple.QuartzComposer         0x9683dd6e -[QCPatch(Private) _execute:arguments:] + 1396
24  com.apple.QuartzComposer         0x9683e7ac -[QCPatch(Private) _executeSubpatches:arguments:] + 243
25  com.apple.QuartzComposer         0x9683e5e1 -[QCPatch(Customization) nextExecutionTimeForSubpatches:time:arguments:] + 192
26  com.apple.QuartzComposer         0x9683e4e9 -[QCPatch(Customization) nextExecutionTime:time:arguments:] + 81
27  com.apple.QuartzComposer         0x9683e443 -[QCPatch(Private) _nextExecutionTime:arguments:] + 461
28  com.apple.QuartzComposer         0x9683e18f -[QCPatch(Private) __execute:arguments:] + 610
29  com.apple.QuartzComposer         0x9683deba -[QCPatch(Private) _execute:arguments:] + 1728
30  com.apple.QuartzComposer         0x9683e7ac -[QCPatch(Private) _executeSubpatches:arguments:] + 243
31  com.apple.QuartzComposer         0x9683e5e1 -[QCPatch(Customization) nextExecutionTimeForSubpatches:time:arguments:] + 192
32  com.apple.QuartzComposer         0x9683e4e9 -[QCPatch(Customization) nextExecutionTime:time:arguments:] + 81
33  com.apple.QuartzComposer         0x9683e443 -[QCPatch(Private) _nextExecutionTime:arguments:] + 461
34  com.apple.QuartzComposer         0x9683e1d7 -[QCPatch(Private) __execute:arguments:] + 682
35  com.apple.QuartzComposer         0x9683deba -[QCPatch(Private) _execute:arguments:] + 1728
36  com.apple.QuartzComposer         0x9683c4ba -[QCContext nextExecutionTimeForPatch:time:arguments:] + 643
37  com.apple.QuartzComposer         0x9683c231 -[QCGraphicsContext nextExecutionTimeForPatch:time:arguments:] + 73
38  com.apple.QuartzComposer         0x9683c00b -[QCOpenGLContext nextExecutionTimeForPatch:time:arguments:] + 528
39  com.apple.QuartzComposer         0x9683bde8 -[QCPatch(Runtime) nextExecutionTime:arguments:] + 92
40  ...QuartzComposer.iTunesPlugIn   0x188ead89 iTunesPluginMainMachO + 9304
41  ...QuartzComposer.iTunesPlugIn   0x188eb210 iTunesPluginMainMachO + 10463

I will try to reproduce the CLGL related problem in a simpler composition that does not redistribute Apple's own code, as is personally and privately the case on my machine at present.

First sigill of this year BTW :-) .

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

smokris's picture
Re: GL Tools 1.4 crash in Music Visualizer

Well, then, happy new year!

Which GLTools patch(es) are you using which have structure inputs? What are you feeding to the structure inputs? (The crash seems to be happening when GLTools attempts to dereference an input structure value.)

cybero's picture
Re: GL Tools 1.4 crash in Music Visualizer

Thanks for the response.

Arabesque does have a Macro that generates a circle. Within that macro I have placed -

Cube Structure Point Structure Line Structure Quad Structure * 2

These are fed a mesh generated by using a slightly modified version of the Structure to Mesh macro found in the SL Aurora code sample.

The Structure to Mesh is fed a queue of audio Peak data, as this type of audio data works less prone to crashing than using the straight Spectrum queue, even if smoothed by scripting.

Find attached both the composition in question with a multiplexer -arrow key up to change Mesh input and without a multiplexer.

0 sends the Structure to Mesh, 1 sends the Mesh Jiggle version.

It seems the Structure to Mesh being fed straight through causes the problems.

PreviewAttachmentSize
ArabesqueCLGLCombo.qtz178.61 KB
ArabesqueCLGL3.qtz177.83 KB

smokris's picture
Re: GL Tools 1.4 crash in Music Visualizer

Hmm, both of those compositions work just fine using GLTools-1.4 on my system. And the composition is huge so it's going to be difficult to narrow it down, especially since I can't reproduce the issue.

Can you build a simple composition that triggers this crash?

So far I've tested GLTools using both imported meshes and generated meshes (generated using the Mesh Creator patch, like Arabesque does), and haven't experienced crashes or other unexpected behavior.

cybero's picture
Re: GL Tools 1.4 crash in Music Visualizer

Simpler composition is in process, but thus far I can't reproduce the crash that the non-filtered Mesh variant previously posted produces for me.