[cloud_firestore,firebase_database,firebase_storage] handling error = nil on getFlutterError (#1274) When `getFlutterError` was introduced(https://github.com/flutter/plugins/pull/1226), some plugins started to throw exceptions for successful operations. This fixed the issue. Related issues include flutter/flutter#28344; flutter/flutter#28065; flutter/flutter#28103 It also fixed an unintentional typo introduced in the same PR.(https://github.com/flutter/plugins/pull/1226)
diff --git a/packages/cloud_firestore/CHANGELOG.md b/packages/cloud_firestore/CHANGELOG.md index 7b5e33f..153ba08 100644 --- a/packages/cloud_firestore/CHANGELOG.md +++ b/packages/cloud_firestore/CHANGELOG.md
@@ -1,3 +1,7 @@ +## 0.9.5+2 + +* Fixing PlatformException(Error 0, null, null) which happened when a successful operation was performed. + ## 0.9.5+1 * Log messages about automatic configuration of the default app are now less confusing.
diff --git a/packages/cloud_firestore/ios/Classes/CloudFirestorePlugin.m b/packages/cloud_firestore/ios/Classes/CloudFirestorePlugin.m index ca56ec3..6a4850c 100644 --- a/packages/cloud_firestore/ios/Classes/CloudFirestorePlugin.m +++ b/packages/cloud_firestore/ios/Classes/CloudFirestorePlugin.m
@@ -7,7 +7,9 @@ #import <Firebase/Firebase.h> static FlutterError *getFlutterError(NSError *error) { - return [FlutterError errorWithCode:[NSString stringWithFormat:@"Error %d", (int)error.code] + if (error == nil) return nil; + + return [FlutterError errorWithCode:[NSString stringWithFormat:@"Error %ld", error.code] message:error.domain details:error.localizedDescription]; }
diff --git a/packages/cloud_firestore/pubspec.yaml b/packages/cloud_firestore/pubspec.yaml index c95162a..9875d6d 100755 --- a/packages/cloud_firestore/pubspec.yaml +++ b/packages/cloud_firestore/pubspec.yaml
@@ -3,7 +3,7 @@ live synchronization and offline support on Android and iOS. author: Flutter Team <flutter-dev@googlegroups.com> homepage: https://github.com/flutter/plugins/tree/master/packages/cloud_firestore -version: 0.9.5+1 +version: 0.9.5+2 flutter: plugin:
diff --git a/packages/firebase_database/CHANGELOG.md b/packages/firebase_database/CHANGELOG.md index 4b6b090..50178e9 100644 --- a/packages/firebase_database/CHANGELOG.md +++ b/packages/firebase_database/CHANGELOG.md
@@ -1,3 +1,7 @@ +## 2.0.1+3 + +* Fixing DatabaseReference.set unhandled exception which happened when a successful operation was performed. + ## 2.0.1+2 * Log messages about automatic configuration of the default app are now less confusing.
diff --git a/packages/firebase_database/ios/Classes/FirebaseDatabasePlugin.m b/packages/firebase_database/ios/Classes/FirebaseDatabasePlugin.m index b375a44..e9b09cb 100644 --- a/packages/firebase_database/ios/Classes/FirebaseDatabasePlugin.m +++ b/packages/firebase_database/ios/Classes/FirebaseDatabasePlugin.m
@@ -7,7 +7,9 @@ #import <Firebase/Firebase.h> static FlutterError *getFlutterError(NSError *error) { - return [FlutterError errorWithCode:[NSString stringWithFormat:@"Error %d", (int)error.code] + if (error == nil) return nil; + + return [FlutterError errorWithCode:[NSString stringWithFormat:@"Error %ld", error.code] message:error.domain details:error.localizedDescription]; }
diff --git a/packages/firebase_database/pubspec.yaml b/packages/firebase_database/pubspec.yaml index f0c1dbc..f5189b7 100755 --- a/packages/firebase_database/pubspec.yaml +++ b/packages/firebase_database/pubspec.yaml
@@ -3,7 +3,7 @@ with realtime data syncing across Android and iOS clients, and offline access. author: Flutter Team <flutter-dev@googlegroups.com> homepage: https://github.com/flutter/plugins/tree/master/packages/firebase_database -version: 2.0.1+1 +version: 2.0.1+3 flutter: plugin:
diff --git a/packages/firebase_storage/CHANGELOG.md b/packages/firebase_storage/CHANGELOG.md index 9d16936..822a74b 100644 --- a/packages/firebase_storage/CHANGELOG.md +++ b/packages/firebase_storage/CHANGELOG.md
@@ -1,3 +1,7 @@ +## 2.1.0+1 + +* Reverting error.code casting/formatting to what it was until version 2.0.1. + ## 2.1.0 * Added support for getReferenceFromUrl.
diff --git a/packages/firebase_storage/ios/Classes/FirebaseStoragePlugin.m b/packages/firebase_storage/ios/Classes/FirebaseStoragePlugin.m index 70027ed..ced82f7 100644 --- a/packages/firebase_storage/ios/Classes/FirebaseStoragePlugin.m +++ b/packages/firebase_storage/ios/Classes/FirebaseStoragePlugin.m
@@ -7,7 +7,7 @@ #import <Firebase/Firebase.h> static FlutterError *getFlutterError(NSError *error) { - return [FlutterError errorWithCode:[NSString stringWithFormat:@"Error %d", (int)error.code] + return [FlutterError errorWithCode:[NSString stringWithFormat:@"Error %ld", (long)error.code] message:error.domain details:error.localizedDescription]; }
diff --git a/packages/firebase_storage/pubspec.yaml b/packages/firebase_storage/pubspec.yaml index 9216639..6bca906 100755 --- a/packages/firebase_storage/pubspec.yaml +++ b/packages/firebase_storage/pubspec.yaml
@@ -3,7 +3,7 @@ cost-effective object storage service for Android and iOS. author: Flutter Team <flutter-dev@googlegroups.com> homepage: https://github.com/flutter/plugins/tree/master/packages/firebase_storage -version: 2.1.0 +version: 2.1.0+1 flutter: plugin: