On or about 11/30/09 11:33 AM, thus spake "David Duncan"
<david.dun...@apple.com>:

> Your modifying an array that is being enumerated, which is illegal.

I thought of that, of course, but I doubted that could be the reason,
because I changed the code to look like this:

NSArray* arr = [NSArray arrayWithArray: myview.layer.sublayers];
for (CALayer* sub in arr)
   [sub removeFromSuperlayer];

and I still got the same crash. Enumerating thru arr with objectAtIndex:
causes no problem; it's the fast enumeration that's troublesome. m.

> On Nov 30, 2009, at 2:23 PM, Matt Neuburg <m...@tidbits.com> wrote:
> 
>> To remove all sublayers from a layer, it is sufficient to set that
>> layer's
>> sublayers property to nil, so this code is completely unnecessary.
>> But I'm
>> just curious as to why it doesn't work:
>> 
>> for (CALayer* sub in myview.layer.sublayers)
>>  [sub removeFromSuperlayer];
>> 
>> This crashes as if the fast enumeration itself were somehow illegal.
>> Why?
>> Thx -

-- 
matt neuburg, phd = m...@tidbits.com, http://www.tidbits.com/matt/
pantes anthropoi tou eidenai oregontai phusei
Among the 2007 MacTech Top 25, http://tinyurl.com/2rh4pf
AppleScript: the Definitive Guide, 2nd edition
http://www.tidbits.com/matt/default.html#applescriptthings
Take Control of Exploring & Customizing Snow Leopard
http://tinyurl.com/kufyy8
RubyFrontier! http://www.apeth.com/RubyFrontierDocs/default.html
TidBITS, Mac news and reviews since 1990, http://www.tidbits.com



_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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 arch...@mail-archive.com

Reply via email to