From 697a9c54995d281145a24123409c78bded6c3487 Mon Sep 17 00:00:00 2001 From: Heinz Wiesinger Date: Sun, 13 Mar 2016 17:52:10 +0100 Subject: libraries/libdbus-c++: Fix bug concerning nested variant maps. Signed-off-by: Heinz Wiesinger --- libraries/libdbus-c++/libdbus-c++.SlackBuild | 8 ++++++-- libraries/libdbus-c++/nested_variant_map.patch | 11 +++++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 libraries/libdbus-c++/nested_variant_map.patch diff --git a/libraries/libdbus-c++/libdbus-c++.SlackBuild b/libraries/libdbus-c++/libdbus-c++.SlackBuild index ec529a9e2f..391ed3ec42 100644 --- a/libraries/libdbus-c++/libdbus-c++.SlackBuild +++ b/libraries/libdbus-c++/libdbus-c++.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for libdbus-c++ -# Copyright 2013 Heinz Wiesinger, Amsterdam, The Netherlands +# Copyright 2013-2016 Heinz Wiesinger, Amsterdam, The Netherlands # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -24,7 +24,7 @@ PRGNAM=libdbus-c++ VERSION=0.9.0 -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -69,8 +69,12 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; +# Fix compiling with newer gcc versions patch -p0 -i $CWD/gcc47.patch +# Fix https://sourceforge.net/p/dbus-cplusplus/bugs/5/ +patch -p1 -i $CWD/nested_variant_map.patch + LDFLAGS="-lpthread" \ CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ diff --git a/libraries/libdbus-c++/nested_variant_map.patch b/libraries/libdbus-c++/nested_variant_map.patch new file mode 100644 index 0000000000..8b41ed3a3a --- /dev/null +++ b/libraries/libdbus-c++/nested_variant_map.patch @@ -0,0 +1,11 @@ +--- libdbus-c++-0.9.0/src/message.cpp 2016-02-20 12:15:52.069704535 +0100 ++++ libdbus-c++-0.9.0-patch/src/message.cpp 2016-02-20 12:31:34.159854472 +0100 +@@ -347,6 +347,7 @@ + ( + (DBusMessageIter *) & (to._iter), + from.type(), +- from.type() == DBUS_TYPE_VARIANT ? NULL : sig, ++ from.type() == DBUS_TYPE_DICT_ENTRY || ++ from.type() == DBUS_TYPE_STRUCT ? NULL : sig, + (DBusMessageIter *) & (to_container._iter) + ); -- cgit v1.2.3