-
Notifications
You must be signed in to change notification settings - Fork 267
Miscellaneous Fixes #370
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Miscellaneous Fixes #370
Conversation
• Fixes an issue where the download method for attachments wasn't correctly implemented with a double pointer. It accepted NSError as a parameter, but because this pointer gets copied, any new assignments will apply to the copied pointer, not the original. • Fixes an issue in setEmail() where the failure block was being called without verifying that it is nonnull, which could cause crashes. • Cleans up the notificationReceived() method, which created a string (actionSelected) but doesn't use it.
|
Reviewed 2 of 2 files at r1. Comments from Reviewable |
|
Are the tests flakey here is this something that broke in this commit? Review status: 0 of 2 files reviewed at latest revision, all discussions resolved, some commit checks failed. Comments from Reviewable |
• A recent bug fix changed the signature of a helper method to synchronously download files • Fixes the method signature so the swizzled test override method works and doesn't crash the test
|
Reviewed 2 of 2 files at r1, 1 of 1 files at r2. Comments from Reviewable |
* Fix HTTP Race Condition (OneSignal#372) * Fix HTTP Concurrency • Fixes a relatively rare issue that would be encountered if the SDK attempted to make concurrent HTTP requests during an invalid situation, such as after the user has revoked GDPR consent • The SDK was previously using a semaphore to wait for a batch of HTTP requests to finish. • However, if the SDK immediately fails the request (synchronously), the request would fail before the SDK started waiting for the request to finish, resulting in a permanently blocked queue. • Switched to using a dispatch_group which would handle this situation better. Also added a missing GDPR consent check to the onFocus methods * Remove Debug Statement • Removes a debug statement from the previous commit * 2.8.5 Release • Resolves a rare concurrency issue with the SDK's HTTP client * Miscellaneous Fixes (OneSignal#370) * Miscellaneous Fixes • Fixes an issue where the download method for attachments wasn't correctly implemented with a double pointer. It accepted NSError as a parameter, but because this pointer gets copied, any new assignments will apply to the copied pointer, not the original. • Fixes an issue in setEmail() where the failure block was being called without verifying that it is nonnull, which could cause crashes. • Cleans up the notificationReceived() method, which created a string (actionSelected) but doesn't use it. * Fix Method Signature • A recent bug fix changed the signature of a helper method to synchronously download files • Fixes the method signature so the swizzled test override method works and doesn't crash the test * Update location tracking + add significant location changes monitoring (#1) * Add lat/long tags
* Fix HTTP Race Condition (OneSignal#372) * Fix HTTP Concurrency • Fixes a relatively rare issue that would be encountered if the SDK attempted to make concurrent HTTP requests during an invalid situation, such as after the user has revoked GDPR consent • The SDK was previously using a semaphore to wait for a batch of HTTP requests to finish. • However, if the SDK immediately fails the request (synchronously), the request would fail before the SDK started waiting for the request to finish, resulting in a permanently blocked queue. • Switched to using a dispatch_group which would handle this situation better. Also added a missing GDPR consent check to the onFocus methods * Remove Debug Statement • Removes a debug statement from the previous commit * 2.8.5 Release • Resolves a rare concurrency issue with the SDK's HTTP client * Miscellaneous Fixes (OneSignal#370) * Miscellaneous Fixes • Fixes an issue where the download method for attachments wasn't correctly implemented with a double pointer. It accepted NSError as a parameter, but because this pointer gets copied, any new assignments will apply to the copied pointer, not the original. • Fixes an issue in setEmail() where the failure block was being called without verifying that it is nonnull, which could cause crashes. • Cleans up the notificationReceived() method, which created a string (actionSelected) but doesn't use it. * Fix Method Signature • A recent bug fix changed the signature of a helper method to synchronously download files • Fixes the method signature so the swizzled test override method works and doesn't crash the test * Bundle ID Improvement (OneSignal#377) • In order to allow communication between the App Extension and the host/primary application, OneSignal SDK uses an app group to perform communication • For most developers, the name of the app group will simply be group.{your_bundle_id}.onesignal • The SDK can automatically retrieve this bundle ID, but previously, for the app extension service, this was broken because it was only retrieving the bundle ID for the OneSignalNotificationServiceExtension • This means the bundle ID's would not have matched and badge count would be inconsistent. This commit fixes the issue by using a method to retrieve the host app's bundle ID. * Update location tracking + add significant location changes monitoring (#1) * Disable fine location tracking when app is background (#3) * Ensure location tags are properly updated with no delay (#4) * Update location tracking method
• Fixes an issue where the download method for attachments wasn't correctly implemented with a double pointer. It accepted NSError as a parameter, but because this pointer gets copied, any new assignments will apply to the copied pointer, not the original.
• Fixes an issue in
setEmail()where the failure block was being called without verifying that it is nonnull, which could cause crashes.• Cleans up the
notificationReceived()method, which created a string (actionSelected) but doesn't use it.This change is