Skip to content

Recallyx 0.77

Choose a tag to compare

@github-actions github-actions released this 02 Jul 14:16
e447082

Stop unentitled builds from crashing when iCloud sync is enabled (#65)

The sync toggle ships in every build, but only the team-signed build
carries the iCloud entitlement — and it turns out an unentitled process
that loads a CloudKit-mirrored store doesn't stay inert as #61 claimed:
it hard-crashes (EXC_BREAKPOINT in CloudKit setup). Reproduced
deterministically with the ad-hoc bundle.sh build: sync on → SIGTRAP at
every launch, i.e. a DMG user who flips the toggle gets a crash loop.
This is live today for anyone whose settings already have sync enabled
and then runs an ad-hoc build.

The fix gates mirroring on the process actually holding the
com.apple.developer.icloud-services entitlement (checked once via the
Security framework). Unentitled builds now launch clean with sync
on-but-inactive plus a content-free log line, and their Settings toggle
is disabled with a caption explaining sync needs the team-signed build.
The entitled path is unchanged — verified the signed build still embeds
the entitlements and enables mirroring.

Re-verified empirically: the fixed ad-hoc build with sync enabled
launches clean where the unfixed one crashed.