On Mar 1, 2010, at 11:17 AM, [email protected] wrote: > > On 1 Mar 2010, at 16:03, Martin Hewitson wrote: > >> Dear list, >> >> I have developed an app on SL but at all times compiled the app for 10.5. >> Today I got my hands on a leopard test machine to try out the app, and I get >> crashes due to various things. Some of these I've fixed, but I'm stuck at >> this one: >> >> Part of the app has an NSTableView filled with strings. I am able to drag >> these strings from this 'library of strings' to another NSTextView. This all >> works find on SL, but on Leopard it sends the app either in to spinning >> beachball mode or it crashes. In the spinning beachball case I have to >> 'force quit' the app, and then I get a very long report which I can't >> extract any useful information from. The 'crash' actually happens before I >> reach a dragging destination, so it must be something at the source end. >> When the app crashes (rather than beachballs) I get the following (extract) >> crash report: >> >> Thread 0 Crashed: >> 0 com.apple.CoreFoundation 0x00007fff8068e24f >> CFDictionaryRemoveValue + 63 >> 1 com.apple.AppKit 0x00007fff80f3cec8 -[NSPasteboard >> setData:forType:] + 211 >> 2 com.apple.AppKit 0x00007fff80f3cdcf -[NSPasteboard >> setString:forType:] + 122 >> 3 com.mhsoft.TeXnicle 0x0000000100015d7c -[LibraryController >> tableView:writeRowsWithIndexes:toPasteboard:] + 651 >> 4 com.apple.AppKit 0x00007fff80ddda72 -[NSTableView >> _performDragFromMouseDown:] + 651 >> 5 com.apple.AppKit 0x00007fff80ddbbf8 -[NSTableView >> mouseDown:] + 653 >> 6 com.apple.AppKit 0x00007fff80d93783 -[NSWindow >> sendEvent:] + 5068 >> 7 com.apple.AppKit 0x00007fff80d60d46 -[NSApplication >> sendEvent:] + 5089 >> 8 com.apple.AppKit 0x00007fff80cbb562 -[NSApplication run] >> + 497 >> 9 com.apple.AppKit 0x00007fff80c882f0 NSApplicationMain + >> 373 >> 10 com.mhsoft.TeXnicle 0x0000000100005d40 main + 33 >> 11 com.mhsoft.TeXnicle 0x00000001000017c0 start + 52 >> >> >> Here's the bit of code that writes the string to the pasteboard: >> >> - (BOOL)tableView:(NSTableView *)aTableView >> writeRowsWithIndexes:(NSIndexSet *)rowIndexes >> toPasteboard:(NSPasteboard*)pboard >> { >> if (aTableView == itemsTable) { >> >> NSArray *items = [[contentsController arrangedObjects] >> objectsAtIndexes:rowIndexes]; >> NSMutableArray *strings = [NSMutableArray array]; >> for (NSDictionary *item in items) { >> [strings addObject:[item valueForKey:@"Code"]]; >> } >> // id str = [[strings componentsJoinedByString:@"\n"] retain]; >> id str = [strings componentsJoinedByString:@"\n"]; >> NSLog(@"Writing to pboard: %@", str); >> return [pboard setString:str forType:NSStringPboardType]; >> } >> >> return NO; >> } >> > Try preparing the pasteboard first with either of the following: > > - (NSInteger)clearContents
looks like this is the available only on SL. how to clear a pasteboard in Leopard ? > - (NSInteger)declareTypes:(NSArray *)newTypes owner:(id)newOwner ownership could be a reason, the attempt to write to pasteboard is failing. > > Regards > > Jonathan Mitchell > > Developer > http://www.mugginsoft.com > >> At one point I became unsure about the autoreleased string I create by >> 'componentsJoinedByString:' and if the pasteboard retains that or now, but I >> tested retaining and not, and it doesn't change anything. Can anyone see any >> obvious error? >> >> More info: this can really screw up the system pasteboard because sometimes >> after this crash I can no longer drag-n-drop text in any app and need to >> reboot to get things working again! >> >> I'm hoping to avoid setting up a build environment on the Leopard machine, >> but maybe that's a little optimistic. >> >> Any advice gratefully received. >> >> I'd gladly send the app to anyone interested in running it. >> >> The SL working version can be found at: >> http://web.me.com/martinhewitson/BOBsoft/TeXnicle.html >> >> Thanks in advance, >> >> Martin >> >> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> Martin Hewitson >> Albert-Einstein-Institut >> Max-Planck-Institut fuer >> Gravitationsphysik und Universitaet Hannover >> Callinstr. 38, 30167 Hannover, Germany >> Tel: +49-511-762-17121, Fax: +49-511-762-5861 >> E-Mail: [email protected] >> WWW: http://www.aei.mpg.de/~hewitson >> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> >> >> >> >> >> _______________________________________________ >> >> Cocoa-dev mailing list ([email protected]) >> >> Please do not post admin requests or moderator comments to the list. >> Contact the moderators at cocoa-dev-admins(at)lists.apple.com >> >> Help/Unsubscribe/Update your Subscription: >> http://lists.apple.com/mailman/options/cocoa-dev/jonathan%40mugginsoft.com >> >> This email sent to [email protected] > > _______________________________________________ > > Cocoa-dev mailing list ([email protected]) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > http://lists.apple.com/mailman/options/cocoa-dev/karthikreddy09%40gmail.com > > This email sent to [email protected] _______________________________________________ Cocoa-dev mailing list ([email protected]) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [email protected]
