On Mar 19, 2014, at 13:52 , Greg Parker <[email protected]> wrote:

> On Mar 19, 2014, at 1:32 PM, Rick Mann <[email protected]> wrote:
>> While investigating this crash that only happens on our AppStore binary, I 
>> noticed that the executable inside the package is different (from the one we 
>> submitted). Does Apple modify that executable?
> 
> The executable is re-signed by the App Store, at the very least.

I thought the signature lived outside the binary (in 
MyApp.app/_CodeSignature)...?

> There may also be some post-processing of universal binaries (to distribute 
> thin binaries to devices or to work around bugs in universal binary handling 
> in older OS versions). I can't remember what has been used versus what has 
> merely been proposed.
> 
> You should double-check that the App Store file's UUID matches the UUID in 
> the file that you submitted. The UUID is unchanged by the App Store. If it is 
> different then you're probably looking at the wrong file on one side or the 
> other.

Yep, they match.

Anyway, the real problem is that Apple's libProtobuf.dylib is somehow calling 
back into our app's statically-linked protobuf code:

Thread 4 Crashed:
0   libc++.1.dylib                      0x3b35e2b5 std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> 
>::basic_string(std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > const&) + 5
1   MatterScan                          0x001e6961 
google::protobuf::SimpleDescriptorDatabase::DescriptorIndex<std::__1::pair<void 
const*, int> >::AddFile(google::protobuf::FileDescriptorProto const&, 
std::__1::pair<void const*, int>) + 45
2   libprotobuf.dylib                   0x3bbed247 
google::protobuf::EncodedDescriptorDatabase::Add(void const*, int) + 127
3   libprotobuf.dylib                   0x3bbcd3cd 
google::protobuf::DescriptorPool::InternalAddGeneratedFile(void const*, int) + 
73
4   libprotobuf.dylib                   0x3bbf2967 
google::protobuf::protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto() + 
143
5   libprotobuf.dylib                   0x3bc0657d _GLOBAL__I_a + 5
6   dyld                                0x2be6c59f 
ImageLoaderMachO::doModInitFunctions(ImageLoader::LinkContext const&) + 175
7   dyld                                0x2be6c6ad 
ImageLoaderMachO::doInitialization(ImageLoader::LinkContext const&) + 17
...

Others have experienced this, too:

http://stackoverflow.com/questions/19848118/weird-ios-libprotobuf-dylib-cause-crash

-- 
Rick



Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

_______________________________________________

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:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to