On Oct 8, 2011, at 10:05 PM, Quincey Morris wrote: > On Oct 8, 2011, at 14:31 , silve...@wfmh.org.pl wrote: > >> What am I doing wrong? Shouldn't the instance created using >> dataWithBytesNoCopy:length:freeWhenDone simply hold the same bytes as >> the originally provided ones?
> I'd guess that, with the 'NO' parameter, NSMutableData copies the data anyway. This is actually documented. In the Binary Data Programming Guide, in the article Working With Binary Data[1], it says: > However, if you create an NSData object with one of the methods whose name > includes NoCopy (such as dataWithBytesNoCopy:length:), the bytes are not > copied. Instead, the data object takes ownership of the bytes passed in as an > argument and frees them when the object is released. (NSMutableData responds > to these methods, too, but the bytes are copied anyway and the buffer is > freed immediately.) Cheers, Ken [1] https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/BinaryData/Tasks/WorkingBinaryData.html _______________________________________________ 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