Hello community,

here is the log from the commit of package libproxy for openSUSE:Factory 
checked in at 2017-09-13 21:43:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libproxy (Old)
 and      /work/SRC/openSUSE:Factory/.libproxy.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libproxy"

Wed Sep 13 21:43:53 2017 rev:70 rq:522333 version:0.4.15

Changes:
--------
--- /work/SRC/openSUSE:Factory/libproxy/libproxy-plugins.changes        
2017-02-10 09:46:05.330779887 +0100
+++ /work/SRC/openSUSE:Factory/.libproxy.new/libproxy-plugins.changes   
2017-09-13 21:43:54.811567012 +0200
@@ -1,0 +2,19 @@
+Thu Sep  7 19:29:58 UTC 2017 - [email protected]
+
+- Update descriptions and RPM categories.
+
+-------------------------------------------------------------------
+Thu May 11 09:36:16 UTC 2017 - [email protected]
+
+- Update to version 0.4.15:
+  + Port to, and require, SpiderMonkey 38.
+  + Fix "NetworkManager plugin not being built"
+    (gh#libproxy/libproxy#53).
+  + Fix "networkmanager plugin not working
+    (gh#libproxy/libproxy#58).
+  + Fix "Invalid read after free" (gh#libproxy/libproxy#59).
+  + Fix intermittent unit test failures.
+- Replace pkgconfig(mozjs185) buildRequires with
+  pkgconfig(mozjs-38), following upstream.
+
+-------------------------------------------------------------------
libproxy.changes: same change

Old:
----
  0.4.14.tar.gz

New:
----
  0.4.15.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libproxy-plugins.spec ++++++
--- /var/tmp/diff_new_pack.AJUFAo/_old  2017-09-13 21:43:55.423480921 +0200
+++ /var/tmp/diff_new_pack.AJUFAo/_new  2017-09-13 21:43:55.427480359 +0200
@@ -23,24 +23,24 @@
 %else
 %bcond_with mono
 %endif
-
-Url:            http://code.google.com/p/libproxy/
 %define _name   libproxy
-
-Name:           libproxy-plugins
-Summary:        Libproxy provides consistent proxy configuration to 
applications
-License:        GPL-2.0+ and LGPL-2.1+
-Group:          System/Libraries
-Version:        0.4.14
-Release:        0
 %if 0%{?build_snapshot}
 %define _sourcename %{_name}
 %else
 %define _sourcename %{_name}-%{version}
 %endif
+%{!?python_sitelib:  %global python_sitelib  %(python -c "from 
distutils.sysconfig import get_python_lib; print(get_python_lib())")}
+%{!?python_sitearch: %global python_sitearch %(python -c "from 
distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
+%{!?_assemblies_dir: %global _assemblies_dir %(pkg-config cecil 
--variable=assemblies_dir)}
+Name:           libproxy-plugins
+Version:        0.4.15
+Release:        0
+Summary:        Automatic proxy configuration management for applications
+License:        GPL-2.0+ AND LGPL-2.1+
+Group:          Development/Libraries/C and C++
+Url:            http://code.google.com/p/libproxy/
 Source:         https://github.com/libproxy/%{_name}/archive/%{version}.tar.gz
 Source99:       baselibs.conf
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  cmake
 BuildRequires:  gcc-c++
 BuildRequires:  libmodman-devel
@@ -50,11 +50,15 @@
 BuildRequires:  zlib-devel
 %if !%{build_core_not_modules}
 %if ! 0%{?windows}
+BuildRequires:  NetworkManager-devel
 BuildRequires:  dbus-1-devel
 BuildRequires:  gconf2-devel
 # For directory ownership, but also because we want to rebuild the modules if
 # the library changed
 BuildRequires:  libproxy1 = %{version}
+BuildRequires:  perl
+BuildRequires:  python-devel
+BuildRequires:  python3-devel
 %if 0%{?favor_gtk2}
 BuildRequires:  pkgconfig(gconf-2.0)
 BuildRequires:  pkgconfig(gobject-2.0)
@@ -64,98 +68,74 @@
 BuildRequires:  pkgconfig(gobject-2.0)
 BuildRequires:  pkgconfig(javascriptcoregtk-4.0)
 %endif
-BuildRequires:  NetworkManager-devel
 %if 0%{?is_opensuse}
 BuildRequires:  libKF5ConfigCore5
 %endif
 %if %{build_mozjs}
-BuildRequires:  pkgconfig(mozjs185)
+BuildRequires:  pkgconfig(mozjs-38)
 %endif
 %if %{with mono}
 BuildRequires:  mono-devel
 %endif
-BuildRequires:  perl
-BuildRequires:  python-devel
-BuildRequires:  python3-devel
 %endif
 %endif
 
-%{!?python_sitelib:  %global python_sitelib  %(%__python -c "from 
distutils.sysconfig import get_python_lib; print(get_python_lib())")}
-%{!?python_sitearch: %global python_sitearch %(%__python -c "from 
distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
-%{!?_assemblies_dir: %global _assemblies_dir %(pkg-config cecil 
--variable=assemblies_dir)}
-
 %description
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
-
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
-
+libproxy is a library that provides automatic proxy configuration
+management.
 
 %if %build_core_not_modules
-
 %package tools
-Summary:        A simple application using libproxy
+Summary:        An example application using libproxy
 Group:          System/Libraries
 Requires:       libproxy1 = %{version}
 
 %description tools
-A simple application that will use libproxy to give the results you can
-expect from other applications. It can be used to debug what would
+An example application that will use libproxy to give the results that can
+be expected from other applications. It can be used to debug what would
 happen in various cases.
 
-
 %package devel
-Summary:        Libproxy provides consistent proxy configuration to 
applications - Development Files
+Summary:        Development files for libproxy, a library to do PAC/WPAD
 Group:          Development/Libraries/C and C++
 Requires:       libproxy1 = %{version}
 
 %description devel
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
-
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
+libproxy is a library that provides automatic proxy configuration
+management.
 
+This subpackage contains header files for developing applications
+that want to make use of libproxy.
 
 %package -n libproxy1
-Summary:        Libproxy provides consistent proxy configuration to 
applications
+Summary:        Automatic proxy configuration management for applications
 Group:          System/Libraries
 %if !%{build_mozjs}
 Obsoletes:      libproxy1-pacrunner-mozjs <= %{version}
 %endif
 
 %description -n libproxy1
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
+libproxy is a library that provides automatic proxy configuration
+management.
 
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
+Proxy autoconfiguration (PAC) requires JavaScript (which most
+applications do not have), and determing the PAC script location
+requires a WPAD protocol implementation, which complicate proxy
+support. libproxy exists to abstract this issue and provides
+an answer how to reach a certain network resource.
 
 %else
-
 %if 0%{?favor_gtk2}
-
 %package -n libproxy1-config-gnome
-
 Summary:        Libproxy module for GNOME configuration
 Group:          System/Libraries
 %else
-
 %package -n libproxy1-config-gnome3
 Summary:        Libproxy module for GNOME3 configuration
 Group:          System/Libraries
 %endif
 Requires:       libproxy1 = %{version}
+
 %if 0%{?suse_version}
 Recommends:     libproxy1-pacrunner = %{version}
 %if 0%{?favor_gtk2}
@@ -170,11 +150,9 @@
 Obsoletes:      libproxy-gnome < %{version}
 
 %if 0%{?favor_gtk2}
-
 %description -n libproxy1-config-gnome
 
 %else
-
 %description -n libproxy1-config-gnome3
 
 %endif
@@ -183,10 +161,14 @@
 
 %package -n libproxy1-config-kde
 Summary:        Libproxy module for KDE configuration
-Group:          System/Libraries
-Requires:       libproxy1 = %{version}
 # We don't really need the library, but this package brings kreadconfig5
+Group:          System/Libraries
 Requires:       libKF5ConfigCore5
+Requires:       libproxy1 = %{version}
+Provides:       libproxy-kde = %{version}
+Obsoletes:      libproxy-kde < %{version}
+# A generic KDE config loader was introduced in 0.4.12
+Obsoletes:      libproxy1-config-kde4 < 0.4.12
 # The kde plugin requires 'qtpaths', which is part of libqt5-qtpaths in TW / 
libqt5-qttools in older releases
 %if %{?suse_version} > 1320
 Requires:       libqt5-qtpaths
@@ -200,35 +182,31 @@
 %else
 Requires:       libproxy1-pacrunner = %{version}
 %endif
-Provides:       libproxy-kde = %{version}
-Obsoletes:      libproxy-kde < %{version}
-# A generic KDE config loader was introduced in 0.4.12
-Obsoletes:      libproxy1-config-kde4 < 0.4.12
 
 %description -n libproxy1-config-kde
 A module to extend libproxy with capabilities to query KDE4 about proxy
 settings.
 
-%if %{build_mozjs}
 %package -n libproxy1-pacrunner-mozjs
-Summary:        Libproxy module to support wpad/pac parsing via Mozilla 
JavaScript Engine
+Summary:        Libproxy module to support WPAD/PAC parsing via the Mozilla 
JavaScript Engine
 Group:          System/Libraries
 Requires:       libproxy1 = %{version}
+# A virtual symbol to identify that this is a pacrunner.
+Provides:       libproxy1-pacrunner = %{version}
 %if 0%{?suse_version}
 Supplements:    packageand(libproxy1:libmozjs185-1_0)
 %endif
-# A virtual symbol to identify that this is a pacrunner.
-Provides:       libproxy1-pacrunner = %{version}
 
 %description -n libproxy1-pacrunner-mozjs
 A module to extend libproxy with capabilities to pass addresses to a
 WPAD/PAC script and have it find the correct proxy.
-%endif
 
 %package -n libproxy1-pacrunner-webkit
-Summary:        Libproxy module to support WPAD/PAC parsing via WebKit 
JavaScript Engine
+Summary:        Libproxy module to support WPAD/PAC parsing via the WebKit 
JavaScript Engine
 Group:          System/Libraries
 Requires:       libproxy1 = %{version}
+# A virtual symbol to identify that this is a pacrunner.
+Provides:       libproxy1-pacrunner = %{version}
 %if 0%{?suse_version}
 %if 0%{?favor_gtk2}
 Supplements:    packageand(libproxy1:libjavascriptcoregtk-1_0-0)
@@ -236,8 +214,6 @@
 Supplements:    packageand(libproxy1:libjavascriptcoregtk-3_0-0)
 %endif
 %endif
-# A virtual symbol to identify that this is a pacrunner.
-Provides:       libproxy1-pacrunner = %{version}
 
 %description -n libproxy1-pacrunner-webkit
 A module to extend libproxy with capabilities to pass addresses to a
@@ -257,44 +233,36 @@
 
 %package -n python3-libproxy
 Summary:        Python3 bindings for libproxy
-Group:          System/Libraries
+Group:          Development/Languages/Python
+Requires:       libproxy1 = %{version}
 %if 0%{?suse_version} > 1110
 BuildArch:      noarch
 %endif
-Requires:       libproxy1 = %{version}
 
 %description -n python3-libproxy
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
+libproxy is a library that provides automatic proxy configuration
+management.
 
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
+This package contains the Python 3 bindings for libproxy.
 
 %package -n python-libproxy
 Summary:        Python bindings for libproxy
-Group:          System/Libraries
+Group:          Development/Languages/Python
+Requires:       libproxy1 = %{version}
 %if 0%{?suse_version} > 1110
 BuildArch:      noarch
 %py_requires
 %endif
-Requires:       libproxy1 = %{version}
 
 %description -n python-libproxy
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
+libproxy is a library that provides automatic proxy configuration
+management.
 
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
+This package contains the Python 2 bindings for libproxy.
 
 %package -n perl-Net-Libproxy
 Summary:        Perl bindings for libproxy
-Group:          Development/Libraries/Perl
+Group:          Development/Languages/Perl
 Requires:       libproxy1 = %{version}
 %if 0%{?perl_requires:1}
 %{perl_requires}
@@ -304,16 +272,10 @@
 %endif
 
 %description -n perl-Net-Libproxy
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
+libproxy is a library that provides automatic proxy configuration
+management.
 
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
-
-%if %{with mono}
+This package contains the Perl for libproxy.
 
 %package -n libproxy-sharp
 Summary:        .Net bindings for libproxy
@@ -321,17 +283,12 @@
 Requires:       libproxy1 = %{version}
 
 %description -n libproxy-sharp
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
+libproxy is a library that provides automatic proxy configuration
+management.
 
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
-%endif
+This package contains the Mono/.NET for libproxy.
 
-%endif
+%endif # build_core_not_modules
 
 %prep
 %setup -q -n %{_sourcename}
@@ -393,7 +350,7 @@
   -DWITH_GNOME3=ON \
 %endif
 ..
-%{__make} VERBOSE=1
+make VERBOSE=1
 
 %install
 cd build
@@ -426,7 +383,6 @@
 make test
 
 %if %build_core_not_modules
-
 %post -n libproxy1 -p /sbin/ldconfig
 
 %postun -n libproxy1 -p /sbin/ldconfig
@@ -460,7 +416,6 @@
 %endif
 
 %else
-
 %if ! 0%{?windows}
 %if 0%{?is_opensuse}
 %files -n libproxy1-config-kde
@@ -469,13 +424,11 @@
 %endif
 
 %if 0%{?favor_gtk2}
-
 %files -n libproxy1-config-gnome
 %defattr(-, root, root)
 %{_libdir}/libproxy-%{version}/modules/config_gnome.so
 %{_libexecdir}/libproxy-%{version}/pxgconf
 %else
-
 %files -n libproxy1-config-gnome3
 %defattr(-, root, root)
 %{_libdir}/libproxy-%{version}/modules/config_gnome3.so
@@ -513,7 +466,6 @@
 %{perl_vendorarch}/auto/Net/Libproxy/Libproxy.so
 
 %if %{with mono}
-
 %files -n libproxy-sharp
 %defattr(-, root, root)
 %{_assemblies_dir}/gac/libproxy-sharp

++++++ libproxy.spec ++++++
--- /var/tmp/diff_new_pack.AJUFAo/_old  2017-09-13 21:43:55.471474169 +0200
+++ /var/tmp/diff_new_pack.AJUFAo/_new  2017-09-13 21:43:55.471474169 +0200
@@ -23,24 +23,24 @@
 %else
 %bcond_with mono
 %endif
-
-Url:            http://code.google.com/p/libproxy/
 %define _name   libproxy
-
-Name:           libproxy
-Summary:        Libproxy provides consistent proxy configuration to 
applications
-License:        GPL-2.0+ and LGPL-2.1+
-Group:          System/Libraries
-Version:        0.4.14
-Release:        0
 %if 0%{?build_snapshot}
 %define _sourcename %{_name}
 %else
 %define _sourcename %{_name}-%{version}
 %endif
+%{!?python_sitelib:  %global python_sitelib  %(python -c "from 
distutils.sysconfig import get_python_lib; print(get_python_lib())")}
+%{!?python_sitearch: %global python_sitearch %(python -c "from 
distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
+%{!?_assemblies_dir: %global _assemblies_dir %(pkg-config cecil 
--variable=assemblies_dir)}
+Name:           libproxy
+Version:        0.4.15
+Release:        0
+Summary:        Automatic proxy configuration management for applications
+License:        GPL-2.0+ AND LGPL-2.1+
+Group:          Development/Libraries/C and C++
+Url:            http://code.google.com/p/libproxy/
 Source:         https://github.com/libproxy/%{_name}/archive/%{version}.tar.gz
 Source99:       baselibs.conf
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  cmake
 BuildRequires:  gcc-c++
 BuildRequires:  libmodman-devel
@@ -50,11 +50,15 @@
 BuildRequires:  zlib-devel
 %if !%{build_core_not_modules}
 %if ! 0%{?windows}
+BuildRequires:  NetworkManager-devel
 BuildRequires:  dbus-1-devel
 BuildRequires:  gconf2-devel
 # For directory ownership, but also because we want to rebuild the modules if
 # the library changed
 BuildRequires:  libproxy1 = %{version}
+BuildRequires:  perl
+BuildRequires:  python-devel
+BuildRequires:  python3-devel
 %if 0%{?favor_gtk2}
 BuildRequires:  pkgconfig(gconf-2.0)
 BuildRequires:  pkgconfig(gobject-2.0)
@@ -64,98 +68,74 @@
 BuildRequires:  pkgconfig(gobject-2.0)
 BuildRequires:  pkgconfig(javascriptcoregtk-4.0)
 %endif
-BuildRequires:  NetworkManager-devel
 %if 0%{?is_opensuse}
 BuildRequires:  libKF5ConfigCore5
 %endif
 %if %{build_mozjs}
-BuildRequires:  pkgconfig(mozjs185)
+BuildRequires:  pkgconfig(mozjs-38)
 %endif
 %if %{with mono}
 BuildRequires:  mono-devel
 %endif
-BuildRequires:  perl
-BuildRequires:  python-devel
-BuildRequires:  python3-devel
 %endif
 %endif
 
-%{!?python_sitelib:  %global python_sitelib  %(%__python -c "from 
distutils.sysconfig import get_python_lib; print(get_python_lib())")}
-%{!?python_sitearch: %global python_sitearch %(%__python -c "from 
distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
-%{!?_assemblies_dir: %global _assemblies_dir %(pkg-config cecil 
--variable=assemblies_dir)}
-
 %description
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
-
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
-
+libproxy is a library that provides automatic proxy configuration
+management.
 
 %if %build_core_not_modules
-
 %package tools
-Summary:        A simple application using libproxy
+Summary:        An example application using libproxy
 Group:          System/Libraries
 Requires:       libproxy1 = %{version}
 
 %description tools
-A simple application that will use libproxy to give the results you can
-expect from other applications. It can be used to debug what would
+An example application that will use libproxy to give the results that can
+be expected from other applications. It can be used to debug what would
 happen in various cases.
 
-
 %package devel
-Summary:        Libproxy provides consistent proxy configuration to 
applications - Development Files
+Summary:        Development files for libproxy, a library to do PAC/WPAD
 Group:          Development/Libraries/C and C++
 Requires:       libproxy1 = %{version}
 
 %description devel
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
-
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
+libproxy is a library that provides automatic proxy configuration
+management.
 
+This subpackage contains header files for developing applications
+that want to make use of libproxy.
 
 %package -n libproxy1
-Summary:        Libproxy provides consistent proxy configuration to 
applications
+Summary:        Automatic proxy configuration management for applications
 Group:          System/Libraries
 %if !%{build_mozjs}
 Obsoletes:      libproxy1-pacrunner-mozjs <= %{version}
 %endif
 
 %description -n libproxy1
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
+libproxy is a library that provides automatic proxy configuration
+management.
 
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
+Proxy autoconfiguration (PAC) requires JavaScript (which most
+applications do not have), and determing the PAC script location
+requires a WPAD protocol implementation, which complicate proxy
+support. libproxy exists to abstract this issue and provides
+an answer how to reach a certain network resource.
 
 %else
-
 %if 0%{?favor_gtk2}
-
 %package -n libproxy1-config-gnome
-
 Summary:        Libproxy module for GNOME configuration
 Group:          System/Libraries
 %else
-
 %package -n libproxy1-config-gnome3
 Summary:        Libproxy module for GNOME3 configuration
 Group:          System/Libraries
 %endif
 Requires:       libproxy1 = %{version}
+
 %if 0%{?suse_version}
 Recommends:     libproxy1-pacrunner = %{version}
 %if 0%{?favor_gtk2}
@@ -170,11 +150,9 @@
 Obsoletes:      libproxy-gnome < %{version}
 
 %if 0%{?favor_gtk2}
-
 %description -n libproxy1-config-gnome
 
 %else
-
 %description -n libproxy1-config-gnome3
 
 %endif
@@ -183,10 +161,14 @@
 
 %package -n libproxy1-config-kde
 Summary:        Libproxy module for KDE configuration
-Group:          System/Libraries
-Requires:       libproxy1 = %{version}
 # We don't really need the library, but this package brings kreadconfig5
+Group:          System/Libraries
 Requires:       libKF5ConfigCore5
+Requires:       libproxy1 = %{version}
+Provides:       libproxy-kde = %{version}
+Obsoletes:      libproxy-kde < %{version}
+# A generic KDE config loader was introduced in 0.4.12
+Obsoletes:      libproxy1-config-kde4 < 0.4.12
 # The kde plugin requires 'qtpaths', which is part of libqt5-qtpaths in TW / 
libqt5-qttools in older releases
 %if %{?suse_version} > 1320
 Requires:       libqt5-qtpaths
@@ -200,35 +182,31 @@
 %else
 Requires:       libproxy1-pacrunner = %{version}
 %endif
-Provides:       libproxy-kde = %{version}
-Obsoletes:      libproxy-kde < %{version}
-# A generic KDE config loader was introduced in 0.4.12
-Obsoletes:      libproxy1-config-kde4 < 0.4.12
 
 %description -n libproxy1-config-kde
 A module to extend libproxy with capabilities to query KDE4 about proxy
 settings.
 
-%if %{build_mozjs}
 %package -n libproxy1-pacrunner-mozjs
-Summary:        Libproxy module to support wpad/pac parsing via Mozilla 
JavaScript Engine
+Summary:        Libproxy module to support WPAD/PAC parsing via the Mozilla 
JavaScript Engine
 Group:          System/Libraries
 Requires:       libproxy1 = %{version}
+# A virtual symbol to identify that this is a pacrunner.
+Provides:       libproxy1-pacrunner = %{version}
 %if 0%{?suse_version}
 Supplements:    packageand(libproxy1:libmozjs185-1_0)
 %endif
-# A virtual symbol to identify that this is a pacrunner.
-Provides:       libproxy1-pacrunner = %{version}
 
 %description -n libproxy1-pacrunner-mozjs
 A module to extend libproxy with capabilities to pass addresses to a
 WPAD/PAC script and have it find the correct proxy.
-%endif
 
 %package -n libproxy1-pacrunner-webkit
-Summary:        Libproxy module to support WPAD/PAC parsing via WebKit 
JavaScript Engine
+Summary:        Libproxy module to support WPAD/PAC parsing via the WebKit 
JavaScript Engine
 Group:          System/Libraries
 Requires:       libproxy1 = %{version}
+# A virtual symbol to identify that this is a pacrunner.
+Provides:       libproxy1-pacrunner = %{version}
 %if 0%{?suse_version}
 %if 0%{?favor_gtk2}
 Supplements:    packageand(libproxy1:libjavascriptcoregtk-1_0-0)
@@ -236,8 +214,6 @@
 Supplements:    packageand(libproxy1:libjavascriptcoregtk-3_0-0)
 %endif
 %endif
-# A virtual symbol to identify that this is a pacrunner.
-Provides:       libproxy1-pacrunner = %{version}
 
 %description -n libproxy1-pacrunner-webkit
 A module to extend libproxy with capabilities to pass addresses to a
@@ -257,44 +233,36 @@
 
 %package -n python3-libproxy
 Summary:        Python3 bindings for libproxy
-Group:          System/Libraries
+Group:          Development/Languages/Python
+Requires:       libproxy1 = %{version}
 %if 0%{?suse_version} > 1110
 BuildArch:      noarch
 %endif
-Requires:       libproxy1 = %{version}
 
 %description -n python3-libproxy
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
+libproxy is a library that provides automatic proxy configuration
+management.
 
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
+This package contains the Python 3 bindings for libproxy.
 
 %package -n python-libproxy
 Summary:        Python bindings for libproxy
-Group:          System/Libraries
+Group:          Development/Languages/Python
+Requires:       libproxy1 = %{version}
 %if 0%{?suse_version} > 1110
 BuildArch:      noarch
 %py_requires
 %endif
-Requires:       libproxy1 = %{version}
 
 %description -n python-libproxy
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
+libproxy is a library that provides automatic proxy configuration
+management.
 
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
+This package contains the Python 2 bindings for libproxy.
 
 %package -n perl-Net-Libproxy
 Summary:        Perl bindings for libproxy
-Group:          Development/Libraries/Perl
+Group:          Development/Languages/Perl
 Requires:       libproxy1 = %{version}
 %if 0%{?perl_requires:1}
 %{perl_requires}
@@ -304,16 +272,10 @@
 %endif
 
 %description -n perl-Net-Libproxy
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
+libproxy is a library that provides automatic proxy configuration
+management.
 
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
-
-%if %{with mono}
+This package contains the Perl for libproxy.
 
 %package -n libproxy-sharp
 Summary:        .Net bindings for libproxy
@@ -321,17 +283,12 @@
 Requires:       libproxy1 = %{version}
 
 %description -n libproxy-sharp
-libproxy offers the following features: * extremely small core
-   footprint (< 35K)
+libproxy is a library that provides automatic proxy configuration
+management.
 
-* no external dependencies within libproxy core (libproxy modules
-   may have dependencies)
-* only 3 functions in the stable external API
-* dynamic adjustment to changing network topology
-* a standard way of dealing with proxy settings across all scenarios
-%endif
+This package contains the Mono/.NET for libproxy.
 
-%endif
+%endif # build_core_not_modules
 
 %prep
 %setup -q -n %{_sourcename}
@@ -393,7 +350,7 @@
   -DWITH_GNOME3=ON \
 %endif
 ..
-%{__make} VERBOSE=1
+make VERBOSE=1
 
 %install
 cd build
@@ -426,7 +383,6 @@
 make test
 
 %if %build_core_not_modules
-
 %post -n libproxy1 -p /sbin/ldconfig
 
 %postun -n libproxy1 -p /sbin/ldconfig
@@ -460,7 +416,6 @@
 %endif
 
 %else
-
 %if ! 0%{?windows}
 %if 0%{?is_opensuse}
 %files -n libproxy1-config-kde
@@ -469,13 +424,11 @@
 %endif
 
 %if 0%{?favor_gtk2}
-
 %files -n libproxy1-config-gnome
 %defattr(-, root, root)
 %{_libdir}/libproxy-%{version}/modules/config_gnome.so
 %{_libexecdir}/libproxy-%{version}/pxgconf
 %else
-
 %files -n libproxy1-config-gnome3
 %defattr(-, root, root)
 %{_libdir}/libproxy-%{version}/modules/config_gnome3.so
@@ -513,7 +466,6 @@
 %{perl_vendorarch}/auto/Net/Libproxy/Libproxy.so
 
 %if %{with mono}
-
 %files -n libproxy-sharp
 %defattr(-, root, root)
 %{_assemblies_dir}/gac/libproxy-sharp

++++++ 0.4.14.tar.gz -> 0.4.15.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.14/NEWS new/libproxy-0.4.15/NEWS
--- old/libproxy-0.4.14/NEWS    2017-01-09 15:22:22.000000000 +0100
+++ new/libproxy-0.4.15/NEWS    2017-05-11 11:33:33.000000000 +0200
@@ -1,3 +1,11 @@
+New in Version 0.4.15:
+==============================
+* Port to, and require, SpiderMonkey 38.
+* Fix "NetworkManager plugin not being built" (gh#libproxy/libproxy#53).
+* Fix "networkmanager plugin not working (gh#libproxy/libproxy#58).
+* Fix "Invalid read after free" (gh#libproxy/libproxy#59).
+* Fix intermittent unit test failures.
+
 New in Version 0.4.14:
 ==============================
 * Parallel build support for python2 and python3.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.14/cmake/paths.cmk 
new/libproxy-0.4.15/cmake/paths.cmk
--- old/libproxy-0.4.14/cmake/paths.cmk 2017-01-09 15:22:22.000000000 +0100
+++ new/libproxy-0.4.15/cmake/paths.cmk 2017-05-11 11:33:33.000000000 +0200
@@ -1,4 +1,4 @@
-if(WIN32)
+if(WIN32 AND NOT MINGW)
   set(CMAKE_INSTALL_PREFIX ""               CACHE PATH "Install prefix")
   set(BIN_INSTALL_DIR      .                CACHE PATH "Binary install dir")
   set(LIB_INSTALL_DIR      .                CACHE PATH "Library install dir")
@@ -6,7 +6,7 @@
   set(INCLUDE_INSTALL_DIR  include          CACHE PATH "Include install dir")
   set(SYSCONF_INSTALL_DIR  .                CACHE PATH "Configuration install 
dir")
   set(SHARE_INSTALL_DIR    .                CACHE PATH "Data install dir")
-else(WIN32)
+else(WIN32 AND NOT MINGW)
   set(CMAKE_INSTALL_PREFIX /usr/local       CACHE PATH "Install prefix")
   set(BIN_INSTALL_DIR      bin              CACHE PATH "Binary install dir")
   set(LIB_INSTALL_DIR      lib${LIB_SUFFIX} CACHE PATH "Library install dir")
@@ -14,4 +14,4 @@
   set(INCLUDE_INSTALL_DIR  include          CACHE PATH "Include install dir")
   set(SYSCONF_INSTALL_DIR  /etc             CACHE PATH "Configuration install 
dir")
   set(SHARE_INSTALL_DIR    share            CACHE PATH "Data install dir")
-endif(WIN32)
+endif(WIN32 AND NOT MINGW)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.14/libproxy/CMakeLists.txt 
new/libproxy-0.4.15/libproxy/CMakeLists.txt
--- old/libproxy-0.4.14/libproxy/CMakeLists.txt 2017-01-09 15:22:22.000000000 
+0100
+++ new/libproxy-0.4.15/libproxy/CMakeLists.txt 2017-05-11 11:33:33.000000000 
+0200
@@ -1,6 +1,6 @@
 ### Project info
 project(libproxy)
-set_project_version(0 4 14)
+set_project_version(0 4 15)
 
 ### Add a global compilation stuff
 if (WIN32)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.14/libproxy/cmake/devfiles.cmk 
new/libproxy-0.4.15/libproxy/cmake/devfiles.cmk
--- old/libproxy-0.4.14/libproxy/cmake/devfiles.cmk     2017-01-09 
15:22:22.000000000 +0100
+++ new/libproxy-0.4.15/libproxy/cmake/devfiles.cmk     2017-05-11 
11:33:33.000000000 +0200
@@ -1,4 +1,4 @@
-if(NOT WIN32)
+if(NOT WIN32 OR MINGW)
   # PkgConfig file
   set (PKGCONFIG_PREFIX ${CMAKE_INSTALL_PREFIX})
   
@@ -20,4 +20,4 @@
   # CMake Find helper
   configure_file(${CMAKE_SOURCE_DIR}/libproxy/Findlibproxy.cmake.in 
${CMAKE_BINARY_DIR}/Findlibproxy.cmake @ONLY)
   install(FILES ${CMAKE_BINARY_DIR}/Findlibproxy.cmake DESTINATION 
${SHARE_INSTALL_DIR}/cmake/Modules)
-endif()
+endif(NOT WIN32 OR MINGW)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libproxy-0.4.14/libproxy/cmake/modules/network_networkmanager.cmk 
new/libproxy-0.4.15/libproxy/cmake/modules/network_networkmanager.cmk
--- old/libproxy-0.4.14/libproxy/cmake/modules/network_networkmanager.cmk       
2017-01-09 15:22:22.000000000 +0100
+++ new/libproxy-0.4.15/libproxy/cmake/modules/network_networkmanager.cmk       
2017-05-11 11:33:33.000000000 +0200
@@ -1,6 +1,6 @@
 if (NOT WIN32 AND NOT APPLE)
   px_check_modules(NM libnm dbus-1)
   if (NOT NM_FOUND)
-    px_check_modules(NM NetworkManager dbus-1)
+    px_check_modules(NMold NetworkManager dbus-1)
   endif (NOT NM_FOUND)
 endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libproxy-0.4.14/libproxy/cmake/modules/pacrunner_mozjs.cmk 
new/libproxy-0.4.15/libproxy/cmake/modules/pacrunner_mozjs.cmk
--- old/libproxy-0.4.14/libproxy/cmake/modules/pacrunner_mozjs.cmk      
2017-01-09 15:22:22.000000000 +0100
+++ new/libproxy-0.4.15/libproxy/cmake/modules/pacrunner_mozjs.cmk      
2017-05-11 11:33:33.000000000 +0200
@@ -9,7 +9,7 @@
 elseif(NOT APPLE)
   option(WITH_MOZJS "Search for MOZJS package" ON)
   if (WITH_MOZJS)
-    pkg_search_module(MOZJS mozjs185)
+    pkg_search_module(MOZJS mozjs-38)
     if(MOZJS_FOUND)
       include_directories(${MOZJS_INCLUDE_DIRS})
       link_directories(${MOZJS_LIBRARY_DIRS})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.14/libproxy/cmake/modules.cmk 
new/libproxy-0.4.15/libproxy/cmake/modules.cmk
--- old/libproxy-0.4.14/libproxy/cmake/modules.cmk      2017-01-09 
15:22:22.000000000 +0100
+++ new/libproxy-0.4.15/libproxy/cmake/modules.cmk      2017-05-11 
11:33:33.000000000 +0200
@@ -38,7 +38,10 @@
 px_module(ignore_domain            1                 1)
 px_module(ignore_hostname          1                 1)
 px_module(ignore_ip                1                 1)
-px_module(network_networkmanager   "${NM_FOUND}"     0       ${NM_LIBRARIES})
+if(NM_FOUND OR NMold_FOUND)
+  set(NM_BUILD 1)
+endif(NM_FOUND OR NMold_FOUND)
+px_module(network_networkmanager   "${NM_BUILD}"     0       
${NM_LIBRARIES}${NMold_LIBRARIES})
 px_module(pacrunner_mozjs          "${MOZJS_FOUND}"  ${BIPR} 
${MOZJS_LIBRARIES})
 px_module(pacrunner_natus          "${NATUS_FOUND}"  ${BIPR} 
${NATUS_LIBRARIES})
 px_module(pacrunner_webkit         "${WEBKIT_FOUND}" ${BIPR} 
${WEBKIT_LIBRARIES})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libproxy-0.4.14/libproxy/modules/network_networkmanager.cpp 
new/libproxy-0.4.15/libproxy/modules/network_networkmanager.cpp
--- old/libproxy-0.4.14/libproxy/modules/network_networkmanager.cpp     
2017-01-09 15:22:22.000000000 +0100
+++ new/libproxy-0.4.15/libproxy/modules/network_networkmanager.cpp     
2017-05-11 11:33:33.000000000 +0200
@@ -62,7 +62,7 @@
 
                        // If connection was successful, set it up
                        dbus_connection_set_exit_on_disconnect(conn, false);
-                       dbus_bus_add_match(conn, "type='signal',interface='" 
NM_DBUS_INTERFACE "',member='StateChange'", NULL);
+                       dbus_bus_add_match(conn, "type='signal',interface='" 
NM_DBUS_INTERFACE "',member='StateChanged'", NULL);
                        dbus_connection_flush(conn);
                }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.14/libproxy/modules/pacrunner_mozjs.cpp 
new/libproxy-0.4.15/libproxy/modules/pacrunner_mozjs.cpp
--- old/libproxy-0.4.14/libproxy/modules/pacrunner_mozjs.cpp    2017-01-09 
15:22:22.000000000 +0100
+++ new/libproxy-0.4.15/libproxy/modules/pacrunner_mozjs.cpp    2017-05-11 
11:33:33.000000000 +0200
@@ -32,7 +32,11 @@
 #define XP_WIN
 #endif
 #endif
+#pragma GCC diagnostic ignored "-Winvalid-offsetof"
 #include <jsapi.h>
+#pragma GCC diagnostic error "-Winvalid-offsetof"
+#include <js/CallArgs.h>
+
 #include "pacutils.h"
 
 #ifndef INET_ADDRSTRLEN
@@ -43,15 +47,15 @@
 #define INET6_ADDRSTRLEN 46
 #endif
 
-static JSBool dnsResolve_(JSContext *cx, jsval hostname, jsval *vp) {
+static void dnsResolve_(JSContext *cx, JSString *hostname, JS::CallArgs *argv) 
{
        // Get hostname argument
-       char *tmp = JS_EncodeString(cx, JS_ValueToString(cx, hostname));
+       char *tmp = JS_EncodeString(cx, hostname);
 
        // Set the default return value
-       JS_SET_RVAL(cx, vp, JSVAL_NULL);
+       argv->rval().setNull();
 
        // Look it up
-       struct addrinfo *info = NULL;
+       struct addrinfo *info = nullptr;
        if (getaddrinfo(tmp, NULL, NULL, &info))
                goto out;
 
@@ -67,29 +71,32 @@
                                        NI_NUMERICHOST)) goto out;
 
        // We succeeded
-       JS_SET_RVAL(cx, vp, STRING_TO_JSVAL(JS_NewStringCopyN(cx, tmp, 
strlen(tmp))));
-       tmp = NULL;
+       argv->rval().setString(JS_NewStringCopyZ(cx, tmp));
+       tmp = nullptr;
 
        out:
                if (info) freeaddrinfo(info);
                JS_free(cx, tmp);
-               return true;
 }
 
-static JSBool dnsResolve(JSContext *cx, uintN /*argc*/, jsval *vp) {
-       jsval *argv = JS_ARGV(cx, vp);
-       return dnsResolve_(cx, argv[0], vp);
+static bool dnsResolve(JSContext *cx, unsigned argc, JS::Value *vp) {
+       JS::CallArgs argv=JS::CallArgsFromVp(argc,vp);
+       dnsResolve_(cx, argv[0].toString(), &argv);
+       return true;
 }
 
-static JSBool myIpAddress(JSContext *cx, uintN /*argc*/, jsval *vp) {
+static bool myIpAddress(JSContext *cx, unsigned argc, JS::Value *vp) {
+       JS::CallArgs argv=JS::CallArgsFromVp(argc,vp);
        char *hostname = (char *) JS_malloc(cx, 1024);
+
        if (!gethostname(hostname, 1023)) {
                JSString *myhost = JS_NewStringCopyN(cx, hostname, 
strlen(hostname));
-               jsval arg = STRING_TO_JSVAL(myhost);
-               return dnsResolve_(cx, arg, vp);
+               dnsResolve_(cx, myhost, &argv);
+       } else {
+               argv.rval().setNull();
        }
+
        JS_free(cx, hostname);
-       JS_SET_RVAL(cx, vp, JSVAL_NULL);
        return true;
 }
 
@@ -97,40 +104,48 @@
 // This MUST be a static global
 static JSClass cls = {
                "global", JSCLASS_GLOBAL_FLAGS,
-               JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, 
JS_StrictPropertyStub,
-               JS_EnumerateStub, JS_ResolveStub, JS_ConvertStub, 
JS_FinalizeStub,
-               NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL
 };
 
 class mozjs_pacrunner : public pacrunner {
 public:
        mozjs_pacrunner(string pac, const url& pacurl) throw (bad_alloc) : 
pacrunner(pac, pacurl) {
-               jsval     rval;
 
                // Set defaults
-               this->jsrun = NULL;
-               this->jsctx = NULL;
+               this->jsrun = nullptr;
+               this->jsctx = nullptr;
+               JS_Init();
 
                // Initialize Javascript runtime environment
                if (!(this->jsrun = JS_NewRuntime(1024 * 1024)))                
  goto error;
                if (!(this->jsctx = JS_NewContext(this->jsrun, 1024 * 1024)))   
  goto error;
-           //JS_SetOptions(this->jsctx, JSOPTION_VAROBJFIX);
-           //JS_SetVersion(this->jsctx, JSVERSION_LATEST);
-           //JS_SetErrorReporter(cx, reportError);
-               if (!(this->jsglb = 
JS_NewCompartmentAndGlobalObject(this->jsctx, &cls, NULL))) goto error;
-               if (!JS_InitStandardClasses(this->jsctx, this->jsglb))          
  goto error;
-
-               // Define Javascript functions
-               JS_DefineFunction(this->jsctx, this->jsglb, "dnsResolve", 
dnsResolve, 1, 0);
-               JS_DefineFunction(this->jsctx, this->jsglb, "myIpAddress", 
myIpAddress, 0, 0);
-               JS_EvaluateScript(this->jsctx, this->jsglb, JAVASCRIPT_ROUTINES,
-                                       strlen(JAVASCRIPT_ROUTINES), 
"pacutils.js", 0, &rval);
-
-               // Add PAC to the environment
-               JS_EvaluateScript(this->jsctx, this->jsglb, pac.c_str(),
-                                                       strlen(pac.c_str()), 
pacurl.to_string().c_str(), 0, &rval);
-               return;
-
+               {
+                       JS::RootedValue  rval(this->jsctx);
+                       JS::CompartmentOptions compart_opts;
+                       compart_opts.setVersion(JSVERSION_LATEST);
+
+                       this->jsglb = new 
JS::Heap<JSObject*>(JS_NewGlobalObject(
+                                                                 this->jsctx, 
&cls,
+                                                                 nullptr, 
JS::DontFireOnNewGlobalHook,
+                                                                 
compart_opts));
+
+                       if (!(this->jsglb)) goto error;
+                       JS::RootedObject global(this->jsctx,this->jsglb->get());
+                       if (!(this->jsac = new JSAutoCompartment(this->jsctx,  
global))) goto error;
+                       if (!JS_InitStandardClasses(this->jsctx, global))       
     goto error;
+
+                       // Define Javascript functions
+                       JS_DefineFunction(this->jsctx, global, "dnsResolve", 
dnsResolve, 1, 0);
+                       JS_DefineFunction(this->jsctx, global, "myIpAddress", 
myIpAddress, 0, 0);
+                       JS::CompileOptions options(this->jsctx);
+                       options.setUTF8(true);
+
+                       JS::Evaluate(this->jsctx, global, options, 
JAVASCRIPT_ROUTINES,
+                                    strlen(JAVASCRIPT_ROUTINES), &rval);
+
+                       // Add PAC to the environment
+                       JS::Evaluate(this->jsctx, global, options, pac.c_str(), 
pac.length(), &rval);
+                       return;
+               }
                error:
                        if (this->jsctx) JS_DestroyContext(this->jsctx);
                        if (this->jsrun) JS_DestroyRuntime(this->jsrun);
@@ -138,9 +153,11 @@
        }
 
        ~mozjs_pacrunner() {
+               if (this->jsac) delete this->jsac;
+               if (this->jsglb) delete this->jsglb;
                if (this->jsctx) JS_DestroyContext(this->jsctx);
                if (this->jsrun) JS_DestroyRuntime(this->jsrun);
-               // JS_ShutDown()?
+               JS_ShutDown();
        }
 
        string run(const url& url_) throw (bad_alloc) {
@@ -152,17 +169,17 @@
                        if (tmphost) JS_free(this->jsctx, tmphost);
                        throw bad_alloc();
                }
-               jsval args[2] = {
-                       STRING_TO_JSVAL(JS_NewStringCopyN(this->jsctx, tmpurl, 
strlen(tmpurl))),
-                       STRING_TO_JSVAL(JS_NewStringCopyN(this->jsctx, tmphost, 
strlen(tmphost)))
-               };
+               JS::AutoValueArray<2> args(this->jsctx);
+               args[0].setString(JS_NewStringCopyZ(this->jsctx, tmpurl));
+               args[1].setString(JS_NewStringCopyZ(this->jsctx, tmphost));
 
                // Find the proxy (call FindProxyForURL())
-               jsval rval;
-               JSBool result = JS_CallFunctionName(this->jsctx, this->jsglb, 
"FindProxyForURL", 2, args, &rval);
+               JS::RootedValue rval(this->jsctx);
+               JS::RootedObject global(this->jsctx,this->jsglb->get());
+               bool result = JS_CallFunctionName(this->jsctx, global, 
"FindProxyForURL", args, &rval);
                if (!result) return "";
                
-               char * tmpanswer = JS_EncodeString(this->jsctx, 
JS_ValueToString(this->jsctx, rval));
+               char * tmpanswer = JS_EncodeString(this->jsctx, 
rval.toString());
                string answer = string(tmpanswer);
                JS_free(this->jsctx, tmpanswer);
 
@@ -173,7 +190,8 @@
 private:
        JSRuntime *jsrun;
        JSContext *jsctx;
-       JSObject  *jsglb;
+       JS::Heap<JSObject*> *jsglb;
+       JSAutoCompartment *jsac;
 };
 
 PX_PACRUNNER_MODULE_EZ(mozjs, "JS_DefineFunction", "mozjs");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.14/libproxy/modules/wpad_dns_alias.cpp 
new/libproxy-0.4.15/libproxy/modules/wpad_dns_alias.cpp
--- old/libproxy-0.4.14/libproxy/modules/wpad_dns_alias.cpp     2017-01-09 
15:22:22.000000000 +0100
+++ new/libproxy-0.4.15/libproxy/modules/wpad_dns_alias.cpp     2017-05-11 
11:33:33.000000000 +0200
@@ -39,6 +39,7 @@
                lastpac = *pac = lasturl->get_pac();
                if (!lastpac) {
                    delete lasturl;
+                   lasturl = NULL;
                    return NULL;
                }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.14/libproxy/proxy.cpp 
new/libproxy-0.4.15/libproxy/proxy.cpp
--- old/libproxy-0.4.14/libproxy/proxy.cpp      2017-01-09 15:22:22.000000000 
+0100
+++ new/libproxy-0.4.15/libproxy/proxy.cpp      2017-05-11 11:33:33.000000000 
+0200
@@ -266,7 +266,7 @@
                        if (debug) {
                                if (configurator) {
                                        cerr << "Configuration extension is: " 
<< typeid(*configurator).name() << endl;
-                                       cerr << "Ingored list is: " << ignore 
<< endl;
+                                       cerr << "Ignored list is: " << ignore 
<< endl;
                                } else {
                                        cerr << "No configuration extension 
found." << endl;
                                }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.14/libproxy/test/get-pac-test.cpp 
new/libproxy-0.4.15/libproxy/test/get-pac-test.cpp
--- old/libproxy-0.4.14/libproxy/test/get-pac-test.cpp  2017-01-09 
15:22:22.000000000 +0100
+++ new/libproxy-0.4.15/libproxy/test/get-pac-test.cpp  2017-05-11 
11:33:33.000000000 +0200
@@ -119,6 +119,14 @@
 
                        csock = accept(m_sock, (sockaddr*) &addr, &len);
                        assert(csock > 0);
+                       // OSX/BSD may not have MSG_NOSIGNAL, try SO_NOSIGPIPE 
instead
+#ifndef MSG_NOSIGNAL
+#define        MSG_NOSIGNAL 0
+#ifdef SO_NOSIGPIPE
+                       int no_sig_pipe = 1;
+                       setsockopt(csock, SOL_SOCKET, SO_NOSIGPIPE, 
&no_sig_pipe, sizeof(int));
+#endif
+#endif
 
 #ifdef SO_NOSIGPIPE
                        int i = 1;
@@ -179,6 +187,7 @@
                        ret = send(csock, (void*)basic, strlen(basic), 0);
                        assert(ret == strlen(basic));
                        shutdown(csock, SHUT_RDWR);
+                       close(csock);
                }
 
                void sendTruncated(int csock)
@@ -193,6 +202,7 @@
                        ret = send(csock, (void*)basic, strlen(basic), 0);
                        assert(ret == strlen(basic));
                        shutdown(csock, SHUT_RDWR);
+                       close(csock);
                }
 
                void sendOverflow(int csock)
@@ -214,6 +224,7 @@
                                abort(); // Test failed... the socket should 
not accept the whole buffer
                        delete[] buf;
                        shutdown(csock, SHUT_RDWR);
+                       close(csock);
                }
 
                void sendChunked(int csock)
@@ -233,6 +244,7 @@
                        ret = send(csock, (void*)chunked, strlen(chunked), 0);
                        assert(ret == strlen(chunked));
                        shutdown(csock, SHUT_RDWR);
+                       close(csock);
                }
 
                void sendWithoutContentLength(int csock)
@@ -246,6 +258,7 @@
                        ret = send(csock, (void*)basic, strlen(basic), 0);
                        assert(ret == strlen(basic));
                        shutdown(csock, SHUT_RDWR);
+                       close(csock);
                }
 
                in_port_t m_port;


Reply via email to