diff options
author | 2020-10-05 22:18:22 +1100 | |
---|---|---|
committer | 2020-10-05 22:18:22 +1100 | |
commit | f390ea1004a4563bb79912a1a13d5de70c2e316b (patch) | |
tree | 51f3367173c2c8088a9514cfb084b34967587763 /src | |
parent | a89f9b274e9968aab7fde58110c3cb72378c4843 (diff) |
3rdparty/nanosvg: Re-base on latest upstream.
Now based on upstream cc6c08d3a80f1a305021af3d6394cdf1535d02a2.
Among other things, this version is supposed to be less sensitive to the
global locale.
Diffstat (limited to 'src')
-rw-r--r-- | src/emu/screen.cpp | 17 | ||||
-rw-r--r-- | src/lib/util/nanosvg.cpp | 6 |
2 files changed, 9 insertions, 14 deletions
diff --git a/src/emu/screen.cpp b/src/emu/screen.cpp index cacd16d5982..c1e575819db 100644 --- a/src/emu/screen.cpp +++ b/src/emu/screen.cpp @@ -94,19 +94,10 @@ private: screen_device::svg_renderer::svg_renderer(memory_region *region) { - // nanosvg makes assumptions about the global locale - { - const std::unique_ptr<char []> s(new char[region->bytes() + 1]); - memcpy(s.get(), region->base(), region->bytes()); - s[region->bytes()] = 0; - const std::string lcctype(std::setlocale(LC_CTYPE, nullptr)); - const std::string lcnumeric(std::setlocale(LC_NUMERIC, nullptr)); - std::setlocale(LC_CTYPE, "C"); - std::setlocale(LC_NUMERIC, "C"); - m_image = nsvgParse(s.get(), "px", 72); - std::setlocale(LC_CTYPE, lcctype.c_str()); - std::setlocale(LC_NUMERIC, lcnumeric.c_str()); - } + const std::unique_ptr<char []> s(new char[region->bytes() + 1]); + memcpy(s.get(), region->base(), region->bytes()); + s[region->bytes()] = 0; + m_image = nsvgParse(s.get(), "px", 72); m_rasterizer = nsvgCreateRasterizer(); m_key_count = 0; diff --git a/src/lib/util/nanosvg.cpp b/src/lib/util/nanosvg.cpp index 09973865675..0cb05308d19 100644 --- a/src/lib/util/nanosvg.cpp +++ b/src/lib/util/nanosvg.cpp @@ -1,6 +1,10 @@ +#include <stdio.h> +#include <string.h> +#include <math.h> + +#define NANOSVG_ALL_COLOR_KEYWORDS #define NANOSVG_IMPLEMENTATION #define NANOSVGRAST_IMPLEMENTATION -#define NANOSVG_ALL_COLOR_KEYWORDS #include <nanosvg/src/nanosvg.h> #include <nanosvg/src/nanosvgrast.h> |