blob: 7eeb0f1921b99276f26a992f323e0832ccd25f73 (
about) (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
Fix the build with gtkmm 4:
https://github.com/transmission/transmission/issues/6392
Patch copied from upstream source repository:
https://github.com/transmission/transmission/commit/e116672b27b314d54514c96b1fa7aef1dee900b1
From e116672b27b314d54514c96b1fa7aef1dee900b1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?C=C5=93ur?= <coeur@gmx.fr>
Date: Sun, 17 Dec 2023 16:37:35 +0100
Subject: [PATCH] fix: build error on GTKMM-4 (#6393)
---
gtk/OptionsDialog.cc | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/gtk/OptionsDialog.cc b/gtk/OptionsDialog.cc
index 08198540c10..8c28fc76f98 100644
--- a/gtk/OptionsDialog.cc
+++ b/gtk/OptionsDialog.cc
@@ -338,7 +338,16 @@ void TorrentFileChooserDialog::onOpenDialogResponse(int response, Glib::RefPtr<S
bool const do_prompt = get_choice(std::string(ShowOptionsDialogChoice)) == "true";
bool const do_notify = false;
- auto const files = IF_GTKMM4(get_files2, get_files)();
+#if GTKMM_CHECK_VERSION(4, 0, 0)
+ auto files = std::vector<Glib::RefPtr<Gio::File>>();
+ auto files_model = get_files();
+ for (auto i = guint{ 0 }; i < files_model->get_n_items(); ++i)
+ {
+ files.push_back(gtr_ptr_dynamic_cast<Gio::File>(files_model->get_object(i)));
+ }
+#else
+ auto const files = get_files();
+#endif
g_assert(!files.empty());
/* remember this folder the next time we use this dialog */
|