diff options
author | Konstantin Käfer <mail@kkaefer.com> | 2014-10-31 17:06:32 -0400 |
---|---|---|
committer | Konstantin Käfer <mail@kkaefer.com> | 2014-10-31 17:06:32 -0400 |
commit | 16bd75c6ccc0340295d65e04728239a7eea693dd (patch) | |
tree | ba633465bfcef203be726fc023a48d3f9239a0ba /include/mbgl/util | |
parent | bc7effdd8646d2492cf276d9a87828e784eb8945 (diff) | |
parent | d0f71242da3e5a84e3c0ba54d63a889da7a11f2e (diff) | |
download | qtlocation-mapboxgl-16bd75c6ccc0340295d65e04728239a7eea693dd.tar.gz |
Merge pull request #527 from mapbox/platform-image
Use platform-specific routines for decoding/encoding images
Diffstat (limited to 'include/mbgl/util')
-rw-r--r-- | include/mbgl/util/image.hpp | 14 | ||||
-rw-r--r-- | include/mbgl/util/token.hpp | 2 |
2 files changed, 7 insertions, 9 deletions
diff --git a/include/mbgl/util/image.hpp b/include/mbgl/util/image.hpp index dc8f6a8150..b2f70e1442 100644 --- a/include/mbgl/util/image.hpp +++ b/include/mbgl/util/image.hpp @@ -2,31 +2,29 @@ #define MBGL_UTIL_IMAGE #include <string> -#include <cstring> -#include <stdexcept> +#include <memory> namespace mbgl { namespace util { -std::string compress_png(int width, int height, void *rgba, bool flip = false); +std::string compress_png(int width, int height, void *rgba); class Image { public: - Image(const std::string &img, bool flip = false); - ~Image(); + Image(const std::string &img); - inline const char *getData() const { return img; } + inline const char *getData() const { return img.get(); } inline uint32_t getWidth() const { return width; } inline uint32_t getHeight() const { return height; } + inline operator bool() const { return img && width && height; } private: // loaded image dimensions uint32_t width = 0, height = 0; // the raw image data - char *img = nullptr; - + std::unique_ptr<char[]> img; }; diff --git a/include/mbgl/util/token.hpp b/include/mbgl/util/token.hpp index 0f045f434a..64192a99f9 100644 --- a/include/mbgl/util/token.hpp +++ b/include/mbgl/util/token.hpp @@ -22,7 +22,7 @@ std::string replaceTokens(const std::string &source, const Lookup &lookup) { result.append(pos, brace); pos = brace; if (pos != end) { - for (brace++; brace != end && std::isalnum(*brace); brace++); + for (brace++; brace != end && (std::isalnum(*brace) || *brace == '_'); brace++); if (brace != end && *brace == '}') { result.append(lookup({ pos + 1, brace })); pos = brace + 1; |