Hello community,

here is the log from the commit of package libfilezilla for openSUSE:Factory 
checked in at 2018-06-20 15:34:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libfilezilla (Old)
 and      /work/SRC/openSUSE:Factory/.libfilezilla.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libfilezilla"

Wed Jun 20 15:34:19 2018 rev:18 rq:617867 version:0.12.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/libfilezilla/libfilezilla.changes        
2018-05-10 15:48:37.942951690 +0200
+++ /work/SRC/openSUSE:Factory/.libfilezilla.new/libfilezilla.changes   
2018-06-20 15:34:20.087593434 +0200
@@ -1,0 +2,9 @@
+Tue Jun 19 21:59:57 UTC 2018 - [email protected]
+
+- update to 0.12.3
+  * New features:
+    - Event handlers can now removed themselves while inside 
+      a callback
+    - Added fz::query_string::pairs()
+
+-------------------------------------------------------------------

Old:
----
  libfilezilla-0.12.2.tar.bz2

New:
----
  libfilezilla-0.12.3.tar.bz2

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

Other differences:
------------------
++++++ libfilezilla.spec ++++++
--- /var/tmp/diff_new_pack.RD1Q8c/_old  2018-06-20 15:34:21.843529719 +0200
+++ /var/tmp/diff_new_pack.RD1Q8c/_new  2018-06-20 15:34:21.847529574 +0200
@@ -20,10 +20,10 @@
 %define libname                %{name}%{major}
 %define develname      %{name}-devel
 Name:           libfilezilla
-Version:        0.12.2
+Version:        0.12.3
 Release:        0
 Summary:        C++ library for filezilla
-License:        GPL-2.0+
+License:        GPL-2.0-or-later
 Group:          Development/Libraries/C and C++
 Url:            https://lib.filezilla-project.org/
 Source0:        
http://download.filezilla-project.org/libfilezilla/%{name}-%{version}.tar.bz2

++++++ libfilezilla-0.12.2.tar.bz2 -> libfilezilla-0.12.3.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libfilezilla-0.12.2/NEWS new/libfilezilla-0.12.3/NEWS
--- old/libfilezilla-0.12.2/NEWS        2018-05-06 11:47:12.000000000 +0200
+++ new/libfilezilla-0.12.3/NEWS        2018-06-08 17:43:23.000000000 +0200
@@ -1,3 +1,8 @@
+0.12.3 (2018-06-08)
+
++ Event handlers can now removed themselves while inside a callback
++ Added fz::query_string::pairs()
+
 0.12.2 (2018-05-05)
 
 + Added parameters to base64_encode to control alphabet and padding
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libfilezilla-0.12.2/configure 
new/libfilezilla-0.12.3/configure
--- old/libfilezilla-0.12.2/configure   2018-05-06 11:22:50.000000000 +0200
+++ new/libfilezilla-0.12.3/configure   2018-06-08 17:43:27.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for libfilezilla 0.12.2.
+# Generated by GNU Autoconf 2.69 for libfilezilla 0.12.3.
 #
 # Report bugs to <[email protected]>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='libfilezilla'
 PACKAGE_TARNAME='libfilezilla'
-PACKAGE_VERSION='0.12.2'
-PACKAGE_STRING='libfilezilla 0.12.2'
+PACKAGE_VERSION='0.12.3'
+PACKAGE_STRING='libfilezilla 0.12.3'
 PACKAGE_BUGREPORT='[email protected]'
 PACKAGE_URL='https://lib.filezilla-project.org/'
 
@@ -1413,7 +1413,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures libfilezilla 0.12.2 to adapt to many kinds of systems.
+\`configure' configures libfilezilla 0.12.3 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1484,7 +1484,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of libfilezilla 0.12.2:";;
+     short | recursive ) echo "Configuration of libfilezilla 0.12.3:";;
    esac
   cat <<\_ACEOF
 
@@ -1621,7 +1621,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-libfilezilla configure 0.12.2
+libfilezilla configure 0.12.3
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2066,7 +2066,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by libfilezilla $as_me 0.12.2, which was
+It was created by libfilezilla $as_me 0.12.3, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2932,7 +2932,7 @@
 
 # Define the identity of the package.
  PACKAGE='libfilezilla'
- VERSION='0.12.2'
+ VERSION='0.12.3'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -20908,7 +20908,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by libfilezilla $as_me 0.12.2, which was
+This file was extended by libfilezilla $as_me 0.12.3, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -20975,7 +20975,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-libfilezilla config.status 0.12.2
+libfilezilla config.status 0.12.3
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libfilezilla-0.12.2/configure.ac 
new/libfilezilla-0.12.3/configure.ac
--- old/libfilezilla-0.12.2/configure.ac        2018-05-06 11:22:43.000000000 
+0200
+++ new/libfilezilla-0.12.3/configure.ac        2018-06-08 17:43:23.000000000 
+0200
@@ -1,4 +1,4 @@
-AC_INIT([libfilezilla],[0.12.2],[[email protected]],[],[https://lib.filezilla-project.org/])
+AC_INIT([libfilezilla],[0.12.3],[[email protected]],[],[https://lib.filezilla-project.org/])
 AC_CONFIG_HEADERS([lib/libfilezilla/private/config.hpp])
 AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_AUX_DIR(config)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libfilezilla-0.12.2/lib/event_loop.cpp 
new/libfilezilla-0.12.3/lib/event_loop.cpp
--- old/libfilezilla-0.12.2/lib/event_loop.cpp  2017-09-29 10:41:58.000000000 
+0200
+++ new/libfilezilla-0.12.3/lib/event_loop.cpp  2018-06-08 17:43:23.000000000 
+0200
@@ -72,10 +72,14 @@
                deadline_ = monotonic_clock();
        }
 
-       while (active_handler_ == handler) {
-               l.unlock();
-               sleep(duration::from_milliseconds(1));
-               l.lock();
+       if (active_handler_ == handler) {
+               if (fz::thread::own_id() != thread_id_) {
+                       while (active_handler_ == handler) {
+                               l.unlock();
+                               sleep(duration::from_milliseconds(1));
+                               l.lock();
+                       }
+               }
        }
 }
 
@@ -164,6 +168,8 @@
 
 void event_loop::entry()
 {
+       thread_id_ = thread::own_id();
+
        monotonic_clock now;
 
        scoped_lock l(sync_);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libfilezilla-0.12.2/lib/libfilezilla/event_handler.hpp 
new/libfilezilla-0.12.3/lib/libfilezilla/event_handler.hpp
--- old/libfilezilla-0.12.2/lib/libfilezilla/event_handler.hpp  2016-07-20 
10:41:55.000000000 +0200
+++ new/libfilezilla-0.12.3/lib/libfilezilla/event_handler.hpp  2018-06-08 
17:43:23.000000000 +0200
@@ -67,20 +67,18 @@
         * When function returns, handler is not in its callback anymore.
         *
         * \warning You _MUST_ call remove_handler no later than inside the 
destructor of the most derived class.
-        *
-        *  This may deadlock if a handler removes itself inside its own 
callback.
         */
        void remove_handler();
 
        /** \brief Called by the event loop in the worker thread with the event 
to process
         *
         * Override in your derived class.
-        * 
+        *
         * Consider using \ref dispatch inside your function.
         */
        virtual void operator()(event_base const&) = 0;
 
-       /* \brief Sends the passed event asynchronously to the handler.
+       /** \brief Sends the passed event asynchronously to the handler.
         *
         * Can be called from any thread.
         *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libfilezilla-0.12.2/lib/libfilezilla/event_loop.hpp 
new/libfilezilla-0.12.3/lib/libfilezilla/event_loop.hpp
--- old/libfilezilla-0.12.2/lib/libfilezilla/event_loop.hpp     2016-04-15 
09:52:15.000000000 +0200
+++ new/libfilezilla-0.12.3/lib/libfilezilla/event_loop.hpp     2018-06-08 
17:43:23.000000000 +0200
@@ -102,6 +102,8 @@
        monotonic_clock deadline_;
 
        timer_id next_timer_id_{};
+
+       thread::id thread_id_{};
 };
 
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libfilezilla-0.12.2/lib/libfilezilla/thread.hpp 
new/libfilezilla-0.12.3/lib/libfilezilla/thread.hpp
--- old/libfilezilla-0.12.2/lib/libfilezilla/thread.hpp 2017-10-30 
18:14:16.000000000 +0100
+++ new/libfilezilla-0.12.3/lib/libfilezilla/thread.hpp 2018-06-08 
17:43:23.000000000 +0200
@@ -3,6 +3,10 @@
 
 #include "libfilezilla.hpp"
 
+#ifndef FZ_WINDOWS
+#include <thread>
+#endif
+
 /** \file
  * \brief Declares \ref fz::thread "thread"
  */
@@ -25,6 +29,12 @@
 class FZ_PUBLIC_SYMBOL thread
 {
 public:
+#ifdef FZ_WINDOWS
+       typedef uint32_t id;
+#else
+       typedef std::thread::id id;
+#endif
+
        thread() = default;
 
        /** \brief Calls \c std::abort if the thread has not been joined.
@@ -58,6 +68,9 @@
         */
        bool joinable() const;
 
+       /// Returns unique id of the thread calling the function
+       static id own_id();
+
 protected:
        /// The thread's entry point, override in your derived class.
        virtual void entry() = 0;
@@ -67,7 +80,6 @@
        friend class impl;
        impl* impl_{};
 };
-
 }
 
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libfilezilla-0.12.2/lib/libfilezilla/uri.hpp 
new/libfilezilla-0.12.3/lib/libfilezilla/uri.hpp
--- old/libfilezilla-0.12.2/lib/libfilezilla/uri.hpp    2018-02-16 
12:47:48.000000000 +0100
+++ new/libfilezilla-0.12.3/lib/libfilezilla/uri.hpp    2018-06-08 
17:43:23.000000000 +0200
@@ -106,8 +106,9 @@
        void remove(std::string const& key);
        std::string& operator[](std::string const& key);
 
-private:
+       std::map<std::string, std::string, fz::less_insensitive_ascii> const& 
pairs() const { return segments_; }
 
+private:
        std::map<std::string, std::string, fz::less_insensitive_ascii> 
segments_;
 };
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libfilezilla-0.12.2/lib/libfilezilla/version.hpp 
new/libfilezilla-0.12.3/lib/libfilezilla/version.hpp
--- old/libfilezilla-0.12.2/lib/libfilezilla/version.hpp        2018-05-06 
11:22:53.000000000 +0200
+++ new/libfilezilla-0.12.3/lib/libfilezilla/version.hpp        2018-06-08 
17:43:30.000000000 +0200
@@ -9,15 +9,15 @@
 
 #include <tuple>
 /// \brief Version string of the libfilezilla headers
-#define LIBFILEZILLA_VERSION "0.12.2"
+#define LIBFILEZILLA_VERSION "0.12.3"
 
 #define LIBFILEZILLA_VERSION_MAJOR  0
 #define LIBFILEZILLA_VERSION_MINOR  12
-#define LIBFILEZILLA_VERSION_MICRO  2
+#define LIBFILEZILLA_VERSION_MICRO  3
 #define LIBFILEZILLA_VERSION_NANO   0
 
 /// \brief Suffix string, e.g. "rc1"
-#define LIBFILEZILLA_VERSION_SUFFIX "0.12.2"
+#define LIBFILEZILLA_VERSION_SUFFIX "0.12.3"
 
 namespace fz {
 /// \brief Get version string of libfilezilla
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libfilezilla-0.12.2/lib/thread.cpp 
new/libfilezilla-0.12.3/lib/thread.cpp
--- old/libfilezilla-0.12.2/lib/thread.cpp      2017-10-30 18:14:16.000000000 
+0100
+++ new/libfilezilla-0.12.3/lib/thread.cpp      2018-06-08 17:43:23.000000000 
+0200
@@ -105,6 +105,11 @@
        }
 }
 
+thread::id thread::own_id()
+{
+       return static_cast<id>(GetCurrentThreadId());
+}
+
 #else
 
 // Canonical implentation for everyone else
@@ -163,6 +168,11 @@
        }
 }
 
+thread::id thread::own_id()
+{
+       return std::this_thread::get_id();
+}
+
 #endif
 
 thread::~thread()


Reply via email to