summaryrefslogtreecommitdiff
path: root/src/mbgl
diff options
context:
space:
mode:
authorIvo van Dongen <info@ivovandongen.nl>2017-03-31 18:07:45 +0300
committerIvo van Dongen <ivovandongen@users.noreply.github.com>2017-04-04 18:31:11 +0300
commit705caf0f269af30f4aa72e314034f2225d7a9be1 (patch)
tree9a7ff560c939645ecfd28977367647f6e0854664 /src/mbgl
parent4a4b6a8af306691588602fbc6f3ed17c5f193355 (diff)
downloadqtlocation-mapboxgl-705caf0f269af30f4aa72e314034f2225d7a9be1.tar.gz
[core] return empty optional when color could not be parsed
Diffstat (limited to 'src/mbgl')
-rw-r--r--src/mbgl/util/color.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/mbgl/util/color.cpp b/src/mbgl/util/color.cpp
index d5751b405f..fcb7f4ec16 100644
--- a/src/mbgl/util/color.cpp
+++ b/src/mbgl/util/color.cpp
@@ -6,16 +6,20 @@
namespace mbgl {
optional<Color> Color::parse(const std::string& s) {
- CSSColorParser::Color css_color = CSSColorParser::parse(s);
+ auto css_color = CSSColorParser::parse(s);
// Premultiply the color.
- const float factor = css_color.a / 255;
- return {{
- css_color.r * factor,
- css_color.g * factor,
- css_color.b * factor,
- css_color.a
- }};
+ if (css_color) {
+ const float factor = css_color->a / 255;
+ return {{
+ css_color->r * factor,
+ css_color->g * factor,
+ css_color->b * factor,
+ css_color->a
+ }};
+ } else {
+ return {};
+ }
}
std::string Color::stringify() const {