Forums > MaxMSP

pattrstorage crash 'n' listsize

September 9, 2008 | 5:48 pm

hi all.

stumbled over this:

1.)
i stored a long symbol in a pattrstorage, wrote the xml to disk, and reloaded it. bang. max crashed. i played around a bit, and found out that if the symbol size is > 279 characters, max crashes…

if i open the testpatch below, and load the psto-symbol.xml file, max crashes.

ppc
os: 10.4.11
max 5.0.4
(see crash-log below)

if you open up the psto-symbol.xml file in a texteditor, you see that there is only one slot defined. if you erase the last character before the quote (this is a "9") and read the file into pattrstorage again, it works.
check the character length of the symbol in the test-patch…

2.)
i also tested lists in pattrstorage, which works fine, there is only one this. in the storage- or clientwindow, only 88 list-entries are visible, even if the list is longer…

for this open the testpatch, and load psto-list.xml.
there are 2 slots. the first slot is filled with 100 listelements, the second one, with 80…

somebody can reproduce?

here is the testpatch:

– Pasted Max Patch, click to expand. –

and the crashlog:

Date/Time: 2008-09-09 19:16:32.366 +0200
OS Version: 10.4.11 (Build 8S165)
Report Version: 4

Command: MaxMSP
Path: /Applications/Max5/MaxMSP.app/Contents/MacOS/MaxMSP
Parent: WindowServer [60]

Version: 5.0.4 (35808) (5.0.4)

PID: 935
Thread: 0

Exception: EXC_BAD_ACCESS (0×0001)
Codes: KERN_INVALID_ADDRESS (0×0001) at 0×37203938

Thread 0 Crashed:
0 com.cycling74.pattrstorage 0x197d06d4 normal_contentTok + 3912
1 com.cycling74.pattrstorage 0x197c082c doContent + 136
2 com.cycling74.pattrstorage 0x197c18a4 contentProcessor + 56
3 com.cycling74.pattrstorage 0x197c1ecc prologProcessor + 1524
4 com.cycling74.pattrstorage 0x197bcb34 XML_Parse + 300
5 com.cycling74.pattrstorage 0x197af8a0 pattrstorage_do_file_read + 632
6 com.cycling74.MaxMSP 0×00031814 defer + 132
7 com.cycling74.MaxAPI 0x019d0470 defer + 188
8 com.cycling74.MaxMSP 0x0001a9d8 typedmess_fun + 1108
9 com.cycling74.MaxMSP 0x0006340c outlet_anything + 484
10 com.cycling74.MaxMSP 0x0001a9d8 typedmess_fun + 1108
11 com.cycling74.MaxMSP 0x0001b5a0 aeval + 948
12 com.cycling74.MaxMSP 0x00006be4 atombuf_eval + 116
13 com.cycling74.MaxAPI 0x019e7554 atombuf_eval + 96
14 com.cycling74.message 0x181dc178 jmessage_atombuf_eval + 392
15 com.cycling74.message 0x181dc4a0 jmessage_bang + 108
16 com.cycling74.message 0x181dc534 jmessage_mousedown + 128
17 com.cycling74.MaxMSP 0x000abc70 object_method + 1064
18 com.cycling74.MaxMSP 0×00103790 BoxComponent::sendMouseMessage(juce::MouseEvent const&, symbol*, double, double) + 196
19 com.cycling74.MaxMSP 0×00106710 BoxComponent::mouseDown(juce::MouseEvent const&) + 212
20 com.cycling74.MaxMSP 0x002eff28 juce::Component::internalMouseDown(int, int) + 1256
21 com.cycling74.MaxMSP 0x0042b964 juce::ComponentPeer::handleMouseDown(int, int, long long) + 436
22 com.cycling74.MaxMSP 0x002b0f48 juce::HIViewComponentPeer::handleMouseEvent(OpaqueEventHandlerCallRef*, OpaqueEventRef*) + 1624
23 com.cycling74.MaxMSP 0x002b171c juce::HIViewComponentPeer::handleWindowEvent(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*) + 380
24 com.apple.HIToolbox 0x932a9934 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 692
25 com.apple.HIToolbox 0x932a908c SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*) + 372
26 com.apple.HIToolbox 0x932afe90 SendEventToEventTarget + 40
27 com.apple.HIToolbox 0x9333c230 HandleMouseEventForWindow(OpaqueWindowPtr*, OpaqueEventRef*, unsigned short) + 236
28 com.apple.HIToolbox 0x9349f3e8 HandleMouseEvent(OpaqueEventRef*) + 368
29 com.apple.HIToolbox 0x932b01fc ToolboxEventDispatcherHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*) + 496
30 com.apple.HIToolbox 0x932a9b84 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 1284
31 com.apple.HIToolbox 0x932a908c SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*) + 372
32 com.apple.HIToolbox 0x932afe90 SendEventToEventTarget + 40
33 com.cycling74.MaxMSP 0x002a7b70 juce::juce_dispatchNextMessageOnSystemQueue(bool) + 992
34 com.cycling74.MaxMSP 0x002b7cd0 juce::MessageManager::runDispatchLoop() + 128
35 com.cycling74.MaxMSP 0x002b2f3c juce::JUCEApplication::main(juce::String&, juce::JUCEApplication*) + 700
36 com.cycling74.MaxMSP 0x002b3014 juce::JUCEApplication::main(int, char**, juce::JUCEApplication*) + 100
37 com.cycling74.MaxMSP 0x0000344c _start + 760
38 com.cycling74.MaxMSP 0×00003150 start + 48

and the test xml files.
i/o


September 10, 2008 | 6:55 pm

Thanks for posting these. I can reproduce here and will pass them along.

All the best,
-Ben


January 10, 2009 | 6:12 pm

I’ve also had Max crash when attempting to examine entries in the clientwindow, or storagewindow of pattrstorage. I can scroll down to about item number 420 out of an estimated total of 500. The latter 50 or so seem to function, being stored and recalled, but can’t be examined.

pattrstorage no longer seems to autoload .xml files with names which include "#1", when a patch is built with two instances of a bpatcher containing a pattrstorage object with a name starting with "#1". This worked fine in Max 4.

Ciao,

Dave


Viewing 3 posts - 1 through 3 (of 3 total)