Hello community,

here is the log from the commit of package libproxy for openSUSE:Factory 
checked in at 2016-05-05 12:11:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libproxy (Old)
 and      /work/SRC/openSUSE:Factory/.libproxy.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libproxy"

Changes:
--------
--- /work/SRC/openSUSE:Factory/libproxy/libproxy-plugins.changes        
2016-01-21 23:41:14.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.libproxy.new/libproxy-plugins.changes   
2016-05-05 12:11:03.000000000 +0200
@@ -1,0 +2,23 @@
+Thu Apr 28 16:54:40 UTC 2016 - [email protected]
+
+- Update to version 0.4.13:
+  + Allow linking webkit pacrunner against javascriptcore-4.0
+    (webkit2).
+  + Allow to disable building of the KDE module
+    (-DWITH_KDE=ON/OFF).
+  + Fix compilation errors with CLang on MacOSX.
+  + bindings: perl: Add an option to explicitly link against
+    libperl.so. Some distributions want to do it, other prefer not
+    to, the library is anyway in context of perl.
+  + config_kde: Add a basic cache and invalidation: performance
+    improvement for the KDE module.
+- Pass -DWITH_KDE=OFF to cmake when building core.
+- Replace pkgconfig(webkitgtk-3.0) BuildRequires with
+  pkgconfig(javascriptcoregtk-4.0): make use of the WebKit2 port.
+
+-------------------------------------------------------------------
+Thu Jan 14 11:56:33 UTC 2016 - [email protected]
+
+- Disable building libproxy-config-kde on SLE.
+
+-------------------------------------------------------------------
libproxy.changes: same change

Old:
----
  0.4.12.tar.gz

New:
----
  0.4.13.tar.gz

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

Other differences:
------------------
++++++ libproxy-plugins.spec ++++++
--- /var/tmp/diff_new_pack.jPNxRV/_old  2016-05-05 12:11:04.000000000 +0200
+++ /var/tmp/diff_new_pack.jPNxRV/_new  2016-05-05 12:11:04.000000000 +0200
@@ -31,7 +31,7 @@
 Summary:        Libproxy provides consistent proxy configuration to 
applications
 License:        GPL-2.0+ and LGPL-2.1+
 Group:          System/Libraries
-Version:        0.4.12
+Version:        0.4.13
 Release:        0
 # FIXME: verify if test suite works - 0.4.10 has weird behavior in some cases, 
where the internal server times out.
 %if 0%{?build_snapshot}
@@ -57,7 +57,7 @@
 BuildRequires:  gconf2-devel
 # For directory ownership, but also because we want to rebuild the modules if
 # the library changed
-BuildRequires:  libproxy1
+BuildRequires:  libproxy1 = %{version}
 %if 0%{?favor_gtk2}
 BuildRequires:  pkgconfig(gconf-2.0)
 BuildRequires:  pkgconfig(gobject-2.0)
@@ -65,10 +65,12 @@
 %else
 BuildRequires:  pkgconfig(gio-2.0) >= 2.26
 BuildRequires:  pkgconfig(gobject-2.0)
-BuildRequires:  pkgconfig(webkitgtk-3.0)
+BuildRequires:  pkgconfig(javascriptcoregtk-4.0)
 %endif
 BuildRequires:  NetworkManager-devel
+%if 0%{?is_opensuse}
 BuildRequires:  libKF5ConfigCore5
+%endif
 %if %{build_mozjs}
 BuildRequires:  pkgconfig(mozjs185)
 %endif
@@ -202,7 +204,6 @@
 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
@@ -349,6 +350,7 @@
   -DWITH_DOTNET=OFF \
   -DWITH_PERL=OFF \
   -DWITH_PYTHON=OFF \
+  -DWITH_KDE=OFF \
 %endif
 %if 0%{?suse_version} && 0%{?suse_version} < 1120
   -DCMAKE_BUILD_TYPE=DebugFull \
@@ -434,10 +436,11 @@
 %else
 
 %if ! 0%{?windows}
-
+%if 0%{?is_opensuse}
 %files -n libproxy1-config-kde
 %defattr(-, root, root)
 %{_libdir}/libproxy-%{version}/modules/config_kde.so
+%endif
 
 %if 0%{?favor_gtk2}
 

++++++ libproxy.spec ++++++
--- /var/tmp/diff_new_pack.jPNxRV/_old  2016-05-05 12:11:04.000000000 +0200
+++ /var/tmp/diff_new_pack.jPNxRV/_new  2016-05-05 12:11:04.000000000 +0200
@@ -31,7 +31,7 @@
 Summary:        Libproxy provides consistent proxy configuration to 
applications
 License:        GPL-2.0+ and LGPL-2.1+
 Group:          System/Libraries
-Version:        0.4.12
+Version:        0.4.13
 Release:        0
 # FIXME: verify if test suite works - 0.4.10 has weird behavior in some cases, 
where the internal server times out.
 %if 0%{?build_snapshot}
@@ -57,7 +57,7 @@
 BuildRequires:  gconf2-devel
 # For directory ownership, but also because we want to rebuild the modules if
 # the library changed
-BuildRequires:  libproxy1
+BuildRequires:  libproxy1 = %{version}
 %if 0%{?favor_gtk2}
 BuildRequires:  pkgconfig(gconf-2.0)
 BuildRequires:  pkgconfig(gobject-2.0)
@@ -65,10 +65,12 @@
 %else
 BuildRequires:  pkgconfig(gio-2.0) >= 2.26
 BuildRequires:  pkgconfig(gobject-2.0)
-BuildRequires:  pkgconfig(webkitgtk-3.0)
+BuildRequires:  pkgconfig(javascriptcoregtk-4.0)
 %endif
 BuildRequires:  NetworkManager-devel
+%if 0%{?is_opensuse}
 BuildRequires:  libKF5ConfigCore5
+%endif
 %if %{build_mozjs}
 BuildRequires:  pkgconfig(mozjs185)
 %endif
@@ -202,7 +204,6 @@
 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
@@ -349,6 +350,7 @@
   -DWITH_DOTNET=OFF \
   -DWITH_PERL=OFF \
   -DWITH_PYTHON=OFF \
+  -DWITH_KDE=OFF \
 %endif
 %if 0%{?suse_version} && 0%{?suse_version} < 1120
   -DCMAKE_BUILD_TYPE=DebugFull \
@@ -434,10 +436,11 @@
 %else
 
 %if ! 0%{?windows}
-
+%if 0%{?is_opensuse}
 %files -n libproxy1-config-kde
 %defattr(-, root, root)
 %{_libdir}/libproxy-%{version}/modules/config_kde.so
+%endif
 
 %if 0%{?favor_gtk2}
 

++++++ 0.4.12.tar.gz -> 0.4.13.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/.travis.yml 
new/libproxy-0.4.13/.travis.yml
--- old/libproxy-0.4.12/.travis.yml     1970-01-01 01:00:00.000000000 +0100
+++ new/libproxy-0.4.13/.travis.yml     2016-04-28 19:04:41.000000000 +0200
@@ -0,0 +1,35 @@
+language: cpp
+
+os:
+  - linux
+  - osx
+
+compiler:
+  - clang
+  - gcc
+
+matrix:
+  allow_failures:
+    - os: osx
+
+install:
+# create /etc/sysconfig so that the build process enables this module (build 
test)
+  - |
+    if [[ "$TRAVIS_OS_NAME" = "linux" ]]; then
+      sudo mkdir /etc/sysconfig
+      sudo apt-get -qq update
+      sudo apt-get install -y libjavascriptcoregtk-3.0-dev
+    fi
+
+script:
+  - |
+    cmake .           \
+    -DWITH_PERL=ON    \
+    -DWITH_PYTHON=ON  \
+    -DWITH_GNOME3=ON  \
+    -DWITH_KDE=ON     \
+    -DWITH_WEBKIT3=ON \
+    -DBIPR=0
+  - make
+  - sudo make install
+  - make test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/INSTALL new/libproxy-0.4.13/INSTALL
--- old/libproxy-0.4.12/INSTALL 2016-01-12 17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/INSTALL 2016-04-28 19:04:41.000000000 +0200
@@ -84,6 +84,11 @@
                         in the vendor directory, which is the one used by most
                         packagers.
 
+PERL_LINK_LIBPERL:      Default to ON if PERL_VENDORINSTALL is OFF, default to
+                        OFF otherwise. Explicitly links the Perl binding
+                        against libperl.so. It must be ON for linking to work
+                        when --no-undefined is passed to the linker.
+
 WITH_DOTNET:            Default to OFF. Enable Mono .NET bindings.
 
 WITH_GNOME:             Default to ON. Enable Gnome2/GConf bindings.
@@ -91,7 +96,10 @@
 WITH_GNOME3:            Default to ON. Build the Gnome3/GSettings bindings.
                         instead of Gnome2/GConf based one.
 
-WITH_KDE4:              Default to ON. Enables KDE4/Kconf bindings.
+WITH_KDE:               Default to ON. Enables plug-in to read proxy settings
+                        from either KDE4 or KDE Frameworks 5.
+                        Note: this plug-in only has a *runtime* dependency on
+                        either kreadconfig or kreadconfig5.
 
 WITH_MOZJS:             Default to ON. Enable Mozilla javascript bindings. As
                         Mozilla Javascript engine is often installed multiple
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/NEWS new/libproxy-0.4.13/NEWS
--- old/libproxy-0.4.12/NEWS    2016-01-12 17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/NEWS    2016-04-28 19:04:41.000000000 +0200
@@ -1,3 +1,15 @@
+New in Version 0.4.13
+==============================
+* Allow linking webkit pacrunner against javascriptcore-4.0
+  (webkit2).
+* Allow to disable building of the KDE module (-DWITH_KDE=ON/OFF).
+* Fix compilation errors with CLang on MacOSX.
+* bindings: perl: Add an option to explicitly link against libperl.so
+  Some distributions want to do it, other prefer not to, the library
+  is anyway in context of perl.
+* config_kde: Add a basic cache and invalidation: performance improvement
+  for the KDE module.
+
 New in version 0.4.12
 ==============================
 * Move development to github.com/libproxy/libproxy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/bindings/perl/CMakeLists.txt 
new/libproxy-0.4.13/bindings/perl/CMakeLists.txt
--- old/libproxy-0.4.12/bindings/perl/CMakeLists.txt    2016-01-12 
17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/bindings/perl/CMakeLists.txt    2016-04-28 
19:04:41.000000000 +0200
@@ -10,6 +10,19 @@
     # Some distributions install perl packages in vendor when shipped with the 
distro.
     # Let's make their lifes easier by offering an install flag for this 
usecase.
     option(PERL_VENDORINSTALL "Install Perl package in vendor directory" OFF)
+
+    # Offer an option to explicitly link against libperl.so, with a default
+    # that depends on the value of the PERL_VENDORINSTALL option: if the
+    # binding is installed into a version-independent directory such as
+    # vendor_perl the chances of it needing a rebuild on each Perl update are
+    # lower. Note: not linking against libperl.so does not work if
+    # --no-undefined is passed to the linker.
+    if(PERL_VENDORINSTALL)
+        option(PERL_LINK_LIBPERL "Explicitly link against libperl.so" OFF)
+    else()
+        option(PERL_LINK_LIBPERL "Explicitly link against libperl.so" ON)
+    endif()
+
     if(PERL_VENDORINSTALL)
       set (PX_PERL_ARCH ${PERL_VENDORARCH})
       set (PX_PERL_LIB ${PERL_VENDORLIB})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/bindings/perl/src/CMakeLists.txt 
new/libproxy-0.4.13/bindings/perl/src/CMakeLists.txt
--- old/libproxy-0.4.12/bindings/perl/src/CMakeLists.txt        2016-01-12 
17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/bindings/perl/src/CMakeLists.txt        2016-04-28 
19:04:41.000000000 +0200
@@ -12,7 +12,12 @@
 set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/perl/blib/arch/auto/Net)
 add_library(PLlibproxy SHARED ${Libproxy_LIB_SRCS})
 
-target_link_libraries(PLlibproxy libproxy pthread)
+set(PLlibproxy_LIB_DEPENDENCIES libproxy pthread)
+if(PERL_LINK_LIBPERL)
+  set(PLlibproxy_LIB_DEPENDENCIES ${PERL_LIBRARY} 
${PLlibproxy_LIB_DEPENDENCIES})
+endif()
+
+target_link_libraries(PLlibproxy ${PLlibproxy_LIB_DEPENDENCIES})
 set_target_properties(PLlibproxy PROPERTIES OUTPUT_NAME "Libproxy")
 set_target_properties(PLlibproxy PROPERTIES PREFIX "")
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/bindings/python/libproxy.py 
new/libproxy-0.4.13/bindings/python/libproxy.py
--- old/libproxy-0.4.12/bindings/python/libproxy.py     2016-01-12 
17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/bindings/python/libproxy.py     2016-04-28 
19:04:41.000000000 +0200
@@ -40,8 +40,12 @@
 else:
     _libc = _load("c", 6)
 
+_libc.free.argtypes = ctypes.c_void_p,
+
 # Load libproxy
 _libproxy = _load("proxy", 1)
+_libproxy.px_proxy_factory_new.restype = ctypes.POINTER(ctypes.c_void_p)
+_libproxy.px_proxy_factory_free.argtypes = ctypes.c_void_p,
 _libproxy.px_proxy_factory_get_proxies.restype = 
ctypes.POINTER(ctypes.c_void_p)
 
 class ProxyFactory(object):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/libproxy/CMakeLists.txt 
new/libproxy-0.4.13/libproxy/CMakeLists.txt
--- old/libproxy-0.4.12/libproxy/CMakeLists.txt 2016-01-12 17:41:07.000000000 
+0100
+++ new/libproxy-0.4.13/libproxy/CMakeLists.txt 2016-04-28 19:04:41.000000000 
+0200
@@ -1,6 +1,6 @@
 ### Project info
 project(libproxy)
-set_project_version(0 4 12)
+set_project_version(0 4 13)
 
 ### Add a global compilation stuff
 if (WIN32)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libproxy-0.4.12/libproxy/cmake/modules/config_kde.cmk 
new/libproxy-0.4.13/libproxy/cmake/modules/config_kde.cmk
--- old/libproxy-0.4.12/libproxy/cmake/modules/config_kde.cmk   2016-01-12 
17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/libproxy/cmake/modules/config_kde.cmk   2016-04-28 
19:04:41.000000000 +0200
@@ -1,6 +1,4 @@
-find_program(KDE4_CONF kreadconfig)
-find_program(KF5_CONF kreadconfig5)
+option(WITH_KDE "Build module to read proxy settings from KDE4/KF5" ON)
 
-if (KDE4_CONF OR KF5_CONF)
-  set(KDE_FOUND 1)
-endif()
+# There are no additional detections; kreadconfig (from KDE4) and kreadconfig5
+# (from KF5) are only needed at runtime.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libproxy-0.4.12/libproxy/cmake/modules/pacrunner_webkit.cmk 
new/libproxy-0.4.13/libproxy/cmake/modules/pacrunner_webkit.cmk
--- old/libproxy-0.4.12/libproxy/cmake/modules/pacrunner_webkit.cmk     
2016-01-12 17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/libproxy/cmake/modules/pacrunner_webkit.cmk     
2016-04-28 19:04:41.000000000 +0200
@@ -13,11 +13,14 @@
   endif()
 else()
   if(WITH_WEBKIT3)
-    px_check_modules(WEBKIT "javascriptcoregtk-3.0 >= 1.5.0")
+    px_check_modules(WEBKIT "javascriptcoregtk-4.0")
     if(NOT WEBKIT_LIBRARIES)
-      px_check_modules(WEBKIT "webkitgtk-3.0 < 1.5.0")
+      px_check_modules(WEBKIT "javascriptcoregtk-3.0 >= 1.5.0")
+      if(NOT WEBKIT_LIBRARIES)
+        px_check_modules(WEBKIT "webkitgtk-3.0 < 1.5.0")
+      endif(NOT WEBKIT_LIBRARIES)
     endif(NOT WEBKIT_LIBRARIES)
-  else()
+  else(WITH_WEBKIT3)
     px_check_modules(WEBKIT webkit-1.0)
   endif()
 endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/libproxy/cmake/modules.cmk 
new/libproxy-0.4.13/libproxy/cmake/modules.cmk
--- old/libproxy-0.4.12/libproxy/cmake/modules.cmk      2016-01-12 
17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/libproxy/cmake/modules.cmk      2016-04-28 
19:04:41.000000000 +0200
@@ -32,7 +32,7 @@
 px_module(config_sysconfig         "${SYSCONFIG_FOUND}" 1)
 px_module(config_gnome             "${GNOME2_FOUND}" 0)
 px_module(config_gnome3            "${GNOME3_FOUND}" 0)
-px_module(config_kde               "${KDE_FOUND}"    0)
+px_module(config_kde               "${WITH_KDE}"     0)
 px_module(config_macosx            "${SC_FOUND}"     1       ${SC_LIBRARIES} 
${CF_LIBRARIES})
 px_module(config_w32reg            "${WIN32}"        1)
 px_module(ignore_domain            1                 1)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/libproxy/modules/config_kde.cpp 
new/libproxy-0.4.13/libproxy/modules/config_kde.cpp
--- old/libproxy-0.4.12/libproxy/modules/config_kde.cpp 2016-01-12 
17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/libproxy/modules/config_kde.cpp 2016-04-28 
19:04:41.000000000 +0200
@@ -18,9 +18,13 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 
USA
  
******************************************************************************/
 
+#include <sys/stat.h>
+#include <unistd.h>
+
 #include <algorithm>
 #include <cstdlib>
 #include <cstdio>
+#include <sstream>
 
 #include "../extension_config.hpp"
 using namespace libproxy;
@@ -28,11 +32,18 @@
 class kde_config_extension : public config_extension {
 public:
     kde_config_extension()
+        : cache_time(0)
     {
         try {
             // Try the KF5 one first
             command = "kreadconfig5";
-            kde_config_val("proxyType", "-1");
+            command_output("kreadconfig5 --key nonexistant");
+
+            try {
+                parse_dir_list(command_output("qtpaths --paths 
GenericConfigLocation"));
+            }
+            catch(...) {}
+
             return; // Worked
         }
         catch(...) {}
@@ -40,7 +51,13 @@
         try {
             // The KDE4 one next
             command = "kreadconfig";
-            kde_config_val("proxyType", "-1");
+            command_output(command);
+
+            try {
+                parse_dir_list(command_output("kde4-config --path config"));
+            }
+            catch(...) {}
+
             return; // Worked
         }
         catch(...) {}
@@ -117,11 +134,7 @@
        }
 
 private:
-    // Neither key nor def must contain '
-    string kde_config_val(const string &key, const string &def) throw 
(runtime_error) {
-        string cmdline =
-                command + " --file kioslaverc --group 'Proxy Settings' --key 
'" + key + "' --default '" + def + "'";
-
+    string command_output(const string &cmdline) throw (runtime_error) {
         FILE *pipe = popen(cmdline.c_str(), "r");
         if (!pipe)
             throw runtime_error("Unable to run command");
@@ -129,19 +142,84 @@
         char buffer[128];
         string result = "";
         while (!feof(pipe)) {
-         if (fgets(buffer, 128, pipe) != NULL)
-             result += buffer; // TODO: If this throws bad_alloc, pipe is 
leaked
+            if (fgets(buffer, 128, pipe) != NULL)
+                result += buffer; // TODO: If this throws bad_alloc, pipe is 
leaked
         }
 
-        pclose(pipe);
+        if(pclose(pipe) != 0)
+            throw runtime_error("Command failed");
 
         // Trim newlines and whitespace at end
         result.erase(result.begin() + (result.find_last_not_of(" \n\t")+1), 
result.end());
+
         return result;
     }
 
+    // Neither key nor def must contain '
+    string kde_config_val(const string &key, const string &def) throw 
(runtime_error) {
+        if (cache_needs_refresh())
+            cache.clear();
+        else
+            try {
+                // Already in cache?
+                return cache.at(key);
+            } catch(...) {} // Not in cache
+
+        string result = command_output(
+                command + " --file kioslaverc --group 'Proxy Settings' --key 
'" + key + "' --default '" + def + "'");
+
+        // Add result to cache
+        cache[key] = result;
+
+        return result;
+    }
+
+    // Used for cache invalidation
+    struct configfile {
+        string path;
+        time_t mtime; // 0 means it doesn't exist
+    };
+
+    // Parses output of qtpaths/kde4-config to fill config_locs
+    void parse_dir_list(const string &dirs) {
+        string config_path;
+        stringstream config_paths_stream(dirs);
+
+        // Try each of the listed folders, seperated by ':'
+        while (getline(config_paths_stream, config_path, ':')) {
+            configfile config_loc; config_loc.path = config_path + 
"/kioslaverc";
+            config_locs.push_back(config_loc);
+        }
+    }
+
+    // If any of the locations in config_locs changed (different mtime),
+    // update config_locs and return true.
+    bool cache_needs_refresh() {
+        // Play safe here, if we can't determine the location,
+        // don't cache at all.
+        bool needs_refresh = config_locs.empty();
+        struct stat config_info;
+
+        for (unsigned int i = 0; i < config_locs.size(); ++i) {
+            configfile &config = config_locs[i];
+            time_t current_mtime = stat(config.path.c_str(), &config_info) == 
0 ? config_info.st_mtime : 0;
+            if (config.mtime != current_mtime) {
+                config.mtime = current_mtime;
+                needs_refresh = true;
+            }
+        }
+
+        return needs_refresh;
+    }
+
     // Whether to use kreadconfig or kreadconfig5
     string command;
+    // When the cache was flushed last
+    time_t cache_time;
+    // Cache for config values
+    map<string, string> cache;
+    // State of the config files at the time of the last cache flush
+    vector<configfile> config_locs;
 };
 
 MM_MODULE_INIT_EZ(kde_config_extension, getenv("KDE_FULL_SESSION"), NULL, 
NULL);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/libproxy/modules/ignore_ip.cpp 
new/libproxy-0.4.13/libproxy/modules/ignore_ip.cpp
--- old/libproxy-0.4.12/libproxy/modules/ignore_ip.cpp  2016-01-12 
17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/libproxy/modules/ignore_ip.cpp  2016-04-28 
19:04:41.000000000 +0200
@@ -147,7 +147,7 @@
                        else
                        {
                                /* If CIDR notation was used, get the netmask */
-                               if (sscanf(mask.c_str(), "%d", &cidr) == 1)
+                               if (ign_ip && sscanf(mask.c_str(), "%d", &cidr) 
== 1)
                                        net_ip = 
sockaddr_from_cidr(ign_ip->sa_family, cidr);
                        }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/libproxy/modules/pacrunner_natus.cpp 
new/libproxy-0.4.13/libproxy/modules/pacrunner_natus.cpp
--- old/libproxy-0.4.12/libproxy/modules/pacrunner_natus.cpp    2016-01-12 
17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/libproxy/modules/pacrunner_natus.cpp    2016-04-28 
19:04:41.000000000 +0200
@@ -43,14 +43,14 @@
                                        NULL, 0,
                                        NI_NUMERICHOST)) {
                        freeaddrinfo(info);
-                       delete tmp;
+                       delete[] tmp;
                        return NULL;
                }
        freeaddrinfo(info);
 
        // Create the return value
        Value ret = ths.newString(tmp);
-       delete tmp;
+       delete[] tmp;
        return ret;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libproxy-0.4.12/libproxy/modules/pacrunner_webkit.cpp 
new/libproxy-0.4.13/libproxy/modules/pacrunner_webkit.cpp
--- old/libproxy-0.4.12/libproxy/modules/pacrunner_webkit.cpp   2016-01-12 
17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/libproxy/modules/pacrunner_webkit.cpp   2016-04-28 
19:04:41.000000000 +0200
@@ -58,7 +58,7 @@
        struct addrinfo *info;
        if (getaddrinfo(tmp, NULL, NULL, &info))
                return NULL;
-       delete tmp;
+       delete[] tmp;
 
        // Try for IPv4
        tmp = new char[INET6_ADDRSTRLEN+1];
@@ -67,7 +67,7 @@
                                        NULL, 0,
                                        NI_NUMERICHOST)) {
                        freeaddrinfo(info);
-                       delete tmp;
+                       delete[] tmp;
                        return NULL;
                }
        freeaddrinfo(info);
@@ -76,7 +76,7 @@
        JSStringRef str = JSStringCreateWithUTF8CString(tmp);
        JSValueRef  ret = JSValueMakeString(ctx, str);
        JSStringRelease(str);
-       delete tmp;
+       delete[] tmp;
 
        return ret;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libproxy-0.4.12/libproxy/test/get-pac-test.cpp 
new/libproxy-0.4.13/libproxy/test/get-pac-test.cpp
--- old/libproxy-0.4.12/libproxy/test/get-pac-test.cpp  2016-01-12 
17:41:07.000000000 +0100
+++ new/libproxy-0.4.13/libproxy/test/get-pac-test.cpp  2016-04-28 
19:04:41.000000000 +0200
@@ -5,9 +5,11 @@
 
 #include <stdlib.h> // for abort()
 #include <errno.h>  // for EINTR
+#include <sys/types.h>
 #include <sys/socket.h>
 #include <netinet/in.h>
 #include <arpa/inet.h>
+#include <sys/select.h>
 #include <unistd.h>
 #include <string.h>
 #include <pthread.h>
@@ -34,7 +36,7 @@
                        int i = 1;
 
                        addr.sin_family = AF_INET;
-                       inet_aton("127.0.0.1", &addr.sin_addr);
+                       addr.sin_addr.s_addr = inet_addr("127.0.0.1");
                        addr.sin_port = ntohs(m_port);
 
                        if (m_sock != -1)


Reply via email to