Skip to content

Commit 37fc053

Browse files
authored
Merge pull request #9185 from nextcloud/backport/9183/stable-3.17
[stable-3.17] fix(linux/crash): fix crash in cloud provider integration
2 parents 50bf90c + 4a9d7bc commit 37fc053

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

src/gui/cloudproviders/cloudproviderwrapper.cpp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121

2222
using namespace OCC;
2323

24+
Q_LOGGING_CATEGORY(lcNextcloudCloudProviderIntegration, "nextcloud.cloudprovider.integration", QtInfoMsg)
25+
2426
GSimpleActionGroup *actionGroup = nullptr;
2527

2628
int CloudProviderWrapper::preferredTextWidth = 0;
@@ -55,6 +57,11 @@ CloudProviderWrapper::CloudProviderWrapper(QObject *parent, Folder *folder, int
5557
g_clear_object (&action_group);
5658
}
5759

60+
void mainMenuWasDeleted(gpointer data, GObject *where_the_object_was)
61+
{
62+
qCDebug(lcNextcloudCloudProviderIntegration) << "I was deleted" << data << where_the_object_was;
63+
}
64+
5865
CloudProviderWrapper::~CloudProviderWrapper()
5966
{
6067
g_object_unref(_cloudProviderAccount);
@@ -219,6 +226,8 @@ GMenuModel* CloudProviderWrapper::getMenuModel() {
219226
QString item_label;
220227

221228
_mainMenu = g_menu_new();
229+
g_object_ref(_mainMenu);
230+
g_object_weak_ref(reinterpret_cast<GObject*>(_mainMenu), mainMenuWasDeleted, this);
222231

223232
section = g_menu_new();
224233
item = addMenuItem(tr("Open website"), "cloudprovider.openwebsite");

0 commit comments

Comments
 (0)