Re: NSData, CFData maximum length question

2012-03-21 Thread Ben Gollmer
On Mar 22, 2012, at 2:12 AM, Seth Willits wrote: > On Mar 21, 2012, at 10:49 PM, Seth Willits wrote: > >> On Mar 21, 2012, at 6:00 PM, Grandinetti Philip wrote: >> >>> I am confused about different behavior I'm seeing with CFData and NSData. >>> If I create a new project in XCode 4.3.1 as a

Re: NSData, CFData maximum length question

2012-03-21 Thread Wade Tregaskis
> I'm not sure what [NSMutableData dataWithCapacity:0] does, but it's not a > simple call to CFDataCreateMutable(kCFAllocatorDefault, 0) which is why it > behaves differently as well. It probably ignores the specified capacity, for a start. NSMutableDictionary does for its equivalent method, a

Re: NSData, CFData maximum length question

2012-03-21 Thread Seth Willits
On Mar 21, 2012, at 10:49 PM, Seth Willits wrote: > On Mar 21, 2012, at 6:00 PM, Grandinetti Philip wrote: > >> I am confused about different behavior I'm seeing with CFData and NSData. >> If I create a new project in XCode 4.3.1 as a Core Foundation command line >> tool, and enter the code

Re: NSData, CFData maximum length question

2012-03-21 Thread Seth Willits
On Mar 21, 2012, at 6:00 PM, Grandinetti Philip wrote: > I am confused about different behavior I'm seeing with CFData and NSData. > If I create a new project in XCode 4.3.1 as a Core Foundation command line > tool, and enter the code below… You've triggered a bug! And it took me a long tim

Re: NSData, CFData maximum length question

2012-03-21 Thread Grandinetti Philip
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 dat

Re: NSData, CFData maximum length question

2012-03-21 Thread Jens Alfke
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 = 0x8000 … so it’s