mlterm: update to 3.8.9.

pkgsrc changes:
- remove patches applied in the upstream

Upstream changes noted in doc/en/ReleaseNote:

ver 3.8.9
* Support zmodem. (See doc/en/README.tarnsfer)
* Add "send_file" and "zmodem_start" to OSC 5379.
* Add receive_directory / --recvdir option.
* Support xdg-shell-v6 (unstable) on wayland.
* Support copy&paste via X11 primary selection on wayland.
* Hide the mouse cursor in inputting keys by default on xlib and win32.
* ~/.mlterm/font accepts UTF-8 on windows.
* Change the default value of "font_size_range" option from 1-100 to 1-10000.
* Clear a window and scroll out all lines on resizing only if
  the value of --sr / "scroll_on_resizing" option is true.
* Set _NET_WM_PID property.
* Revive -N/"app_name" option which sets WM_CLASS property.
  (WM_CLASS was disabled at 3.8.6)
* Add a percent or number argument without '+' and '-' to "vresize_screen" and
  "hresize_screen" of OSC 5379.
* Add "RESET" (which resets the parser of mlterm) as a shortcut key.
* Add vte 0.58 API symbols to libvte compatible library.
* Merge patches:
  https://bitbucket.org/arakiken/mlterm/pull-requests/5/fix-for-wscons-framebuffer/diff
  https://sourceforge.net/p/mlterm/patches/24/
* Bug fixes:
  Fix memory leaks of libptymosh.so
  Fix https://sourceforge.net/p/mlterm/mailman/message/36633222/ (Enbugged at 3.8.8)
  Fix segfault of mlterm for java by race condition.
  Fix unexpected invalidation of --mdi=false option. (Enbugged at 3.8.8)
  Fix uninitialized memory access of mlimgloader.exe for win32.
  Fix broken images of some sixel graphics. (Enbugged at 3.8.5)
This commit is contained in:
tsutsui 2019-11-22 18:06:47 +00:00
parent 7f94d0a54c
commit 5d83b4d7ec
10 changed files with 9 additions and 275 deletions

View file

@ -1,7 +1,6 @@
# $NetBSD: Makefile,v 1.152 2019/09/22 06:17:30 rin Exp $
# $NetBSD: Makefile,v 1.153 2019/11/22 18:06:47 tsutsui Exp $
DISTNAME= mlterm-3.8.8
PKGREVISION= 5
DISTNAME= mlterm-3.8.9
CATEGORIES= x11
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=mlterm/}

View file

@ -1,4 +1,4 @@
@comment $NetBSD: PLIST,v 1.42 2019/04/05 12:14:58 tsutsui Exp $
@comment $NetBSD: PLIST,v 1.43 2019/11/22 18:06:47 tsutsui Exp $
bin/mlcc
bin/mlclient
bin/mlclientx
@ -51,6 +51,7 @@ lib/mlterm/libpixmap_engine.la
lib/mlterm/libsample.la
${PLIST.cairo}lib/mlterm/libtype_cairo.la
${PLIST.xft2}lib/mlterm/libtype_xft.la
lib/mlterm/libzmodem.la
libexec/mlterm/mlconfig
libexec/mlterm/mlimgloader
libexec/mlterm/mlterm-menu

View file

@ -1,15 +1,8 @@
$NetBSD: distinfo,v 1.81 2019/09/22 06:17:30 rin Exp $
$NetBSD: distinfo,v 1.82 2019/11/22 18:06:47 tsutsui Exp $
SHA1 (mlterm-3.8.8.tar.gz) = 54f40fa50214656ab70f592d5d58805b1dfdc1c6
RMD160 (mlterm-3.8.8.tar.gz) = 9a7675a86999541b57742099a5e9eac8a539b580
SHA512 (mlterm-3.8.8.tar.gz) = 4db7de441300d30eadc85d1c780bb10c81d2555225fe163280508180ccc2114eeacf0e5772f9d69c1b59ef6f3ffb3444b75fe3e5ea508dd9e18e5850e78f78a5
Size (mlterm-3.8.8.tar.gz) = 4035215 bytes
SHA1 (mlterm-3.8.9.tar.gz) = 485d1f3215e12db8cd23f39a5c06b21e3e802307
RMD160 (mlterm-3.8.9.tar.gz) = e5b6a4ac980866076c7b4f93aa3cbf1b20b4efcb
SHA512 (mlterm-3.8.9.tar.gz) = 0bd5468dc58095fd9432922490178fe14335724cee08d2f509e8f72a4d5f9aea9ff2f0672706e5290219575f47a1ff15dccb4e21e318c89dd5718fe6ef694c0c
Size (mlterm-3.8.9.tar.gz) = 4101898 bytes
SHA1 (patch-configure) = e95b426f028c9bcb9895e69bb85ce8450f78a8c8
SHA1 (patch-etc_font-fb) = 03f0b2ecee20ef3201c8e4ce17f03ac90f657b00
SHA1 (patch-uitoolkit_fb_ui.h) = 751d9fad83ef04f957b297b04e3cf61c2a28a9dd
SHA1 (patch-uitoolkit_fb_ui__display.c) = 15dbae082a13d5a4c5f22675914631da5494e6a6
SHA1 (patch-uitoolkit_fb_ui__display__freebsd.c) = 3cb80b0564be184cf992ea54141183395c4cd39b
SHA1 (patch-uitoolkit_fb_ui__display__linux.c) = 5dd0d30d579f42036066acb8c42db51045ac712f
SHA1 (patch-uitoolkit_fb_ui__display__wscons.c) = 6ea6aec8cd72999874c9fb26a099d3b09ba91bb6
SHA1 (patch-uitoolkit_fb_ui__display__x68kgrf.c) = 51ba1b5124fd6cb654e9c87fa289b06170429f92
SHA1 (patch-uitoolkit_ui__event__source.c) = 4cf872768491bc8da5fc080cfd3a50969324a162

View file

@ -1,17 +0,0 @@
$ NetBSD $
- Fix support for fbi_fboffset != 0
Reported upstream:
https://bitbucket.org/arakiken/mlterm/pull-requests/5/fix-for-wscons-framebuffer/diff
--- uitoolkit/fb/ui.h.orig 2019-07-24 10:51:04.187713603 +0900
+++ uitoolkit/fb/ui.h 2019-07-24 09:59:19.091595937 +0900
@@ -44,6 +44,7 @@ typedef struct {
int fb_fd;
unsigned char *fb;
+ unsigned char *fb_base;
size_t smem_len;
unsigned int line_length;
unsigned int xoffset;

View file

@ -1,33 +0,0 @@
$ NetBSD $
- Fix support for fbi_fboffset != 0
- Fix SEGV when using 8-bpp display on LP64 machine
Reported upstream:
https://bitbucket.org/arakiken/mlterm/pull-requests/5/fix-for-wscons-framebuffer/diff
--- uitoolkit/fb/ui_display.c.orig 2019-07-24 10:51:04.212256656 +0900
+++ uitoolkit/fb/ui_display.c 2019-07-24 10:27:19.883218709 +0900
@@ -214,7 +214,7 @@ static inline ui_window_t *get_window(in
}
static inline u_char *get_fb(int x, int y) {
- return _display.fb + (_display.yoffset + y) * _display.line_length +
+ return _display.fb_base + (_display.yoffset + y) * _display.line_length +
(_display.xoffset + x) * _display.bytes_per_pixel / _display.pixels_per_byte;
}
@@ -2170,8 +2170,11 @@ int ui_cmap_get_closest_color(u_long *cl
}
if ((linear_search_max = CMAP_SIZE(_display.cmap)) == 256) {
- if ((linear_search_max = vt_get_closest_256_color(closest, &min, red, green, blue,
- COLOR_DISTANCE_THRESHOLD)) == 0) {
+ vt_color_t tmp;
+ linear_search_max = vt_get_closest_256_color(&tmp, &min, red, green, blue,
+ COLOR_DISTANCE_THRESHOLD);
+ *closest = tmp; /* XXX needs for LP64 */
+ if (linear_search_max == 0) {
goto end;
}
}

View file

@ -1,27 +0,0 @@
$ NetBSD $
- Fix support for fbi_fboffset != 0
Reported upstream:
https://bitbucket.org/arakiken/mlterm/pull-requests/5/fix-for-wscons-framebuffer/diff
--- uitoolkit/fb/ui_display_freebsd.c.orig 2019-07-24 10:51:04.208029557 +0900
+++ uitoolkit/fb/ui_display_freebsd.c 2019-07-24 10:37:10.728676339 +0900
@@ -64,7 +64,7 @@ static int open_display(u_int depth) {
ioctl(_display.fb_fd, FBIO_ADPINFO, &vainfo);
ioctl(_display.fb_fd, FBIO_GETDISPSTART, &vstart);
- if ((_display.fb = mmap(NULL, (_display.smem_len = vainfo.va_window_size), PROT_WRITE | PROT_READ,
+ if ((_display.fb = _display.fb_base = mmap(NULL, (_display.smem_len = vainfo.va_window_size), PROT_WRITE | PROT_READ,
MAP_SHARED, _display.fb_fd, (off_t)0)) == MAP_FAILED) {
bl_error_printf("Retry another mode of resolution and depth.\n");
@@ -209,7 +209,7 @@ static int open_display(u_int depth) {
error:
if (_display.fb) {
munmap(_display.fb, _display.smem_len);
- _display.fb = NULL;
+ _display.fb = _display.fb_base = NULL;
}
close(_display.fb_fd);

View file

@ -1,27 +0,0 @@
$ NetBSD $
- Fix support for fbi_fboffset != 0
Reported upstream:
https://bitbucket.org/arakiken/mlterm/pull-requests/5/fix-for-wscons-framebuffer/diff
--- uitoolkit/fb/ui_display_linux.c.orig 2019-07-24 10:51:04.215385175 +0900
+++ uitoolkit/fb/ui_display_linux.c 2019-07-24 09:59:19.092709670 +0900
@@ -265,7 +265,7 @@ static int open_display(u_int depth) {
_display.pixels_per_byte = 1;
}
- if ((_display.fb = mmap(NULL, (_display.smem_len = finfo.smem_len), PROT_WRITE | PROT_READ,
+ if ((_display.fb = _display.fb_base = mmap(NULL, (_display.smem_len = finfo.smem_len), PROT_WRITE | PROT_READ,
MAP_SHARED, _display.fb_fd, (off_t)0)) == MAP_FAILED) {
goto error;
}
@@ -349,7 +349,7 @@ static int open_display(u_int depth) {
error:
if (_display.fb) {
munmap(_display.fb, _display.smem_len);
- _display.fb = NULL;
+ _display.fb = _display.fb_base = NULL;
}
close(_display.fb_fd);

View file

@ -1,89 +0,0 @@
$ NetBSD $
- Fix support for fbi_fboffset != 0
- Fix SEGV when using 8-bpp display on LP64 machine
Reported upstream:
https://bitbucket.org/arakiken/mlterm/pull-requests/5/fix-for-wscons-framebuffer/diff
--- uitoolkit/fb/ui_display_wscons.c.orig 2019-03-31 22:10:47.000000000 +0900
+++ uitoolkit/fb/ui_display_wscons.c 2019-09-22 15:10:00.573589888 +0900
@@ -260,6 +260,7 @@ static int open_display(u_int depth /* u
#ifdef WSDISPLAYIO_GET_FBINFO
struct wsdisplayio_fbinfo vinfo2;
#endif
+ int fboffset;
int mode;
int wstype;
struct rgb_info rgbinfos[] = {
@@ -326,12 +327,18 @@ static int open_display(u_int depth /* u
vinfo.depth = vinfo2.fbi_bitsperpixel;
vinfo.cmsize = vinfo2.fbi_subtype.fbi_cmapinfo.cmap_entries;
- /* XXX fbi_fboffset is regarded as multiple of fbi_stride */
- _display.yoffset = vinfo2.fbi_fboffset / vinfo2.fbi_stride;
+ fboffset = vinfo2.fbi_fboffset;
} else
#endif
- if (ioctl(_display.fb_fd, WSDISPLAYIO_GINFO, &vinfo) == 0) {
- _display.yoffset = 0;
+ if (ioctl(_display.fb_fd, WSDISPLAYIO_GINFO, &vinfo) == 0) {
+#ifdef WSDISPLAY_TYPE_LUNA
+ if (wstype == WSDISPLAY_TYPE_LUNA) {
+ fboffset = 8;
+ } else
+#endif
+ {
+ fboffset = 0;
+ }
} else {
#ifdef DEBUG
bl_debug_printf(BL_DEBUG_TAG " WSDISPLAYIO_GTYPE and WSDISPLAYIO_GET_FBINFO failed.\n");
@@ -341,6 +348,7 @@ static int open_display(u_int depth /* u
}
_display.xoffset = 0;
+ _display.yoffset = 0;
_display.width = _disp.width = vinfo.width;
_display.height = _disp.height = vinfo.height;
@@ -403,7 +411,7 @@ static int open_display(u_int depth /* u
if (wstype == WSDISPLAY_TYPE_LUNA && (_disp.depth == 4 || _disp.depth == 8)) {
u_int plane;
- _display.smem_len = 0x40000 * _disp.depth;
+ _display.smem_len = fboffset + 0x40000 * _disp.depth;
for (plane = 0; plane < _disp.depth; plane++) {
_display.plane_offset[plane] = 0x40000 * plane;
@@ -411,7 +419,7 @@ static int open_display(u_int depth /* u
} else
#endif
{
- _display.smem_len = _display.line_length * _display.height;
+ _display.smem_len = fboffset + _display.line_length * _display.height;
}
if ((_display.fb = mmap(NULL, _display.smem_len, PROT_WRITE | PROT_READ, MAP_SHARED,
@@ -421,11 +429,7 @@ static int open_display(u_int depth /* u
goto error;
}
-#ifdef WSDISPLAY_TYPE_LUNA
- if (wstype == WSDISPLAY_TYPE_LUNA) {
- _display.fb += 8;
- }
-#endif
+ _display.fb_base = _display.fb + fboffset;
if (_disp.depth < 15) {
if (vinfo.depth >= 2 && _disp.depth == 1) {
@@ -630,7 +634,7 @@ static int open_display(u_int depth /* u
error:
if (_display.fb) {
munmap(_display.fb, _display.smem_len);
- _display.fb = NULL;
+ _display.fb = _display.fb_base = NULL;
}
close(_display.fb_fd);

View file

@ -1,27 +0,0 @@
$ NetBSD $
- Fix support for fbi_fboffset != 0
Reported upstream:
https://bitbucket.org/arakiken/mlterm/pull-requests/5/fix-for-wscons-framebuffer/diff
--- uitoolkit/fb/ui_display_x68kgrf.c.orig 2019-07-24 10:51:04.212502056 +0900
+++ uitoolkit/fb/ui_display_x68kgrf.c 2019-07-24 10:01:35.627124287 +0900
@@ -173,7 +173,7 @@ static int open_display(u_int depth) {
_display.smem_len = vinfo.gd_fbsize + vinfo.gd_regsize;
- if ((_display.fb = mmap(NULL, _display.smem_len, PROT_WRITE | PROT_READ, MAP_FILE | MAP_SHARED,
+ if ((_display.fb = _display.fb_base = mmap(NULL, _display.smem_len, PROT_WRITE | PROT_READ, MAP_FILE | MAP_SHARED,
_display.fb_fd, (off_t)0)) == MAP_FAILED) {
bl_error_printf("Retry another mode of resolution and depth.\n");
@@ -339,7 +339,7 @@ error:
if (_display.fb) {
setup_reg(reg, &orig_reg);
munmap(_display.fb, _display.smem_len);
- _display.fb = NULL;
+ _display.fb = _display.fb_base = NULL;
}
close(_display.fb_fd);

View file

@ -1,39 +0,0 @@
$NetBSD: patch-uitoolkit_ui__event__source.c,v 1.1 2019/06/22 04:27:54 tsutsui Exp $
- pull upstream fix for 3.8.8:
https://sourceforge.net/projects/mlterm/files/01release/mlterm-3.8.8/mlterm-3.8.8-fixes.patch
https://bitbucket.org/arakiken/mlterm/commits/1a4368580a3a2a6239bfde5a7829645767ae0fa9
> Fix https://sourceforge.net/p/mlterm/mailman/message/36633222/
> [Mlterm-dev-en] mlterm 3.8.8 slow exit
--- uitoolkit/ui_event_source.c.orig 2019-03-31 13:10:47.000000000 +0000
+++ uitoolkit/ui_event_source.c
@@ -8,7 +8,6 @@
#include <string.h> /* memset/memcpy */
#include <sys/time.h> /* timeval */
#include <unistd.h> /* select */
-#include <errno.h>
#include <pobl/bl_file.h> /* bl_file_set_cloexec */
#endif
@@ -169,16 +168,14 @@ static void receive_next_event(void) {
#endif
if ((ret = select(maxfd + 1, &read_fds, NULL, NULL, &tval)) != 0) {
if (ret < 0) {
- if (errno != EINTR) {
#ifdef DEBUG
- bl_debug_printf(BL_DEBUG_TAG " error happened in select.\n");
+ bl_debug_printf(BL_DEBUG_TAG " error happened in select.\n");
#endif
- return;
- }
- } else {
- break;
+ return;
}
+
+ break;
}
#ifdef KEY_REPEAT_BY_MYSELF