Browse Source
The /api/sync response serialized a Send hide_email field directly from Option<bool>, so a NULL value in the sends table (the column is Nullable<Bool> with no default) produced "hideEmail": null. The Bitwarden Android client deserializes SyncResponseJson.Send.hideEmail as a non-null Kotlin Boolean and aborts the entire sync with a JsonDecodingException when it encounters null. Web, desktop and CLI clients coerce null to false, so only accounts with at least one Send are affected and only on Android. Default None to false at the serialization boundary, matching the official Bitwarden server where hideEmail is non-nullable. This needs no database migration and fixes both legacy NULL rows and any future NULLs. The hide_email field stays Option<bool> internally.pull/7283/head
1 changed files with 1 additions and 1 deletions
Loading…
Reference in new issue