My app crashed on launch on M1 without Rosetta with the LSArchitecturePriority key in my Info.plist with x86_64 first. Even with arm64 second.
The error looked like:
The application cannot be opened for an unexpected reason, error=Error Domain=NSOSStatusErrorDomain Code=-10669 "(null)" UserInfo={_LSLine=4047, _LSFunction=_LSOpenStuffCallLocal}
Switching arm64 to first place resolved the issue on M1, but that feels a bit weird. I noticed that very few other apps have the LSArchitecturePriority key in their Info.plist, so I tried removing <arch.../> from my AppBundler task configuration and everything works just fine.
However the LSArchitecturePriority key is still in my Info.plist, albeit an empty array, so this PR removes it if empty.
There is probably room to apply the same logic to other things like environment, and options, just to be tidy. I think that might make sense as part of this PR if you welcome this change. Let me know and I'll do it.
My app crashed on launch on M1 without Rosetta with the
LSArchitecturePriority
key in myInfo.plist
withx86_64
first. Even witharm64
second.The error looked like:
Switching
arm64
to first place resolved the issue on M1, but that feels a bit weird. I noticed that very few other apps have theLSArchitecturePriority
key in theirInfo.plist
, so I tried removing<arch.../>
from my AppBundler task configuration and everything works just fine.However the
LSArchitecturePriority
key is still in myInfo.plist
, albeit an empty array, so this PR removes it if empty.There is probably room to apply the same logic to other things like environment, and options, just to be tidy. I think that might make sense as part of this PR if you welcome this change. Let me know and I'll do it.