summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Rex <julian.rex@gmail.com>2018-06-11 15:23:40 -0400
committerFabian Guerra <fabian.guerra@mapbox.com>2018-06-22 13:57:20 -0700
commit1c7ad8f74b0b6351ff0a3271c741d015ea333484 (patch)
tree09eb29a68deac55b3d4d19abddadc4be8c9a5997
parent1642dd9b89c46ce01f62c40f3cd16c8999d0e508 (diff)
downloadqtlocation-mapboxgl-upstream/fabian-cp-12123.tar.gz
[ios,macos] Fixed crash in `-[MGLStyle localizeLabelsIntoLocale:]` on iOS 9.3 (#12123)upstream/fabian-cp-12123
# Conflicts: # platform/ios/CHANGELOG.md # platform/macos/CHANGELOG.md
-rw-r--r--platform/darwin/src/MGLVectorTileSource.mm11
-rw-r--r--platform/ios/CHANGELOG.md2
-rw-r--r--platform/macos/CHANGELOG.md2
3 files changed, 14 insertions, 1 deletions
diff --git a/platform/darwin/src/MGLVectorTileSource.mm b/platform/darwin/src/MGLVectorTileSource.mm
index 6b9d857ad2..50d98051f3 100644
--- a/platform/darwin/src/MGLVectorTileSource.mm
+++ b/platform/darwin/src/MGLVectorTileSource.mm
@@ -109,7 +109,16 @@ static NSArray * const MGLMapboxStreetsAlternativeLanguages = @[
+ (NSString *)preferredMapboxStreetsLanguageForPreferences:(NSArray<NSString *> *)preferencesArray {
BOOL acceptsEnglish = [preferencesArray filteredArrayUsingPredicate:
[NSPredicate predicateWithBlock:^BOOL(NSString * _Nullable language, NSDictionary<NSString *,id> * _Nullable bindings) {
- return [[NSLocale localeWithLocaleIdentifier:language].languageCode isEqualToString:@"en"];
+ NSString *languageCode;
+
+ if (@available(iOS 10.0, macOS 10.12.0, *)) {
+ languageCode = [NSLocale localeWithLocaleIdentifier:language].languageCode;
+ }
+ else {
+ languageCode = [[NSLocale localeWithLocaleIdentifier:language] objectForKey:NSLocaleLanguageCode];
+ }
+
+ return [languageCode isEqualToString:@"en"];
}]].count;
NSArray<NSString *> *availableLanguages = acceptsEnglish ? MGLMapboxStreetsLanguages : MGLMapboxStreetsAlternativeLanguages;
diff --git a/platform/ios/CHANGELOG.md b/platform/ios/CHANGELOG.md
index dfa6708ac6..7ad55edaf3 100644
--- a/platform/ios/CHANGELOG.md
+++ b/platform/ios/CHANGELOG.md
@@ -2,6 +2,8 @@
Mapbox welcomes participation and contributions from everyone. Please read [CONTRIBUTING.md](../../CONTRIBUTING.md) to get started.
+* Fixed crash in `-[MGLStyle localizeLabelsIntoLocale:]` on iOS 9.3 (attempting to access a property that was introduced in iOS 10.0) ([#12123](https://github.com/mapbox/mapbox-gl-native/pull/12123))
+
## 4.0.2 - May 29, 2018
* Fixed a crash when constant expressions were used for style properties that didn't support data-driven styling. ([#11960](https://github.com/mapbox/mapbox-gl-native/issues/11960))
diff --git a/platform/macos/CHANGELOG.md b/platform/macos/CHANGELOG.md
index 6c01d7add5..d56a7ec181 100644
--- a/platform/macos/CHANGELOG.md
+++ b/platform/macos/CHANGELOG.md
@@ -1,5 +1,7 @@
# Changelog for Mapbox Maps SDK for macOS
+* Fixed crash in `-[MGLStyle localizeLabelsIntoLocale:]` on iOS 9.3 (attempting to access a property that was introduced in iOS 10.0) ([#12123](https://github.com/mapbox/mapbox-gl-native/pull/12123))
+
## 0.7.1
### Style layers