diff options
author | Anand Thakker <anandthakker@users.noreply.github.com> | 2018-06-06 11:26:08 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-06-06 11:26:08 -0400 |
commit | 2da57bd1576c99ff4305cab7b6ad8c1a39ac2fa7 (patch) | |
tree | 5d2dfb87e69f0354d47a94acf54af40009932a04 /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java | |
parent | 6eee8729554ed778491c52bda46cdcbec61b9c95 (diff) | |
download | qtlocation-mapboxgl-2da57bd1576c99ff4305cab7b6ad8c1a39ac2fa7.tar.gz |
[core] Fix crash due to mixing legacy filters and expressions (#12065)
* Fix crash due to mixing legacy filters and expressions
In some cases, (invalid) nested filters that used a mix of legacy filter
syntax and expression syntax caused a crash due to a failure to
propagate parsing errors from deeper within the filter expression.
These errors went undetected in part because these conversion functions
returned unique_ptr<Expression> values (or vectors thereof), using
{nullptr} to represent a parsing error, but the core expression classes
expect unique_ptr<Expression> that are never null.
This changes over to using expression::ParseResult (aka
optional<unique_ptr<Expression>>), to represent conversion failure
the same way we do in the rest of the expression system.
* Fix clang 3.8 / gcc 4.9 issue
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java')
0 files changed, 0 insertions, 0 deletions