[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Git][debian-mate-team/mate-session-manager][debian/bookworm/updates] 4 commits: debian/patches: Add 0007_Fix-memory-leaks-284.patch and...



Title: GitLab

Mike Gabriel pushed to branch debian/bookworm/updates at Debian and Ubuntu MATE Packaging Team / mate-session-manager

Commits:

  • af55829c
    by Mike Gabriel at 2023-06-19T15:14:57+02:00
    debian/patches: Add 0007_Fix-memory-leaks-284.patch and 0008_mate-session-fix-memory-leak.patch. Fix various memory leaks. (Closes: #1038638).
    
  • 411388d0
    by Mike Gabriel at 2023-06-19T15:17:52+02:00
    debian/patches: Cherry-pick 0009_main-fix-double-free-on-gl_renderer.patch from upstream's 1.26 branch. Regression fix for 0008_mate-session-fix-memory-leak.patch.
    
  • c11a98be
    by Mike Gabriel at 2023-06-20T08:11:01+02:00
    debian/default-settings/X11/Xsession.d/99mate-environment: Allow clutter backends other than x11 (while preferring x11). (Closes: #954783).
    
  • 0d47abea
    by Mike Gabriel at 2023-06-21T07:30:49+02:00
    upload to bookworm (debian/1.26.0-1+deb12u1)
    

6 changed files:

Changes:

  • debian/changelog
    1
    +mate-session-manager (1.26.0-1+deb12u1) bookworm; urgency=medium
    
    2
    +
    
    3
    +  * debian/patches:
    
    4
    +    + Add 0007_Fix-memory-leaks-284.patch and 0008_mate-session-fix-memory-
    
    5
    +      leak.patch. Fix various memory leaks. (Closes: #1038638).
    
    6
    +    + Cherry-pick 0009_main-fix-double-free-on-gl_renderer.patch from upstream's
    
    7
    +      1.26 branch. Regression fix for 0008_mate-session-fix-memory-leak.patch.
    
    8
    +  * debian/default-settings/X11/Xsession.d/99mate-environment:
    
    9
    +    + Allow clutter backends other than x11 (while preferring x11). (Closes:
    
    10
    +      #954783).
    
    11
    +
    
    12
    + -- Mike Gabriel <sunweaver@debian.org>  Tue, 20 Jun 2023 08:10:18 +0200
    
    13
    +
    
    1 14
     mate-session-manager (1.26.0-1) unstable; urgency=medium
    
    2 15
     
    
    3 16
       [ Martin Wimpress ]
    

  • debian/default-settings/X11/Xsession.d/99mate-environment
    ... ... @@ -33,6 +33,6 @@ if [ "x$DESKTOP_SESSION" = "xmate" ] || [ "x$XDG_SESSION_DESKTOP" = "xmate" ]; t
    33 33
         #  - Telegram doesn't work with QT_STYLE_OVERRIDE=gtk
    
    34 34
         # export QT_STYLE_OVERRIDE=gtk
    
    35 35
     
    
    36
    -    # Workaround clutter issue (LP: #1462445)
    
    37
    -    export CLUTTER_BACKEND=x11
    
    36
    +    # Workaround clutter issue (LP: #1462445, Debian #954783)
    
    37
    +    export CLUTTER_BACKEND="x11,*"
    
    38 38
     fi

  • debian/patches/0007_Fix-memory-leaks-284.patch
    1
    +From 7b09df2f9a5ddf27b4c4458e6f8cb3ad701ee24d Mon Sep 17 00:00:00 2001
    
    2
    +From: Robert Antoni Buj Gelonch <rbuj@users.noreply.github.com>
    
    3
    +Date: Sat, 20 Aug 2022 02:19:30 +0200
    
    4
    +Subject: [PATCH 1/2] Fix memory leaks (#284)
    
    5
    +
    
    6
    +Signed-off-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
    
    7
    +---
    
    8
    + tools/mate-session-check-accelerated-gl-helper.c   | 1 +
    
    9
    + tools/mate-session-check-accelerated-gles-helper.c | 2 ++
    
    10
    + tools/mate-session-check-accelerated.c             | 1 +
    
    11
    + 3 files changed, 4 insertions(+)
    
    12
    +
    
    13
    +diff --git a/tools/mate-session-check-accelerated-gl-helper.c b/tools/mate-session-check-accelerated-gl-helper.c
    
    14
    +index 9c1cc0b..5c1e8d9 100644
    
    15
    +--- a/tools/mate-session-check-accelerated-gl-helper.c
    
    16
    ++++ b/tools/mate-session-check-accelerated-gl-helper.c
    
    17
    +@@ -510,6 +510,7 @@ main (int argc, char **argv)
    
    18
    + out:
    
    19
    +         if (display)
    
    20
    +                 XCloseDisplay (display);
    
    21
    ++        g_option_context_free (context);
    
    22
    +         g_free (renderer);
    
    23
    + 
    
    24
    +         return ret;
    
    25
    +diff --git a/tools/mate-session-check-accelerated-gles-helper.c b/tools/mate-session-check-accelerated-gles-helper.c
    
    26
    +index e6312c6..d5ad808 100644
    
    27
    +--- a/tools/mate-session-check-accelerated-gles-helper.c
    
    28
    ++++ b/tools/mate-session-check-accelerated-gles-helper.c
    
    29
    +@@ -226,8 +226,10 @@ main (int argc,
    
    30
    +                 else
    
    31
    +                         ret = HELPER_ACCEL;
    
    32
    +         }
    
    33
    ++        g_free (renderer);
    
    34
    + #endif
    
    35
    + 
    
    36
    + out:
    
    37
    ++        g_option_context_free (context);
    
    38
    +         return ret;
    
    39
    + }
    
    40
    +diff --git a/tools/mate-session-check-accelerated.c b/tools/mate-session-check-accelerated.c
    
    41
    +index 6fe6ec4..70095f5 100644
    
    42
    +--- a/tools/mate-session-check-accelerated.c
    
    43
    ++++ b/tools/mate-session-check-accelerated.c
    
    44
    +@@ -158,6 +158,7 @@ main (int argc, char **argv)
    
    45
    +                 renderer_string = get_gtk_gles_renderer ();
    
    46
    +                 if (renderer_string) {
    
    47
    +                         g_print ("%s", renderer_string);
    
    48
    ++                        g_free (renderer_string);
    
    49
    +                         return 0;
    
    50
    +                 }
    
    51
    +                 return 1;
    
    52
    +-- 
    
    53
    +2.39.2
    
    54
    +

  • debian/patches/0008_mate-session-fix-memory-leak.patch
    1
    +From 1bc90279ce1c094c0036077917ac7b93f5cb4007 Mon Sep 17 00:00:00 2001
    
    2
    +From: rbuj <robert.buj@gmail.com>
    
    3
    +Date: Sat, 23 Oct 2021 11:18:52 +0200
    
    4
    +Subject: [PATCH 2/2] mate-session: fix memory leak
    
    5
    +
    
    6
    +Signed-off-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
    
    7
    +---
    
    8
    + mate-session/gsm-manager.c |  8 ++++++--
    
    9
    + mate-session/main.c        | 11 ++++++-----
    
    10
    + 2 files changed, 12 insertions(+), 7 deletions(-)
    
    11
    +
    
    12
    +diff --git a/mate-session/gsm-manager.c b/mate-session/gsm-manager.c
    
    13
    +index 9b5374e..47108d0 100644
    
    14
    +--- a/mate-session/gsm-manager.c
    
    15
    ++++ b/mate-session/gsm-manager.c
    
    16
    +@@ -145,7 +145,7 @@ typedef struct {
    
    17
    +         GSettings              *settings_lockdown;
    
    18
    +         GSettings              *settings_screensaver;
    
    19
    + 
    
    20
    +-        const char             *renderer;
    
    21
    ++        char                   *renderer;
    
    22
    + 
    
    23
    +         DBusGProxy             *bus_proxy;
    
    24
    +         DBusGConnection        *connection;
    
    25
    +@@ -1697,7 +1697,8 @@ _gsm_manager_set_renderer (GsmManager *manager,
    
    26
    + {
    
    27
    +         GsmManagerPrivate *priv;
    
    28
    +         priv = gsm_manager_get_instance_private (manager);
    
    29
    +-        priv->renderer = renderer;
    
    30
    ++        g_free (priv->renderer);
    
    31
    ++        priv->renderer = g_strdup (renderer);
    
    32
    + }
    
    33
    + 
    
    34
    + static gboolean
    
    35
    +@@ -2660,6 +2661,9 @@ gsm_manager_dispose (GObject *object)
    
    36
    +                 g_object_unref (priv->settings_screensaver);
    
    37
    +                 priv->settings_screensaver = NULL;
    
    38
    +         }
    
    39
    ++
    
    40
    ++        g_clear_pointer (&priv->renderer, g_free);
    
    41
    ++
    
    42
    +         G_OBJECT_CLASS (gsm_manager_parent_class)->dispose (object);
    
    43
    + }
    
    44
    + 
    
    45
    +diff --git a/mate-session/main.c b/mate-session/main.c
    
    46
    +index 96c1092..fc2148e 100644
    
    47
    +--- a/mate-session/main.c
    
    48
    ++++ b/mate-session/main.c
    
    49
    +@@ -83,7 +83,6 @@ static gboolean failsafe = FALSE;
    
    50
    + static gboolean show_version = FALSE;
    
    51
    + static gboolean debug = FALSE;
    
    52
    + static gboolean disable_acceleration_check = FALSE;
    
    53
    +-static char *gl_renderer = NULL;
    
    54
    + 
    
    55
    + static gboolean
    
    56
    + initialize_gsettings (void)
    
    57
    +@@ -575,7 +574,7 @@ static void set_overlay_scroll (void)
    
    58
    + }
    
    59
    + 
    
    60
    + static gboolean
    
    61
    +-check_gl (GError **error)
    
    62
    ++check_gl (gchar **gl_renderer, GError **error)
    
    63
    + {
    
    64
    + 	int status;
    
    65
    + 	char *argv[] = { LIBEXECDIR "/mate-session-check-accelerated", NULL };
    
    66
    +@@ -585,7 +584,7 @@ check_gl (GError **error)
    
    67
    + 		return TRUE;
    
    68
    + 	}
    
    69
    + 
    
    70
    +-	if (!g_spawn_sync (NULL, (char **) argv, NULL, 0, NULL, NULL, &gl_renderer, NULL,
    
    71
    ++	if (!g_spawn_sync (NULL, (char **) argv, NULL, 0, NULL, NULL, gl_renderer, NULL,
    
    72
    + 		           &status, error)) {
    
    73
    + 		return FALSE;
    
    74
    + 	}
    
    75
    +@@ -605,6 +604,7 @@ int main(int argc, char** argv)
    
    76
    + 	GSettings* accessibility_settings;
    
    77
    + 	MdmSignalHandler* signal_handler;
    
    78
    + 	static char** override_autostart_dirs = NULL;
    
    79
    ++	char* gl_renderer = NULL;
    
    80
    + 	gboolean gl_failed = FALSE;
    
    81
    + 
    
    82
    + 	static GOptionEntry entries[] = {
    
    83
    +@@ -670,7 +670,7 @@ int main(int argc, char** argv)
    
    84
    + 		g_debug ("hardware acceleration check is disabled");
    
    85
    + 	} else {
    
    86
    + 		/* Check GL, if it doesn't work out then force software fallback */
    
    87
    +-		if (!check_gl (&error)) {
    
    88
    ++		if (!check_gl (&gl_renderer, &error)) {
    
    89
    + 			gl_failed = TRUE;
    
    90
    + 
    
    91
    + 			g_debug ("hardware acceleration check failed: %s",
    
    92
    +@@ -678,7 +678,7 @@ int main(int argc, char** argv)
    
    93
    + 			g_clear_error (&error);
    
    94
    + 			if (g_getenv ("LIBGL_ALWAYS_SOFTWARE") == NULL) {
    
    95
    + 				g_setenv ("LIBGL_ALWAYS_SOFTWARE", "1", TRUE);
    
    96
    +-				if (!check_gl (&error)) {
    
    97
    ++				if (!check_gl (&gl_renderer, &error)) {
    
    98
    + 					g_warning ("software acceleration check failed: %s",
    
    99
    + 					           error? error->message : "");
    
    100
    + 					g_clear_error (&error);
    
    101
    +@@ -759,6 +759,7 @@ int main(int argc, char** argv)
    
    102
    + 
    
    103
    + 	gsm_xsmp_server_start(xsmp_server);
    
    104
    + 	_gsm_manager_set_renderer (manager, gl_renderer);
    
    105
    ++	g_free (gl_renderer);
    
    106
    + 	gsm_manager_start(manager);
    
    107
    + 
    
    108
    + 	gtk_main();
    
    109
    +-- 
    
    110
    +2.39.2
    
    111
    +

  • debian/patches/0009_main-fix-double-free-on-gl_renderer.patch
    1
    +From 1deb34ac81817da45b1e1d0c80f2bb4954a4253e Mon Sep 17 00:00:00 2001
    
    2
    +From: Jan Palus <jpalus@fastmail.com>
    
    3
    +Date: Sun, 21 May 2023 00:30:29 +0200
    
    4
    +Subject: [PATCH] main: fix double free on gl_renderer
    
    5
    +
    
    6
    +Fixes: 1263384 ("mate-session: fix memory leak")
    
    7
    +Fixes: #304
    
    8
    +Signed-off-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
    
    9
    +---
    
    10
    + mate-session/main.c | 1 -
    
    11
    + 1 file changed, 1 deletion(-)
    
    12
    +
    
    13
    +diff --git a/mate-session/main.c b/mate-session/main.c
    
    14
    +index fc2148e..68e3864 100644
    
    15
    +--- a/mate-session/main.c
    
    16
    ++++ b/mate-session/main.c
    
    17
    +@@ -759,7 +759,6 @@ int main(int argc, char** argv)
    
    18
    + 
    
    19
    + 	gsm_xsmp_server_start(xsmp_server);
    
    20
    + 	_gsm_manager_set_renderer (manager, gl_renderer);
    
    21
    +-	g_free (gl_renderer);
    
    22
    + 	gsm_manager_start(manager);
    
    23
    + 
    
    24
    + 	gtk_main();
    
    25
    +-- 
    
    26
    +2.39.2
    
    27
    +

  • debian/patches/series
    1 1
     0005_lock-session-before-user-switch.patch
    
    2 2
     0006_util-Blacklist-some-session-specific-variables.patch
    
    3
    +0007_Fix-memory-leaks-284.patch
    
    4
    +0008_mate-session-fix-memory-leak.patch
    
    5
    +0009_main-fix-double-free-on-gl_renderer.patch


  • Reply to: