# HG changeset patch # User Stanislas Leduc # Date 1730814397 0 # Node ID b37d8510dda9dcac2a6de1f1f40bd6b3ed99119a # Parent 45e49949a2081fe2cf90e9b148bd1444dda31a6d Add miss stuff folder for libxml++, dbus-c++ diff -r 45e49949a208 -r b37d8510dda9 dbus-c++/stuff/dbus-c++-0.9.0-copy_data_from_received_message.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dbus-c++/stuff/dbus-c++-0.9.0-copy_data_from_received_message.patch Tue Nov 05 13:46:37 2024 +0000 @@ -0,0 +1,27 @@ +From 2a770f61c060d19f7fe118c2a066306fa3e9ec3d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Th=C3=A9o=20Goudout?= +Date: Thu, 1 Aug 2019 08:24:29 +0000 +Subject: [PATCH] Fix assert fail when copying data from received message + +--- + src/message.cpp | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/message.cpp b/src/message.cpp +index 3f0cac4..1c4caab 100644 +--- a/src/message.cpp ++++ b/src/message.cpp +@@ -350,7 +350,9 @@ void MessageIter::copy_data(MessageIter &to) + ( + (DBusMessageIter *) & (to._iter), + from.type(), +- from.type() == DBUS_TYPE_VARIANT ? NULL : sig, ++ (from.type() == DBUS_TYPE_STRUCT || from.type() == DBUS_TYPE_DICT_ENTRY) ++ ? NULL ++ : sig, + (DBusMessageIter *) & (to_container._iter) + ); + +-- +2.22.0 + diff -r 45e49949a208 -r b37d8510dda9 dbus-c++/stuff/dbus-c++-0.9.0-disable-threading.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dbus-c++/stuff/dbus-c++-0.9.0-disable-threading.patch Tue Nov 05 13:46:37 2024 +0000 @@ -0,0 +1,45 @@ +--- libdbus-c++-0.9.0/include/dbus-c++/dispatcher.h.threading 2017-02-15 13:40:53.796004263 +0000 ++++ libdbus-c++-0.9.0/include/dbus-c++/dispatcher.h 2017-02-15 13:40:46.907000493 +0000 +@@ -188,6 +188,7 @@ + /* classes for multithreading support + */ + ++#if 0 + class DXXAPI Mutex + { + public: +@@ -243,9 +244,11 @@ + typedef bool (*CondVarWaitTimeoutFn)(CondVar *cv, Mutex *mx, int timeout); + typedef void (*CondVarWakeOneFn)(CondVar *cv); + typedef void (*CondVarWakeAllFn)(CondVar *cv); ++#endif + + void DXXAPI _init_threading(); + ++#if 0 + void DXXAPI _init_threading( + MutexNewFn, MutexFreeFn, MutexLockFn, MutexUnlockFn, + CondVarNewFn, CondVarFreeFn, CondVarWaitFn, CondVarWaitTimeoutFn, CondVarWakeOneFn, CondVarWakeAllFn +@@ -312,6 +315,7 @@ + cv->wake_all(); + } + }; ++#endif + + } /* namespace DBus */ + +--- libdbus-c++-0.9.0/src/dispatcher.cpp.threading 2017-02-15 13:48:22.627249868 +0000 ++++ libdbus-c++-0.9.0/src/dispatcher.cpp 2017-02-15 13:48:29.164253445 +0000 +@@ -253,6 +253,7 @@ + #endif//DBUS_HAS_THREADS_INIT_DEFAULT + } + ++#if 0 + void DBus::_init_threading( + MutexNewFn m1, + MutexFreeFn m2, +@@ -318,3 +319,4 @@ + #endif//DBUS_HAS_RECURSIVE_MUTEX + dbus_threads_init(&functions); + } ++#endif diff -r 45e49949a208 -r b37d8510dda9 dbus-c++/stuff/dbus-c++-0.9.0-fix-writechar.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dbus-c++/stuff/dbus-c++-0.9.0-fix-writechar.patch Tue Nov 05 13:46:37 2024 +0000 @@ -0,0 +1,9 @@ +--- libdbus-c++-0.9.0/src/pipe.cpp.writechar 2017-02-16 11:07:13.591950169 +0000 ++++ libdbus-c++-0.9.0/src/pipe.cpp 2017-02-16 11:04:17.158796092 +0000 +@@ -83,5 +83,5 @@ + void Pipe::signal() + { + // TODO: ignoring return of read/write generates warning; maybe relevant for eventloop work... +- ::write(_fd_write, '\0', 1); ++ ::write(_fd_write, "", 1); + } diff -r 45e49949a208 -r b37d8510dda9 dbus-c++/stuff/dbus-c++-0.9.0-gcc47.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dbus-c++/stuff/dbus-c++-0.9.0-gcc47.patch Tue Nov 05 13:46:37 2024 +0000 @@ -0,0 +1,10 @@ +--- src/eventloop-integration.cpp.orig 2012-05-09 11:22:09.683290763 +0200 ++++ src/eventloop-integration.cpp 2012-05-09 11:22:44.313288912 +0200 +@@ -38,6 +38,7 @@ + #include + #include + #include ++#include + + using namespace DBus; + using namespace std; diff -r 45e49949a208 -r b37d8510dda9 dbus-c++/stuff/dbus-c++-0.9.0-template-operators.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dbus-c++/stuff/dbus-c++-0.9.0-template-operators.patch Tue Nov 05 13:46:37 2024 +0000 @@ -0,0 +1,88 @@ +commit a0b9ef3b469ca23c6a3229d8abb967cbbddcee38 +Author: Peter Williams +Date: Sat Dec 19 21:12:46 2015 -0500 + + Fix some weird template/operator issues on OS X. + + I frankly don't understand at all what's going on here. These fixes + derive from: + + https://chromium.googlesource.com/chromiumos/third_party/dbus-cplusplus/+/c3f69f6be02e31521474dce7eadf6ba4f4a7ce94 + https://chromium.googlesource.com/chromiumos/third_party/dbus-cplusplus/+/7104857773f790a549d399715482fa23d9b736cd + + Except I've dropped some changes that break the OS X build for me. Frankly, if + it compiles, that's good enough for me. + +diff --git a/include/dbus-c++/types.h b/include/dbus-c++/types.h +index 044e72b..7b3108f 100644 +--- a/include/dbus-c++/types.h ++++ b/include/dbus-c++/types.h +@@ -89,13 +89,7 @@ public: + } + + template +- operator T() const +- { +- T cast; +- MessageIter ri = _msg.reader(); +- ri >> cast; +- return cast; +- } ++ operator T() const; + + private: + +@@ -316,7 +310,7 @@ struct type< Struct> (DBus::MessageIter &iter, DBus::Signature + return ++iter; + } + ++extern DXXAPI DBus::MessageIter &operator >> (DBus::MessageIter &iter, DBus::Variant &val); ++ + template + inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, std::vector& val) + { +@@ -644,7 +640,16 @@ inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, DBus::Struct> (DBus::MessageIter &iter, DBus::Variant &val); ++template ++inline DBus::Variant::operator T() const ++{ ++ T cast; ++ DBus::MessageIter ri = _msg.reader(); ++ ri >> cast; ++ return cast; ++} ++ ++} /* namespace DBus */ + + #endif//__DBUSXX_TYPES_H + +diff --git a/src/types.cpp b/src/types.cpp +index d414a3e..70f9ac0 100644 +--- a/src/types.cpp ++++ b/src/types.cpp +@@ -34,7 +34,7 @@ + #include "message_p.h" + #include "internalerror.h" + +-using namespace DBus; ++namespace DBus { + + Variant::Variant() + : _msg(CallMessage()) // dummy message used as temporary storage for variant data +@@ -104,3 +104,4 @@ MessageIter &operator >> (MessageIter &iter, Variant &val) + return ++iter; + } + ++} /* namespace DBus */ diff -r 45e49949a208 -r b37d8510dda9 libxml++/stuff/build_with_gcc6.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libxml++/stuff/build_with_gcc6.patch Tue Nov 05 13:46:37 2024 +0000 @@ -0,0 +1,28 @@ +--- a/libxml++/io/istreamparserinputbuffer.cc ++++ b/libxml++/io/istreamparserinputbuffer.cc +@@ -39,6 +39,6 @@ + + bool IStreamParserInputBuffer::do_close() + { +- return input_; ++ return bool(input_); + } + } +--- a/libxml++/io/ostreamoutputbuffer.cc ++++ b/libxml++/io/ostreamoutputbuffer.cc +@@ -29,13 +29,13 @@ + // here we rely on the ostream implicit conversion to boolean, to know if the stream can be used and/or if the write succeded. + if(output_) + output_.write(buffer, len); +- return output_; ++ return bool(output_); + } + + bool OStreamOutputBuffer::do_close() + { + if(output_) + output_.flush(); +- return output_; ++ return bool(output_); + } + }