network-manager-applet: fix crash in connection editor.
This commit is contained in:
parent
e77b5f4184
commit
e61630a65d
|
@ -0,0 +1,52 @@
|
||||||
|
From da6b2bb94250d8ffb218caf921c9df8c394372d4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Beniamino Galvani <bgalvani@redhat.com>
|
||||||
|
Date: Mon, 15 Feb 2021 14:15:20 +0100
|
||||||
|
Subject: [PATCH] editor: fix crash when evaluating secondaries
|
||||||
|
|
||||||
|
The compound literal goes out of scope when the enclosing block
|
||||||
|
ends. Replace it with an array on the stack.
|
||||||
|
|
||||||
|
0 __strlen_avx2 () at ../sysdeps/x86_64/multiarch/strlen-avx2.S:65
|
||||||
|
1 0x00007ffff73eba44 in g_strdup (str=0x6c15375cc4e4b600 <error: Cannot access memory at address 0x6c15375cc4e4b600>)
|
||||||
|
2 0x00007ffff73ed42d in g_strdupv (str_array=0x7fffffffc520) at ../../../glib/gstrfuncs.c:2552
|
||||||
|
3 0x00007ffff74b9b70 in boxed_proxy_collect_value (value=0x7fffffffc350, n_collect_values=<optimized out>, collect_values=<optimized out>, collect_flags=<optimized out>)
|
||||||
|
4 0x00007ffff74c49fc in g_object_set_valist (object=0x555555a02780 [NMSettingConnection], first_property_name=<optimized out>, var_args=0x7fffffffc400)
|
||||||
|
5 0x00007ffff74c52fc in g_object_set (_object=0x555555a02780, first_property_name=first_property_name@entry=0x5555555a3471 "secondaries")
|
||||||
|
6 0x0000555555580ff8 in ui_to_setting (self=<optimized out>) at ../src/connection-editor/page-general.c:421
|
||||||
|
7 ce_page_validate_v (page=<optimized out>, connection=<optimized out>, error=0x7fffffffc5c0) at ../src/connection-editor/page-general.c:450
|
||||||
|
8 0x0000555555569313 in ce_page_validate (self=0x555555898f20 [CEPageGeneral], connection=connection@entry=0x5555557fe840, error=error@entry=0x7fffffffc5c0) at ../src/connection-editor/ce-page.c:161
|
||||||
|
9 0x000055555557343b in connection_editor_validate (editor=0x555555a2a840 [NMConnectionEditor]) at ../src/connection-editor/nm-connection-editor.c:357
|
||||||
|
[...]
|
||||||
|
|
||||||
|
Fixes: 768eb7dfa974 ("c-e: fix initializing drop-down list for connection.secondaries")
|
||||||
|
|
||||||
|
https://gitlab.gnome.org/GNOME/network-manager-applet/-/issues/125
|
||||||
|
---
|
||||||
|
src/connection-editor/page-general.c | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/connection-editor/page-general.c b/src/connection-editor/page-general.c
|
||||||
|
index 358582ff..794407d6 100644
|
||||||
|
--- a/src/connection-editor/page-general.c
|
||||||
|
+++ b/src/connection-editor/page-general.c
|
||||||
|
@@ -392,7 +392,7 @@ static void
|
||||||
|
ui_to_setting (CEPageGeneral *self)
|
||||||
|
{
|
||||||
|
CEPageGeneralPrivate *priv = CE_PAGE_GENERAL_GET_PRIVATE (self);
|
||||||
|
- const char *const*secondaries = NULL;
|
||||||
|
+ const char *secondaries[2] = { NULL, NULL };
|
||||||
|
gs_free char *secondaries_uuid = NULL;
|
||||||
|
GtkTreeIter iter;
|
||||||
|
gboolean autoconnect = FALSE, everyone = FALSE;
|
||||||
|
@@ -415,7 +415,7 @@ ui_to_setting (CEPageGeneral *self)
|
||||||
|
&& gtk_combo_box_get_active_iter (priv->dependent_vpn, &iter)) {
|
||||||
|
gtk_tree_model_get (GTK_TREE_MODEL (priv->dependent_vpn_store), &iter,
|
||||||
|
COL_UUID, &secondaries_uuid, -1);
|
||||||
|
- secondaries = (const char *[]) { secondaries_uuid, NULL };
|
||||||
|
+ secondaries[0] = secondaries_uuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
g_object_set (G_OBJECT (priv->setting), NM_SETTING_CONNECTION_SECONDARIES, secondaries, NULL);
|
||||||
|
--
|
||||||
|
GitLab
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Template file for 'network-manager-applet'
|
# Template file for 'network-manager-applet'
|
||||||
pkgname=network-manager-applet
|
pkgname=network-manager-applet
|
||||||
version=1.20.0
|
version=1.20.0
|
||||||
revision=1
|
revision=2
|
||||||
build_style=meson
|
build_style=meson
|
||||||
configure_args="-Dselinux=false"
|
configure_args="-Dselinux=false"
|
||||||
hostmakedepends="dbus-glib-devel glib-devel intltool pkg-config"
|
hostmakedepends="dbus-glib-devel glib-devel intltool pkg-config"
|
||||||
|
@ -17,4 +17,5 @@ homepage="https://wiki.gnome.org/Projects/NetworkManager"
|
||||||
changelog="https://raw.githubusercontent.com/NetworkManager/network-manager-applet/master/NEWS"
|
changelog="https://raw.githubusercontent.com/NetworkManager/network-manager-applet/master/NEWS"
|
||||||
distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
|
distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
|
||||||
checksum=8ab205385d8380e3b7e4994b46f6ff009c453e3430bd2b2853c74263f69a5253
|
checksum=8ab205385d8380e3b7e4994b46f6ff009c453e3430bd2b2853c74263f69a5253
|
||||||
|
patch_args=-Np1
|
||||||
lib32disabled=yes
|
lib32disabled=yes
|
||||||
|
|
Loading…
Reference in New Issue