summaryrefslogtreecommitdiff
path: root/freefilesync/06_icon_loader.patch
diff options
context:
space:
mode:
Diffstat (limited to 'freefilesync/06_icon_loader.patch')
-rw-r--r--freefilesync/06_icon_loader.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/freefilesync/06_icon_loader.patch b/freefilesync/06_icon_loader.patch
new file mode 100644
index 0000000..14035d5
--- /dev/null
+++ b/freefilesync/06_icon_loader.patch
@@ -0,0 +1,21 @@
+Summary: Solve libglib2.0 problem in sketchy manner
+Date: 2022-05-24
+Version: 11.21
+Author: bgstack15
+Message:
+Warning! I have absolutely no idea what I am doing. Check https://freefilesync.org/forum/viewtopic.php?t=8780 for future developments.
+In Devuan Ceres, starting in 2021-08 with libglib2.0-0=2.68.3-2 the file icon_loader.cpp fails to compile. By removing the static_cast, this file can compile. The built application throws all sorts of GLib-GObject-CRITICIAL messages but the application operates.
+Downgrade to "deb [check-valid-until=no] https://snapshot.debian.org/archive/debian/20210801T144205Z/ unstable main non-free contrib" in /etc/apt/sources.list and install the exact libglib version necessary to compile without this patch.
+$ sudo apt-get -V install libglib2.0-0=2.66.8-1 libglib2.0-bin=2.66.8-1 libglib2.0-data=2.66.8-1 libglib2.0-dev=2.66.8-1 libglib2.0-dev-bin=2.66.8-1 libglib2.0-0:i386=2.66.8-1
+Zenju tried addressing this for me, but it still does not compile, even with g++-12. So I still have to omit this macro call.
+--- 11.21-0/FreeFileSync/Source/base/icon_loader.cpp 2022-05-22 17:09:32.234809499 -0400
++++ 11.21-1/FreeFileSync/Source/base/icon_loader.cpp 2022-05-24 08:59:15.433965993 -0400
+@@ -216,7 +216,7 @@
+ //the remaining icon types won't block!
+ assert(GDK_IS_PIXBUF(gicon) || G_IS_THEMED_ICON(gicon) || G_IS_EMBLEMED_ICON(gicon));
+
+- ::g_object_ref(gicon); //pass ownership
++ //::g_object_ref(gicon); //pass ownership
+ return FileIconHolder(gicon, maxSize); //
+
+ }
bgstack15