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

[Git][debian-mate-team/marco][master] 3 commits: debian/patches: Add patches 0001, 0002 and 0003. Fixes marco crashing when run...



Title: GitLab

Mike Gabriel pushed to branch master at Debian and Ubuntu MATE Packaging Team / marco

Commits:

  • 4400765a
    by Mike Gabriel at 2023-04-25T15:57:19+02:00
    debian/patches: Add patches 0001, 0002 and 0003. Fixes marco crashing when run in an X2Go session. (Closes: #1034677).
    
  • d0ff4b33
    by Mike Gabriel at 2023-04-25T16:05:14+02:00
    debian/{marco-common.install,20_marco-debian.gschema.override}: Disable compositing manager in marco, hides dark border around windows in X2Go. (Closes: #982879. This also works around screen tearing in MATE desktop when installing MATE in Debian with default settings. (Closes: #1034605).
    
  • 393f6ea7
    by Mike Gabriel at 2023-04-25T16:06:09+02:00
    upload to unstable (debian/1.26.1-2)
    

7 changed files:

Changes:

  • debian/20_marco-debian.gschema.override
    1
    +[org.mate.Marco.general]
    
    2
    +compositing-manager=false

  • debian/changelog
    1
    +marco (1.26.1-2) unstable; urgency=medium
    
    2
    +
    
    3
    +  * debian/patches:
    
    4
    +    + Add patches 0001, 0002 and 0003. Fixes marco crashing when run in an X2Go
    
    5
    +      session. (Closes: #1034677).
    
    6
    +  * debian/{marco-common.install,20_marco-debian.gschema.override}:
    
    7
    +    + Disable compositing manager in marco, hides dark border around windows in
    
    8
    +      X2Go. (Closes: #982879). This also works around screen tearing in MATE
    
    9
    +      desktop when installing MATE in Debian with default settings. (Closes:
    
    10
    +      #1034605).
    
    11
    +
    
    12
    + -- Mike Gabriel <sunweaver@debian.org>  Tue, 25 Apr 2023 15:49:34 +0200
    
    13
    +
    
    1 14
     marco (1.26.1-1) unstable; urgency=medium
    
    2 15
     
    
    3 16
       * New upstream release.
    

  • debian/marco-common.install
    ... ... @@ -5,3 +5,4 @@ usr/share/marco/
    5 5
     usr/share/mate-control-center/
    
    6 6
     usr/share/mate/
    
    7 7
     usr/share/themes/
    
    8
    +debian/20_marco-debian.gschema.override usr/share/glib-2.0/schemas/

  • debian/patches/0001_test-retval-from-XResQueryClientIds.patch
    1
    +From 9c8e9564d2f5ed27175c0a6061394c25889dfb31 Mon Sep 17 00:00:00 2001
    
    2
    +From: Joakim Tjernlund <joakim.tjernlund@infinera.com>
    
    3
    +Date: Mon, 19 Dec 2022 16:58:10 +0100
    
    4
    +Subject: [PATCH] test return value from XResQueryClientIds()
    
    5
    +
    
    6
    +---
    
    7
    + src/core/window-props.c | 11 ++++++-----
    
    8
    + 1 file changed, 6 insertions(+), 5 deletions(-)
    
    9
    +
    
    10
    +diff --git a/src/core/window-props.c b/src/core/window-props.c
    
    11
    +index 3414a3d9a..b27809ab4 100644
    
    12
    +--- a/src/core/window-props.c
    
    13
    ++++ b/src/core/window-props.c
    
    14
    +@@ -309,11 +309,12 @@ get_local_pid (MetaWindow *window)
    
    15
    +   spec.client = window->xwindow;
    
    16
    +   spec.mask = XRES_CLIENT_ID_PID_MASK;
    
    17
    + 
    
    18
    +-  XResQueryClientIds (window->display->xdisplay,
    
    19
    +-                      1,
    
    20
    +-                      &spec,
    
    21
    +-                      &num_ids,
    
    22
    +-                      &client_ids);
    
    23
    ++  if (!XResQueryClientIds (window->display->xdisplay,
    
    24
    ++                          1,
    
    25
    ++                          &spec,
    
    26
    ++                          &num_ids,
    
    27
    ++                          &client_ids))
    
    28
    ++      return pid;
    
    29
    + 
    
    30
    +   for (i = 0; i < num_ids; i++)
    
    31
    +     {

  • debian/patches/0002_test-xres-1.2-is-present.patch
    1
    +From 066888715066fbc4625612c8738c32b66666ceee Mon Sep 17 00:00:00 2001
    
    2
    +From: Joakim Tjernlund <joakim.tjernlund@infinera.com>
    
    3
    +Date: Mon, 19 Dec 2022 16:59:06 +0100
    
    4
    +Subject: [PATCH] Test Xres 1.2 is present
    
    5
    +
    
    6
    +Before using any Xres extension one must call XResQueryExtension()
    
    7
    +Also make sure Xres 1.2 is available as marco need XResQueryClientIds()
    
    8
    +---
    
    9
    + src/core/display-private.h |  1 +
    
    10
    + src/core/display.c         | 14 ++++++++++++--
    
    11
    + 2 files changed, 13 insertions(+), 2 deletions(-)
    
    12
    +
    
    13
    +--- a/src/core/display-private.h
    
    14
    ++++ b/src/core/display-private.h
    
    15
    +@@ -80,6 +80,7 @@
    
    16
    + struct _MetaDisplay {
    
    17
    + 	char* name;
    
    18
    + 	Display* xdisplay;
    
    19
    ++	gboolean have_xres; /* Got XRES >= 1.2 */
    
    20
    + 
    
    21
    + 	Window leader_window;
    
    22
    + 	Window timestamp_pinging_window;
    
    23
    +--- a/src/core/display.c
    
    24
    ++++ b/src/core/display.c
    
    25
    +@@ -50,6 +50,7 @@
    
    26
    + #include "compositor.h"
    
    27
    + #include <X11/Xatom.h>
    
    28
    + #include <X11/cursorfont.h>
    
    29
    ++#include <X11/extensions/XRes.h>
    
    30
    + 
    
    31
    + #ifdef HAVE_SOLARIS_XINERAMA
    
    32
    + 	#include <X11/extensions/xinerama.h>
    
    33
    +@@ -329,7 +330,8 @@
    
    34
    +   Display *xdisplay;
    
    35
    +   GSList *screens;
    
    36
    +   GSList *tmp;
    
    37
    +-  int i;
    
    38
    ++  int i, event_base, error_base, major, minor;
    
    39
    ++  gboolean have_xres = FALSE;
    
    40
    +   guint32 timestamp;
    
    41
    + 
    
    42
    +   /* A list of all atom names, so that we can intern them in one go. */
    
    43
    +@@ -343,6 +345,7 @@
    
    44
    +   meta_verbose ("Opening display '%s'\n", XDisplayName (NULL));
    
    45
    + 
    
    46
    +   xdisplay = meta_ui_get_display ();
    
    47
    ++  event_base = error_base = major = minor = 0;
    
    48
    + 
    
    49
    +   if (xdisplay == NULL)
    
    50
    +     {
    
    51
    +@@ -350,7 +353,13 @@
    
    52
    + 		    XDisplayName (NULL));
    
    53
    +       return FALSE;
    
    54
    +     }
    
    55
    +-
    
    56
    ++  /* Make sure to init Xres any extensions */
    
    57
    ++  if (XResQueryExtension(xdisplay, &event_base, &error_base) &&
    
    58
    ++      XResQueryVersion (xdisplay, &major, &minor) == 1)
    
    59
    ++    {
    
    60
    ++      if (major > 1 || (major == 1 && minor >= 2))
    
    61
    ++          have_xres = TRUE;
    
    62
    ++    }
    
    63
    +   if (meta_is_syncing ())
    
    64
    +     XSynchronize (xdisplay, True);
    
    65
    + 
    
    66
    +@@ -365,6 +374,7 @@
    
    67
    +    */
    
    68
    +   the_display->name = g_strdup (XDisplayName (NULL));
    
    69
    +   the_display->xdisplay = xdisplay;
    
    70
    ++  the_display->have_xres = have_xres;
    
    71
    +   the_display->error_trap_synced_at_last_pop = TRUE;
    
    72
    +   the_display->error_traps = 0;
    
    73
    +   the_display->error_trap_handler = NULL;

  • debian/patches/0003_test-if-XResQueryClientIds-is-available.patch
    1
    +From 6cc8a2ff1e80d55d8edd7cd9c605bd068e83a72b Mon Sep 17 00:00:00 2001
    
    2
    +From: Joakim Tjernlund <joakim.tjernlund@infinera.com>
    
    3
    +Date: Thu, 29 Dec 2022 14:51:57 +0100
    
    4
    +Subject: [PATCH] Test if XResQueryClientIds() is available before using it.
    
    5
    +
    
    6
    +Needed for X2Go as it does not have XRES 1.2 extension.
    
    7
    +---
    
    8
    + src/core/window-props.c | 2 ++
    
    9
    + 1 file changed, 2 insertions(+)
    
    10
    +
    
    11
    +diff --git a/src/core/window-props.c b/src/core/window-props.c
    
    12
    +index b27809ab4..06df9e660 100644
    
    13
    +--- a/src/core/window-props.c
    
    14
    ++++ b/src/core/window-props.c
    
    15
    +@@ -305,6 +305,8 @@ get_local_pid (MetaWindow *window)
    
    16
    +   long i;
    
    17
    + 
    
    18
    +   pid = -1;
    
    19
    ++  if (window->display->have_xres == FALSE)
    
    20
    ++    return pid;
    
    21
    + 
    
    22
    +   spec.client = window->xwindow;
    
    23
    +   spec.mask = XRES_CLIENT_ID_PID_MASK;

  • debian/patches/series
    1 1
     
    
    2 2
     0000_shadows.patch
    
    3 3
     1001_marco-Add-cmdline-option-no-keybindings-for-disablin.patch
    
    4
    +0001_test-retval-from-XResQueryClientIds.patch
    
    5
    +0002_test-xres-1.2-is-present.patch
    
    6
    +0003_test-if-XResQueryClientIds-is-available.patch


  • Reply to: