From 11c8e832758086a88f83c8ea23526c1f5c2f775c Mon Sep 17 00:00:00 2001 From: Christian Pauly Date: Tue, 16 Aug 2022 08:03:03 +0200 Subject: [PATCH] fix: Linux crash on secure storage usage --- .../matrix_sdk_extensions.dart/fluffybox_database.dart | 8 +++++--- .../flutter_hive_collections_database.dart | 8 +++++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/lib/utils/matrix_sdk_extensions.dart/fluffybox_database.dart b/lib/utils/matrix_sdk_extensions.dart/fluffybox_database.dart index 1d966ee7c..5c15d620e 100644 --- a/lib/utils/matrix_sdk_extensions.dart/fluffybox_database.dart +++ b/lib/utils/matrix_sdk_extensions.dart/fluffybox_database.dart @@ -58,9 +58,11 @@ class FlutterFluffyBoxDatabase extends FluffyBoxDatabase { hiverCipher = fluffybox.HiveAesCipher(base64Url.decode(rawEncryptionKey)); } on MissingPluginException catch (_) { Logs().i('FluffyBox encryption is not supported on this platform'); - } catch (_) { - const FlutterSecureStorage().delete(key: _cipherStorageKey); - rethrow; + } catch (e, s) { + const FlutterSecureStorage() + .delete(key: _cipherStorageKey) + .catchError((_) {}); + Logs().w('Unable to init FluffyBox encryption', e, s); } // ignore: deprecated_member_use diff --git a/lib/utils/matrix_sdk_extensions.dart/flutter_hive_collections_database.dart b/lib/utils/matrix_sdk_extensions.dart/flutter_hive_collections_database.dart index 0f7756727..4a0171d8d 100644 --- a/lib/utils/matrix_sdk_extensions.dart/flutter_hive_collections_database.dart +++ b/lib/utils/matrix_sdk_extensions.dart/flutter_hive_collections_database.dart @@ -51,9 +51,11 @@ class FlutterHiveCollectionsDatabase extends HiveCollectionsDatabase { hiverCipher = HiveAesCipher(base64Url.decode(rawEncryptionKey)); } on MissingPluginException catch (_) { Logs().i('Hive encryption is not supported on this platform'); - } catch (_) { - const FlutterSecureStorage().delete(key: _cipherStorageKey); - rethrow; + } catch (e, s) { + const FlutterSecureStorage() + .delete(key: _cipherStorageKey) + .catchError((_) {}); + Logs().w('Unable to init Hive encryption', e, s); } final db = FlutterHiveCollectionsDatabase(