Merge pull request #12934 from dibdot/mc-19.07

mc [19.07]: update to 4.8.25
This commit is contained in:
Dirk Brenken 2020-07-27 19:55:10 +02:00 committed by GitHub
commit f994812858
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 18 additions and 91 deletions

View file

@ -6,15 +6,15 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=mc
PKG_VERSION:=4.8.23
PKG_RELEASE:=3
PKG_VERSION:=4.8.25
PKG_RELEASE:=1
PKG_MAINTAINER:=Dirk Brenken <dev@brenken.org>
PKG_LICENSE:=GPL-3.0-or-later
PKG_CPE_ID:=cpe:/a:midnight_commander:midnight_commander
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://ftp.midnight-commander.org/
PKG_HASH:=dd7f7ce74183307b0df25b5c3e60ad3293fd3d3d27d2f37dd7a10efce13dff1c
PKG_HASH:=ffc19617f20ebb23330acd3998b7fd559a042d172fa55746d53d246697b2548a
PKG_BUILD_PARALLEL:=1
PKG_FIXUP:=autoreconf gettext-version
PKG_BUILD_DEPENDS:=MC_VFS:libtirpc

View file

@ -1,22 +1,11 @@
--- a/src/subshell/common.c
-- a/src/subshell/common.c
+++ b/src/subshell/common.c
@@ -865,16 +865,9 @@ init_subshell_precmd (char *precmd, size
* "PS1='$($PRECMD)$ '\n",
*/
g_snprintf (precmd, buff_size,
- "precmd() { "
- "if [ ! \"${PWD##$HOME}\" ]; then "
- "MC_PWD=\"~\"; "
- "else "
- "[ \"${PWD##$HOME/}\" = \"$PWD\" ] && MC_PWD=\"$PWD\" || MC_PWD=\"~/${PWD##$HOME/}\"; "
- "fi; "
@@ -836,7 +836,7 @@ init_subshell_precmd (char *precmd, size
"else "
"[ \"${PWD##$HOME/}\" = \"$PWD\" ] && MC_PWD=\"$PWD\" || MC_PWD=\"~/${PWD##$HOME/}\"; "
"fi; "
- "echo \"$USER@$(hostname -s):$MC_PWD\"; "
- "pwd>&%d; "
- "kill -STOP $$; "
- "}; " "PRECMD=precmd; " "PS1='$($PRECMD)$ '\n", subshell_pipe[WRITE]);
+ "precmd() { pwd>&%d; kill -STOP $$; }; "
+ "PRECMD=precmd; "
+ "PS1='$(eval $PRECMD)\\u@\\h:\\w\\$ '\n", subshell_pipe[WRITE]);
break;
case SHELL_ZSH:
+ "echo \"$USER@$HOSTNAME:$MC_PWD\"; "
"pwd>&%d; "
"kill -STOP $$; "
"}; " "PRECMD=precmd; " "PS1='$($PRECMD)$ '\n", subshell_pipe[WRITE]);

View file

@ -1,73 +1,11 @@
From b92c7f86b4be3b200e0f2de713a4c40b28599e61 Mon Sep 17 00:00:00 2001
From: Egmont Koblinger <egmont@gmail.com>
Date: Fri, 14 Feb 2020 22:14:19 +0100
Subject: [PATCH] Ticket #3954: fix mouse handling with newer terminfo entries.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
---
lib/tty/key.c | 11 +++++++++--
lib/tty/mouse.c | 6 ++++--
lib/tty/tty.c | 9 ++++++++-
3 files changed, 21 insertions(+), 5 deletions(-)
diff --git a/lib/tty/key.c b/lib/tty/key.c
index 1aa5110af0..4abfc71d73 100644
--- a/lib/tty/key.c
+++ b/lib/tty/key.c
@@ -2120,8 +2120,15 @@ tty_get_event (struct Gpm_Event *event, gboolean redo_event, gboolean block)
#endif /* KEY_MOUSE */
|| c == MCKEY_EXTENDED_MOUSE))
{
- /* Mouse event */
- xmouse_get_event (event, c == MCKEY_EXTENDED_MOUSE);
+ /* Mouse event. See tickets 2956 and 3954 for extended mode detection. */
+ gboolean extended = c == MCKEY_EXTENDED_MOUSE;
+
+#ifdef KEY_MOUSE
+ extended = extended || (c == KEY_MOUSE && xmouse_seq == NULL
+ && xmouse_extended_seq != NULL);
+#endif /* KEY_MOUSE */
+
+ xmouse_get_event (event, extended);
c = (event->type != 0) ? EV_MOUSE : EV_NONE;
}
else if (c == MCKEY_BRACKETED_PASTING_START)
diff --git a/lib/tty/mouse.c b/lib/tty/mouse.c
index 0f830ce08a..1bba0cc587 100644
--- a/lib/tty/mouse.c
+++ b/lib/tty/mouse.c
@@ -90,8 +90,10 @@ init_mouse (void)
case MOUSE_XTERM_NORMAL_TRACKING:
case MOUSE_XTERM_BUTTON_EVENT_TRACKING:
- define_sequence (MCKEY_MOUSE, xmouse_seq, MCKEY_NOACTION);
- define_sequence (MCKEY_EXTENDED_MOUSE, xmouse_extended_seq, MCKEY_NOACTION);
+ if (xmouse_seq != NULL)
+ define_sequence (MCKEY_MOUSE, xmouse_seq, MCKEY_NOACTION);
+ if (xmouse_extended_seq != NULL)
+ define_sequence (MCKEY_EXTENDED_MOUSE, xmouse_extended_seq, MCKEY_NOACTION);
break;
default:
diff --git a/lib/tty/tty.c b/lib/tty/tty.c
index 1bca37c476..a232cd96e8 100644
--- a/lib/tty/tty.c
+++ b/lib/tty/tty.c
@@ -361,9 +361,16 @@ tty_init_xterm_support (gboolean is_xterm)
}
}
- /* No termcap for SGR extended mouse (yet), hardcode it for now */
+ /* There's only one termcap entry "kmous", typically containing "\E[M" or "\E[<".
+ * We need the former in xmouse_seq, the latter in xmouse_extended_seq.
+ * See tickets 2956 and 3954 for details. */
@@ -370,7 +370,7 @@ tty_init_xterm_support (gboolean is_xter
if (xmouse_seq != NULL)
+ {
+ if (strcmp (xmouse_seq, ESC_STR "[<") == 0)
{
if (strcmp (xmouse_seq, ESC_STR "[<") == 0)
- xmouse_seq = ESC_STR "[M";
+ xmouse_seq = NULL;
+
xmouse_extended_seq = ESC_STR "[<";
+ }
}
/* --------------------------------------------------------------------------------------------- */
xmouse_extended_seq = ESC_STR "[<";
}