commit 4cf9665d7a00a6b3c134fe1723f2b00a56923391
Author: Federico Mena Quintero <federico@gnome.org>
Date:   Wed Jul 19 20:08:59 2017 -0500

    Bump version to 2.40.18

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3ec71aa76b34129fdf7db60e01d3ddd395ecd84f
Author: Federico Mena Quintero <federico@gnome.org>
Date:   Wed Jul 19 20:10:50 2017 -0500

    Update NEWS

 NEWS | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 26ae646cecb743c5e2dd9031ebc7fdd19b9ab7e0
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Mar 6 15:24:48 2017 +0800

    Visual Studio builds: Generate .pc files upon "install"
    
    This makes it easier for build systems that demand for the presence of .pc
    files (such as Meson) to find packages.

 build/win32/vs10/Makefile.am                  |  1 +
 build/win32/vs10/rsvg-install.propsin         | 10 +++++++
 build/win32/vs10/rsvg-install.vcxproj         | 28 +++++++++++--------
 build/win32/vs10/rsvg-install.vcxproj.filters | 21 ++++++++++++++
 build/win32/vs10/rsvg-version-paths.props.in  |  4 +++
 build/win32/vs11/Makefile.am                  |  1 +
 build/win32/vs12/Makefile.am                  |  1 +
 build/win32/vs14/Makefile.am                  |  1 +
 build/win32/vs15/Makefile.am                  |  1 +
 build/win32/vs9/rsvg-install.vcproj           | 40 +++++++++++++++++++++++++++
 build/win32/vs9/rsvg-install.vspropsin        |  6 ++++
 build/win32/vs9/rsvg-version-paths.vsprops.in |  4 +++
 12 files changed, 106 insertions(+), 12 deletions(-)

commit 620b8df5bb12d44f94c5b6cf2d6b74f6ed0bdfa3
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Mar 3 17:19:43 2017 +0800

    Visual Studio builds: Add scripts to generate .pc files
    
    Integration into the Visual Studio process will follow, this uses Python
    to generate librsvg-2.0.pc.

 build/win32/Makefile.am |   3 ++
 build/win32/pc_base.py  | 124 ++++++++++++++++++++++++++++++++++++++++++++++++
 build/win32/replace.py  | 115 ++++++++++++++++++++++++++++++++++++++++++++
 build/win32/rsvgpc.py   |  33 +++++++++++++
 4 files changed, 275 insertions(+)

commit 208f07daeabcc1966a556860acb06764a9af2d51
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Mar 3 17:53:40 2017 +0800

    MSVC builds: Include Version info in Property Sheets
    
    This info can be used later to generate the .pc files directly from the
    Visual Studio builds.

 ...{rsvg-version-paths.props => rsvg-version-paths.props.in} | 12 ++++++++++++
 ...g-version-paths.vsprops => rsvg-version-paths.vsprops.in} | 12 ++++++++++++
 configure.ac                                                 |  2 ++
 3 files changed, 26 insertions(+)

commit 80c100d2a51259aee292e32694e8d885ce01a7b6
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Mar 3 17:44:31 2017 +0800

    Visual Studio builds: Support Visual Studio 2017
    
    This adds Visual Studio 2017 support for the 2.40.x series by updating the
    autotools scripts that copy the 2010 projects and updating the items in
    there as needed.  Since Visual Studio 2017 has a different toolset version
    string format, a custom toolset version string is allowed and used if one
    is specified, otherwise it will be generated as it is before.
    
    Since Visual Studio 2017 aims to be compatible with Visual Studio 2015 on
    the CRT level, one should be able to use 2017-built binaries with
    2015-built binaries.

 build/Makefile-newvs.am      | 18 +++++++++++++-----
 build/Makefile.msvcproj      |  2 ++
 build/win32/Makefile.am      |  3 ++-
 build/win32/vs10/Makefile.am |  3 ++-
 build/win32/vs15/Makefile.am | 25 +++++++++++++++++++++++++
 configure.ac                 |  7 +++++++
 6 files changed, 51 insertions(+), 7 deletions(-)

commit 30792d0da1939d8f2bf2124f7ed2b1ed0eee32d6
Author: Federico Mena Quintero <federico@gnome.org>
Date:   Fri Jul 7 11:42:35 2017 -0500

    rsvg-filter: Deal with errors in all callers to rsvg_filter_get_result()

 rsvg-filter.c | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

commit 2f55461824855af06ffd31abf8f8acfd4a42656e
Author: Federico Mena Quintero <federico@gnome.org>
Date:   Fri Jul 7 11:38:56 2017 -0500

    rsvg-filter: Return NULL for invalid surfaces in rsvg_filter_get_{result,in}()

 rsvg-filter.c | 22 +++++++++-------------
 1 file changed, 9 insertions(+), 13 deletions(-)

commit a35544e4139df47e70e2b2a130e8db00e5fe208b
Author: Federico Mena Quintero <federico@gnome.org>
Date:   Fri Jul 7 11:29:04 2017 -0500

    feGaussianBlur: Don't try to blur an invalid surface
    
    This is a stop-gap measure to deal with invalid surfaces being fed
    to this filter.  We get a surface which is not in
    CAIRO_STATUS_SUCCESS, and so its width/height are 0.
    
    In reality we should be able to bubble up errors from
    cairo_*_surface_create(), but we don't do that yet.

 rsvg-filter.c | 5 +++++
 1 file changed, 5 insertions(+)

commit 5a64b032d3dfbecd1af0ecea0fc5e636029547b3
Author: Federico Mena Quintero <federico@gnome.org>
Date:   Fri Jul 7 10:40:05 2017 -0500

    rsvg_parse_transform(): Return failure for degenerate matrices

 rsvg-styles.c | 34 ++++++++++++++++++++++++----------
 1 file changed, 24 insertions(+), 10 deletions(-)

commit 4c23831871b1bbb2fe569f70f813e2f703ea4eb3
Author: Federico Mena Quintero <federico@gnome.org>
Date:   Thu Jul 6 13:02:03 2017 -0500

    feTile: don't divide by zero if the input surface has empty bounds
    
    Thanks to Stefan Cornelius <scorneli@redhat.com> for the test file.

 rsvg-filter.c | 5 +++++
 1 file changed, 5 insertions(+)

commit 735bd813d7657f24dba222fa6e5be8f66491ef77
Author: Federico Mena Quintero <federico@gnome.org>
Date:   Tue Jun 27 17:12:51 2017 -0500

    bgo#783835 - Don't divide by zero in box_blur_line() for gaussian blurs
    
    We were making the decision to use box blurs, instead of a true
    Gaussian kernel, based on the size of *both* x and y dimensions.  Do
    them individually instead.

 rsvg-filter.c | 31 +++++++++++++++++++++----------
 1 file changed, 21 insertions(+), 10 deletions(-)