Ana Guerrero 2024-02-13 21:43:17 +00:00 committed by Git OBS Bridge
commit 64cbdcda71
6 changed files with 55 additions and 51 deletions

View File

@ -1,50 +1,17 @@
From 036c903e1d6ac8eee72d920d7019c7836381fa2a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ga=C3=ABl=20Bonithon?= <gael@xfce.org>
Date: Mon, 23 Oct 2023 19:24:09 +0200
Subject: [PATCH] Do not reconnect accels when closing last tab
G_IS_OBJECT and similar derived macros are not valid tests of whether an
object is still alive. They are intended to test the type of an object
assumed to be alive (although they return FALSE for a null pointer for
convenience).
This can cause a crash on some systems when closing last tab if
/misc-always-show-tabs is TRUE.
Fixes: 31712a009ec4db4a0731431905a169fe610286e5
---
terminal/terminal-screen.c | 3 +--
terminal/terminal-window.c | 3 ++-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/terminal/terminal-screen.c b/terminal/terminal-screen.c
index 6fe8f1c2..52ee7549 100644
--- a/terminal/terminal-screen.c
+++ b/terminal/terminal-screen.c
@@ -3151,8 +3151,7 @@ terminal_screen_widget_append_accels (TerminalScreen *screen,
{
terminal_return_if_fail (TERMINAL_IS_SCREEN (screen));
- if (G_LIKELY (G_IS_OBJECT (screen->terminal)))
- g_object_set (G_OBJECT (screen->terminal), "accel-group", accel_group, NULL);
+ g_object_set (G_OBJECT (screen->terminal), "accel-group", accel_group, NULL);
}
diff --git a/terminal/terminal-window.c b/terminal/terminal-window.c
index fc830237..71767208 100644
--- a/terminal/terminal-window.c
+++ b/terminal/terminal-window.c
@@ -2577,7 +2577,8 @@ terminal_window_do_close_tab (TerminalScreen *screen,
gtk_widget_destroy (GTK_WIDGET (screen));
diff -rup a/terminal/terminal-window.c b/terminal/terminal-window.c
--- a/terminal/terminal-window.c 2024-01-23 20:10:59.000000000 +0100
+++ b/terminal/terminal-window.c 2024-02-07 12:31:32.599468621 +0100
@@ -2573,11 +2573,11 @@ terminal_window_do_close_tab (TerminalSc
gtk_notebook_set_current_page (notebook, page_num);
}
- gtk_widget_destroy (GTK_WIDGET (screen));
-
/* reconnect the accels of the active terminal */
- terminal_screen_widget_append_accels (window->priv->active, window->priv->accel_group);
+ if (screen != window->priv->active)
+ terminal_screen_widget_append_accels (window->priv->active, window->priv->accel_group);
if (screen != window->priv->active)
terminal_screen_widget_append_accels (window->priv->active, window->priv->accel_group);
+
+ gtk_widget_destroy (GTK_WIDGET (screen));
}
--
GitLab

12
gxo-299.patch Normal file
View File

@ -0,0 +1,12 @@
diff -rup a/terminal/terminal-screen.c b/terminal/terminal-screen.c
--- a/terminal/terminal-screen.c 2024-01-29 14:34:45.000000000 +0100
+++ b/terminal/terminal-screen.c 2024-02-07 12:40:58.232372739 +0100
@@ -1892,7 +1892,7 @@ terminal_screen_paste_unsafe_text (Termi
{
GtkWidget *dialog;
- g_return_if_fail (original_clipboard != GDK_SELECTION_CLIPBOARD && original_clipboard != GDK_SELECTION_PRIMARY);
+ g_return_if_fail (original_clipboard == GDK_SELECTION_CLIPBOARD || original_clipboard == GDK_SELECTION_PRIMARY);
dialog = terminal_screen_unsafe_paste_dialog_new (screen, text);
gtk_widget_show_all (dialog);

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5ab5c9b49c00be29f0be4eee5ccfa5073b16f2456185270265a9324549080aa6
size 1033180

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:79a85ee216502c7248e04d560adf8fef86b9d0e047f81e9ea4fe26fbda34d810
size 1042199

View File

@ -1,3 +1,26 @@
-------------------------------------------------------------------
Wed Feb 7 11:42:17 UTC 2024 - Manfred Hollstein <manfred.h@gmx.net>
- Update to version 1.1.2
* Update copyright year
* Update tooltip when hovering over a hyperlink
* build: Align CFLAGS with LDADD
* prefs-dialog: Add missing strings to translate (#222)
* dropdown: Default dropdown-toggle-focus to false
* Add runtime guard for XfceSMClient
* build: Restrict XfceSMClient to X11
* Determine cwd on FreeBSD in a native way instead of using linprocfs
* window: Remove weak ref on prefs dialog in finalize()
* build: Get rid of #ifdef G_ENABLE_DEBUG
* Do not reconnect accels when closing last tab
* build: Lower xfce4-dev-tools requirements to stable version
* search-dialog: Use xfce_titled_dialog_set_default_response()
* Translation Updates
- Update gxo-282.patch
- Add gxo-299.patch
* backport fix for "paste unsafe text" dialog not popping up
(gxo#apps/xfce4-terminal#299)
-------------------------------------------------------------------
Sun Nov 5 18:12:55 UTC 2023 - Marcel Kuehlhorn <tux93@opensuse.org>

View File

@ -1,7 +1,7 @@
#
# spec file for package xfce4-terminal
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2012 Guido Berhoerster.
#
# All modifications and additions to the file contributed by third parties
@ -19,15 +19,17 @@
%bcond_with git
Name: xfce4-terminal
Version: 1.1.1
Version: 1.1.2
Release: 0
Summary: Terminal Emulator for the Xfce Desktop Environment
License: GPL-2.0-or-later
Group: System/X11/Terminals
URL: https://docs.xfce.org/apps/terminal/start
Source0: https://archive.xfce.org/src/apps/xfce4-terminal/1.1/%{name}-%{version}.tar.bz2
# PATCH-FIX-UPSTREAM: backport fix for crash on window close
# PATCH-FIX-OPENSUSE: backport fix for crash on window close
Patch0: gxo-282.patch
# PATCH-FIX-UPSTREAM: backport fix for "paste unsafe text" dialog not popping up
Patch1: gxo-299.patch
BuildRequires: intltool
BuildRequires: pkgconfig
BuildRequires: update-desktop-files