From 6d2f7ea24b11ebbd1110f0d73062e55cb2628466 Mon Sep 17 00:00:00 2001 From: Sergey Ivanov1 Date: Wed, 18 Jul 2018 08:34:57 +0300 Subject: [PATCH 1/4] Replace call to inexistent error method with exception in case of error during SVG rasterization in Image class. --- CHANGELOG.md | 1 + src/Image.cc | 2 +- src/Image.h | 1 - 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dc761869f..0d5b7b312 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -52,6 +52,7 @@ canvas.createJPEGStream() // new on the incorrect types. ### Fixed + * Fix build with SVG support (#1205) * Prevent segfaults caused by loading invalid fonts (#1105) * Fix memory leak in font loading * Port has_lib.sh to javascript (#872) diff --git a/src/Image.cc b/src/Image.cc index 84c6f7e88..22e4e31f5 100644 --- a/src/Image.cc +++ b/src/Image.cc @@ -392,7 +392,7 @@ cairo_surface_t *Image::surface() { cairo_status_t status = renderSVGToSurface(); if (status != CAIRO_STATUS_SUCCESS) { g_object_unref(_rsvg); - error(Canvas::Error(status)); + Nan::ThrowError(Canvas::Error(status)); return NULL; } } diff --git a/src/Image.h b/src/Image.h index d2e7e086d..89006b485 100644 --- a/src/Image.h +++ b/src/Image.h @@ -86,7 +86,6 @@ class Image: public Nan::ObjectWrap { cairo_status_t assignDataAsMime(uint8_t *data, int len, const char *mime_type); #endif #endif - void error(Local error); void loaded(); cairo_status_t load(); Image(); From cfa6464c9edb32feabecbab0c40e1dbef3426ad8 Mon Sep 17 00:00:00 2001 From: Sergey Ivanov1 Date: Wed, 18 Jul 2018 08:46:02 +0300 Subject: [PATCH 2/4] Copy librsvg with dependencies into destination folder on build for win platform. --- binding.gyp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/binding.gyp b/binding.gyp index 79ea2fdf2..c0f39f6d2 100644 --- a/binding.gyp +++ b/binding.gyp @@ -191,6 +191,17 @@ ], 'conditions': [ ['OS=="win"', { + 'copies': [{ + 'destination': '<(PRODUCT_DIR)', + 'files': [ + '<(GTK_Root)/bin/librsvg-2-2.dll', + '<(GTK_Root)/bin/libgdk_pixbuf-2.0-0.dll', + '<(GTK_Root)/bin/libgio-2.0-0.dll', + '<(GTK_Root)/bin/libcroco-0.6-3.dll', + '<(GTK_Root)/bin/libgsf-1-114.dll', + '<(GTK_Root)/bin/libxml2-2.dll' + ] + }], 'libraries': [ '-l<(GTK_Root)/lib/librsvg-2-2.lib' ] From 2835ee4427cd6fb674719a66d82a93cafc47e03e Mon Sep 17 00:00:00 2001 From: Sergey Ivanov1 Date: Wed, 18 Jul 2018 09:03:16 +0300 Subject: [PATCH 3/4] Update issue number in changelog. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0d5b7b312..e3e369663 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -52,7 +52,7 @@ canvas.createJPEGStream() // new on the incorrect types. ### Fixed - * Fix build with SVG support (#1205) + * Fix build with SVG support enabled (#1123) * Prevent segfaults caused by loading invalid fonts (#1105) * Fix memory leak in font loading * Port has_lib.sh to javascript (#872) From 6194b9cdc0f886bf6b28eddd076e3ffbd10ca00c Mon Sep 17 00:00:00 2001 From: Zach Bjornson Date: Wed, 18 Jul 2018 09:22:58 -0700 Subject: [PATCH 4/4] Add librsvg2-dev to CI env --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index d017940c0..e7e3fca5f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,6 +14,7 @@ addons: - libjpeg8-dev - libpango1.0-dev - libgif-dev + - librsvg2-dev - g++-4.9 env: - CXX=g++-4.9