Assume UTF-8–encoded JSON stylesheets

Fixes #1068.
This commit is contained in:
Minh Nguyễn
2015-03-23 11:16:49 -07:00
parent 9d30d4042c
commit df437208aa

View File

@@ -178,7 +178,7 @@ mbgl::DefaultFileSource *mbglFileSource = nullptr;
{
if (accessToken)
{
mbglMap->setAccessToken((std::string)[accessToken cStringUsingEncoding:[NSString defaultCStringEncoding]]);
mbglMap->setAccessToken((std::string)[accessToken UTF8String]);
}
}
@@ -193,7 +193,7 @@ mbgl::DefaultFileSource *mbglFileSource = nullptr;
else
{
if ([@(mbglMap->getStyleJSON().c_str()) length]) mbglMap->stop();
mbglMap->setStyleJSON((std::string)[styleJSON cStringUsingEncoding:[NSString defaultCStringEncoding]]);
mbglMap->setStyleJSON((std::string)[styleJSON UTF8String]);
mbglMap->start();
}
}
@@ -282,7 +282,7 @@ mbgl::DefaultFileSource *mbglFileSource = nullptr;
// setup annotations
//
_annotationsStore = [NSMapTable mapTableWithKeyOptions:NSMapTableStrongMemory valueOptions:NSMapTableStrongMemory];
std::string defaultSymbolName([MGLDefaultStyleMarkerSymbolName cStringUsingEncoding:[NSString defaultCStringEncoding]]);
std::string defaultSymbolName([MGLDefaultStyleMarkerSymbolName UTF8String]);
mbglMap->setDefaultPointAnnotationSymbol(defaultSymbolName);
// setup logo bug
@@ -1099,14 +1099,14 @@ CLLocationCoordinate2D latLngToCoordinate(mbgl::LatLng latLng)
{
const std::string styleJSON = mbglMap->getStyleJSON();
return [NSJSONSerialization JSONObjectWithData:[@(styleJSON.c_str()) dataUsingEncoding:[NSString defaultCStringEncoding]] options:0 error:nil];
return [NSJSONSerialization JSONObjectWithData:[@(styleJSON.c_str()) dataUsingEncoding:NSUTF8StringEncoding] options:0 error:nil];
}
- (void)setRawStyle:(NSDictionary *)style
{
NSData *data = [NSJSONSerialization dataWithJSONObject:style options:0 error:nil];
[self setStyleJSON:[[NSString alloc] initWithData:data encoding:[NSString defaultCStringEncoding]]];
[self setStyleJSON:[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]];
}
- (NSArray *)bundledStyleNames
@@ -1212,7 +1212,7 @@ CLLocationCoordinate2D latLngToCoordinate(mbgl::LatLng latLng)
for (NSString *appliedClass in appliedClasses)
{
newAppliedClasses.insert(newAppliedClasses.end(), [appliedClass cStringUsingEncoding:[NSString defaultCStringEncoding]]);
newAppliedClasses.insert(newAppliedClasses.end(), [appliedClass UTF8String]);
}
mbglMap->setDefaultTransitionDuration(secondsAsDuration(transitionDuration));
@@ -1609,7 +1609,7 @@ CLLocationCoordinate2D latLngToCoordinate(mbgl::LatLng latLng)
symbolName = [self.delegate mapView:self symbolNameForAnnotation:annotation];
}
symbols.push_back((symbolName ? [symbolName cStringUsingEncoding:[NSString defaultCStringEncoding]] : ""));
symbols.push_back((symbolName ? [symbolName UTF8String] : ""));
}
std::vector<uint32_t> annotationIDs = mbglMap->addPointAnnotations(latLngs, symbols);