Hello community,

here is the log from the commit of package jsoncpp for openSUSE:Factory checked 
in at 2020-06-24 15:38:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/jsoncpp (Old)
 and      /work/SRC/openSUSE:Factory/.jsoncpp.new.2956 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "jsoncpp"

Wed Jun 24 15:38:35 2020 rev:26 rq: version:1.9.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/jsoncpp/jsoncpp.changes  2020-06-23 
21:03:16.721587932 +0200
+++ /work/SRC/openSUSE:Factory/.jsoncpp.new.2956/jsoncpp.changes        
2020-06-24 15:38:40.645902670 +0200
@@ -2,16 +1,0 @@
-Fri Jun 19 06:00:24 UTC 2020 - Martin Pluskal <[email protected]>
-
-- Update to version 1.9.3"
-  * Fixes to JSON_USE_EXCEPTION--some bugs creeped in breaking this
-    flag in pre-release.
-  * Fixes to build system--improvements have been make for code
-    correctness.
-  * Compile errors for various platforms have been resolved.
-  * Fuzzing has been fixed.
-  * Various bugs in the Reader and Writer code have been corrected.
-  * CPPTL support has been dropped.
-  * Various code improvements and optimizations.
-- Drop no longer needed patch:
-  * jsoncpp-f11611c8785082ead760494cba06196f14a06dcb.patch
-
--------------------------------------------------------------------

Old:
----
  jsoncpp-1.9.3.tar.gz

New:
----
  jsoncpp-1.9.2.tar.gz
  jsoncpp-f11611c8785082ead760494cba06196f14a06dcb.patch

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

Other differences:
------------------
++++++ jsoncpp.spec ++++++
--- /var/tmp/diff_new_pack.ODa3u4/_old  2020-06-24 15:38:49.189929579 +0200
+++ /var/tmp/diff_new_pack.ODa3u4/_new  2020-06-24 15:38:49.193929591 +0200
@@ -16,15 +16,17 @@
 #
 
 
-%define sover   24
+%define sover   22
 Name:           jsoncpp
-Version:        1.9.3
+Version:        1.9.2
 Release:        0
 Summary:        C++ library that allows manipulating with JSON
 License:        MIT
 Group:          Development/Libraries/C and C++
 URL:            https://github.com/open-source-parsers/jsoncpp
 Source0:        
https://github.com/open-source-parsers/%{name}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
+# PATCH-FIX-UPSTREAM - 
https://github.com/open-source-parsers/jsoncpp/commit/f11611c8785082ead760494cba06196f14a06dcb
+Patch1:         jsoncpp-f11611c8785082ead760494cba06196f14a06dcb.patch
 BuildRequires:  gcc-c++
 BuildRequires:  meson >= 0.50.0
 BuildRequires:  pkgconfig
@@ -67,10 +69,11 @@
 format to store user input files.
 
 %prep
-%autosetup
+%setup -q
+%patch1 -p1
 
 %build
-%meson
+%meson \
 %meson_build
 
 %install

++++++ jsoncpp-1.9.3.tar.gz -> jsoncpp-1.9.2.tar.gz ++++++
++++ 3925 lines of diff (skipped)

++++++ jsoncpp-f11611c8785082ead760494cba06196f14a06dcb.patch ++++++
>From f11611c8785082ead760494cba06196f14a06dcb Mon Sep 17 00:00:00 2001
From: Andrew Childs <[email protected]>
Date: Sat, 28 Dec 2019 16:04:24 +0900
Subject: [PATCH] json_writer: fix inverted sense in isAnyCharRequiredQuoting
 (#1120)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This bug is only affects platforms where `char` is unsigned.

When char is a signed type, values >= 0x80 are also considered < 0,
and hence require escaping due to the < ' ' condition.

When char is an unsigned type, values >= 0x80 match none of the
conditions and are considered safe to emit without escaping.

This shows up as a test failure:

* Detail of EscapeSequenceTest/writeEscapeSequence test failure:
/build/source/src/test_lib_json/main.cpp(3370): expected == result
  Expected: '["\"","\\","\b","\f","\n","\r","\t","\u0278","\ud852\udf62"]
  '
  Actual  : '["\"","\\","\b","\f","\n","\r","\t","ɸ","𤭢"]
  '
---
 src/lib_json/json_writer.cpp | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/lib_json/json_writer.cpp b/src/lib_json/json_writer.cpp
index 8e06cca2..56195dc1 100644
--- a/src/lib_json/json_writer.cpp
+++ b/src/lib_json/json_writer.cpp
@@ -178,8 +178,9 @@ static bool isAnyCharRequiredQuoting(char const* s, size_t 
n) {
 
   char const* const end = s + n;
   for (char const* cur = s; cur < end; ++cur) {
-    if (*cur == '\\' || *cur == '\"' || *cur < ' ' ||
-        static_cast<unsigned char>(*cur) < 0x80)
+    if (*cur == '\\' || *cur == '\"' ||
+        static_cast<unsigned char>(*cur) < ' ' ||
+        static_cast<unsigned char>(*cur) >= 0x80)
       return true;
   }
   return false;

Reply via email to