Found something interesting. If I simply set the capacity to "length" instead of 0, then it runs without crashing. Could this be a bug in CFData?
int main(int argc, const char * argv[]) { CFIndex length = (1ULL << 30); fprintf(stderr, "length = %ld\n",length); CFMutableDataRef data = CFDataCreateMutable(kCFAllocatorDefault, length); CFDataSetLength(data, length); } - Philip On Mar 21, 2012, at 10:26 PM, Jens Alfke wrote: > > On Mar 21, 2012, at 6:00 PM, Grandinetti Philip wrote: > >> it crashes with the error message below: >> >> length = 1073741824 >> test(2463) malloc: *** mmap(size=18446744071562067968) failed (error code=12) > > That is bizarre — it happens to me too. > > 18446744071562067968 = 0xffffffff80000000 … so it’s as though something > doubled the length parameter, then sign-extended it to 64 bits, before > passing it to malloc. Why, I have no idea. > > —Jens _______________________________________________ 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: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com