diff options
author | wiz <wiz@pkgsrc.org> | 2006-12-19 07:53:57 +0000 |
---|---|---|
committer | wiz <wiz@pkgsrc.org> | 2006-12-19 07:53:57 +0000 |
commit | 6a97ec9386d1a21f37c62d172cd41803dc0f90f9 (patch) | |
tree | f112cd9b89bb512b01819cd2319d579427870c93 /x11/mlterm | |
parent | 538999b38aa5ed0ed27dbf896304641a8dd48d5d (diff) | |
download | pkgsrc-6a97ec9386d1a21f37c62d172cd41803dc0f90f9.tar.gz |
Update to 2.9.3 with additional fixes from mlterm CVS, provided by
Christian Biere in PR 34798 with minor fixes by me.
Changes:
* Improvements for compatibility with xterm:
- Log file handling [kzys]
- Function keys [seiichi] (Thanks to Konosuke Watanabe)
- Sequence for setting scroll region [seiichi]
(Thanks to SHIOTA Shoichi and Takashi SHIRAI)
- Behavior of saving/restoring cursor [minami]
(Thanks to Thomas Dickey for suggestions)
- Termcap and Terminfo [minami, seiichi]
- Turn off mouse position reporting by a "reset" sequence [minami]
(Debian Bug #55637)
* Improvement build prosess for cross-compiling [minami]
* Workaround for missing rgb.txt [minami]
* Updated documents [kzys, minami, seiichi]
* Bug fix for broken selection requester [minami]
* Added support for SCIM-1.4.x [seiichi]
* Removed support for SCIM-1.0.x [seiichi]
* Removed support for uim-0.x.x [seiichi]
* Hebrew mapping table for "kbd" input method [seiich]
* Revided a scroll caching mechanism [seiichi] (SF Bug #1161050)
* Suppressed a check for libxpg4 of FreeBSD [seiichi]
(Thanks to SHIOTA Shoichi and MANTANI Nobutaka)
* Fixed a bug of alignment of full width chars when variable column width is
enabled [minami] (Thanks to Oibane)
* Vietnamese translation for mlconfig [Pham Thanh Long]
* Other Bug fixes:
- SF Bug #1206515 [Takeshi Hakamata]
- SF Bug #1161055 [seiichi]
- Debian Bug #302231 [Andreas Jochens]
- Debian Bug #313970 [Jens Seidel]
- Debian Bug #350590 [seiichi]
- SUSE Bug #105320 [mfabian]
Diffstat (limited to 'x11/mlterm')
-rw-r--r-- | x11/mlterm/Makefile | 6 | ||||
-rw-r--r-- | x11/mlterm/PLIST | 3 | ||||
-rw-r--r-- | x11/mlterm/distinfo | 18 | ||||
-rw-r--r-- | x11/mlterm/patches/patch-ad | 21 | ||||
-rw-r--r-- | x11/mlterm/patches/patch-ah | 39 | ||||
-rw-r--r-- | x11/mlterm/patches/patch-ai | 57 | ||||
-rw-r--r-- | x11/mlterm/patches/patch-aj | 17 | ||||
-rw-r--r-- | x11/mlterm/patches/patch-ak | 40 | ||||
-rw-r--r-- | x11/mlterm/patches/patch-al | 52 | ||||
-rw-r--r-- | x11/mlterm/patches/patch-am | 56 | ||||
-rw-r--r-- | x11/mlterm/patches/patch-an | 26 | ||||
-rw-r--r-- | x11/mlterm/patches/patch-ao | 35 |
12 files changed, 355 insertions, 15 deletions
diff --git a/x11/mlterm/Makefile b/x11/mlterm/Makefile index 3561b3f064e..026cda0ebd2 100644 --- a/x11/mlterm/Makefile +++ b/x11/mlterm/Makefile @@ -1,7 +1,6 @@ -# $NetBSD: Makefile,v 1.46 2006/11/12 15:13:56 hira Exp $ +# $NetBSD: Makefile,v 1.47 2006/12/19 07:53:57 wiz Exp $ -DISTNAME= mlterm-2.9.2 -PKGREVISION= 4 +DISTNAME= mlterm-2.9.3 CATEGORIES= x11 MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=mlterm/} @@ -27,7 +26,6 @@ CONF_FILES+= ${EGDIR}/${f} ${PKG_SYSCONFDIR}/${f} .include "../../mk/bsd.prefs.mk" CONFIGURE_ARGS+= --with-imagelib=gdk-pixbuf -CONFIGURE_ARGS+= --with-type-engines=xft CONFIGURE_ARGS+= --without-libiconv-prefix CONFIGURE_ARGS+= --without-libintl-prefix CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFBASE:Q} diff --git a/x11/mlterm/PLIST b/x11/mlterm/PLIST index 703a66226c0..ef99d9e6bc0 100644 --- a/x11/mlterm/PLIST +++ b/x11/mlterm/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.17 2006/11/12 15:13:56 hira Exp $ +@comment $NetBSD: PLIST,v 1.18 2006/12/19 07:53:57 wiz Exp $ bin/mlcc bin/mlclient bin/mlterm @@ -30,6 +30,7 @@ share/examples/mlterm/vfont share/examples/mlterm/xim share/locale/de/LC_MESSAGES/mlconfig.mo share/locale/ja/LC_MESSAGES/mlconfig.mo +share/locale/vi/LC_MESSAGES/mlconfig.mo share/locale/zh_TW/LC_MESSAGES/mlconfig.mo @dirrm share/examples/mlterm @dirrm lib/mlterm diff --git a/x11/mlterm/distinfo b/x11/mlterm/distinfo index 70843067028..85a1eca2091 100644 --- a/x11/mlterm/distinfo +++ b/x11/mlterm/distinfo @@ -1,9 +1,17 @@ -$NetBSD: distinfo,v 1.16 2005/06/11 15:00:04 hira Exp $ +$NetBSD: distinfo,v 1.17 2006/12/19 07:53:57 wiz Exp $ -SHA1 (mlterm-2.9.2.tar.gz) = d71f07bb38553a7cae927f15b8d0a20a165eebe7 -RMD160 (mlterm-2.9.2.tar.gz) = c83693c353f266333dc85588d8c1366925cca79c -Size (mlterm-2.9.2.tar.gz) = 1980109 bytes -SHA1 (patch-ad) = eaaded295f050591e6a30286163f832aae93fa3a +SHA1 (mlterm-2.9.3.tar.gz) = 65ba5a7bd83accf7f621f84b84debb35c8f215ef +RMD160 (mlterm-2.9.3.tar.gz) = 27f4381a8b8b68b07e53bbeb422581beb7527b48 +Size (mlterm-2.9.3.tar.gz) = 1984977 bytes +SHA1 (patch-ad) = 4f6ef642002baa13bc4b7578cda0e45888fed27f SHA1 (patch-ae) = fde46b06d0dfb2c296c91a69e9e1f8ff11d68766 SHA1 (patch-af) = b9947c2a817093b71e3e91312bac173d5106c306 SHA1 (patch-ag) = 7f2ff30719dd9baecda31627b45f9516225ec602 +SHA1 (patch-ah) = 93b0ad1445faec91d29f3a01b69d9ac0f4ddfe90 +SHA1 (patch-ai) = c7dc11cdf4851e2e4018a5ec3111dd9f9ceffa63 +SHA1 (patch-aj) = ff103698ff544fa22fa660268dccb51b8b9e8bda +SHA1 (patch-ak) = 3b06cfc41ed12be11ea81d097f0592bb6b977e29 +SHA1 (patch-al) = 6b87b81e403a3fac9794c666c1e0260a3d5b5bd4 +SHA1 (patch-am) = 83684bfa15e5596abddef92cf994bb92b9f21990 +SHA1 (patch-an) = 156b8ebf5c7fdf68c39df7076849a05a90eb7e5a +SHA1 (patch-ao) = 680ac866197202e09c25d93b20a7e3b700f38370 diff --git a/x11/mlterm/patches/patch-ad b/x11/mlterm/patches/patch-ad index 8e2e27edc1e..de6b3ef7229 100644 --- a/x11/mlterm/patches/patch-ad +++ b/x11/mlterm/patches/patch-ad @@ -1,7 +1,7 @@ -$NetBSD: patch-ad,v 1.1 2005/03/06 17:50:49 hira Exp $ +$NetBSD: patch-ad,v 1.2 2006/12/19 07:53:57 wiz Exp $ ---- kiklib/src/kik_pty_streams.c.orig 2004-10-23 06:59:39.000000000 +0900 -+++ kiklib/src/kik_pty_streams.c 2005-03-05 23:07:02.000000000 +0900 +--- kiklib/src/kik_pty_streams.c.orig 2005-11-21 15:24:03.000000000 +0100 ++++ kiklib/src/kik_pty_streams.c 2006-12-16 00:04:11.000000000 +0100 @@ -9,6 +9,7 @@ /* When _XOPEN_SOURCE is defined, * u_int/u_long/... may not be defined without _BSD_SOURCE */ @@ -20,7 +20,15 @@ $NetBSD: patch-ad,v 1.1 2005/03/06 17:50:49 hira Exp $ #include "kik_str.h" /* strdup */ #include "kik_debug.h" -@@ -99,13 +103,30 @@ +@@ -75,6 +79,7 @@ + kik_msg_printf( "Unable to open a master pseudo-terminal device.\n") ; + return -1; + } ++ kik_file_set_cloexec( *master) ; + /* + * The behaviour of the grantpt() function is unspecified + * if the application has installed a signal handler to catch SIGCHLD signals. +@@ -104,13 +109,30 @@ return -1; } @@ -53,7 +61,7 @@ $NetBSD: patch-ad,v 1.1 2005/03/06 17:50:49 hira Exp $ /* * cygwin doesn't have isastream. */ -@@ -204,78 +225,13 @@ +@@ -209,79 +231,16 @@ } } @@ -136,5 +144,8 @@ $NetBSD: patch-ad,v 1.1 2005/03/06 17:50:49 hira Exp $ + kik_warn_printf( KIK_DEBUG_TAG " tcsetattr() failed.\n") ; + #endif } ++ ++ kik_file_set_cloexec( *slave) ; return pid ; + } diff --git a/x11/mlterm/patches/patch-ah b/x11/mlterm/patches/patch-ah new file mode 100644 index 00000000000..fc9cbbb92f2 --- /dev/null +++ b/x11/mlterm/patches/patch-ah @@ -0,0 +1,39 @@ +$NetBSD: patch-ah,v 1.1 2006/12/19 07:53:57 wiz Exp $ + +safer DIGIT_STR_LEN(). + +http://mlterm.cvs.sourceforge.net/mlterm/mlterm/kiklib/src/kik_util.h?r1=1.4&r2=1.5&view=patch + +--- kiklib/src/kik_util.h.orig 2002/02/02 09:20:27 1.4 ++++ kiklib/src/kik_util.h 2006/10/13 16:13:42 1.5 +@@ -10,19 +10,20 @@ + + #define K_MIN(n1,n2) ((n1) > (n2) ? (n2) : (n1)) + +-/* +- * char : 0 - 256 (3) +- * int16 : 0 - 65536 (5) +- * int32 : 0 - 4294967296 (10) +- * int64 : 0 - 18446744073709551616 (20) ++/* TYPE: MIN(signed) -- MAX(unsigned) (number of bytes needed) ++ * char : -128 -- 256 (4) ++ * int16 : -32768 -- 65536 (6) ++ * int32 : -2147483648 -- 4294967296 (11) ++ * int64 : -9223372036854775808 -- 18446744073709551616 (20) + * +- * 40 is evenly selected in other cases just to be sure. ++ * Since log10(2^8) = 2.4..., (sizeof(n)*3) is large enough ++ * for all n >= 2. + */ + #define DIGIT_STR_LEN(n) \ +- ((sizeof(n) == 1) ? 3 : \ +- (sizeof(n) == 2) ? 5 : \ +- (sizeof(n) == 4) ? 10 : \ +- (sizeof(n) == 8) ? 20 : 40) ++ ((sizeof(n) == 1) ? 4 : \ ++ (sizeof(n) == 2) ? 6 : \ ++ (sizeof(n) == 4) ? 11 : \ ++ (sizeof(n) == 8) ? 20 : (sizeof(n)*3)) + + + #endif diff --git a/x11/mlterm/patches/patch-ai b/x11/mlterm/patches/patch-ai new file mode 100644 index 00000000000..2a7da450536 --- /dev/null +++ b/x11/mlterm/patches/patch-ai @@ -0,0 +1,57 @@ +$NetBSD: patch-ai,v 1.1 2006/12/19 07:53:57 wiz Exp $ + +plugged fd leaks. + +http://mlterm.cvs.sourceforge.net/mlterm/mlterm/kiklib/src/kik_file.c?r1=1.5&r2=1.6&view=patch + +--- kiklib/src/kik_file.c.orig 2003-01-12 12:34:31.000000000 +0000 ++++ kiklib/src/kik_file.c +@@ -3,4 +3,5 @@ + */ + ++#include <fcntl.h> /* fcntl() */ + #include "kik_file.h" + +@@ -201,2 +202,42 @@ kik_file_unlock( + + #endif ++ ++int ++kik_file_set_cloexec( ++ int fd ++ ) ++{ ++ int old_flags ; ++ ++ old_flags = fcntl( fd, F_GETFD) ; ++ if( old_flags == -1) ++ { ++ return 0 ; ++ } ++ ++ if( !(old_flags & FD_CLOEXEC) ++ && (fcntl( fd, F_SETFD, old_flags|FD_CLOEXEC) == -1) ) ++ { ++ return 0 ; ++ } ++ return 1 ; ++} ++ ++kik_file_unset_cloexec( ++ int fd ++ ) ++{ ++ int old_flags ; ++ ++ old_flags = fcntl( fd, F_GETFD) ; ++ if( old_flags == -1) ++ { ++ return 0 ; ++ } ++ if( (old_flags & FD_CLOEXEC) ++ && (fcntl( fd, F_SETFD, old_flags & (~FD_CLOEXEC)) == -1) ) ++ { ++ return 0 ; ++ } ++ return 1 ; ++} diff --git a/x11/mlterm/patches/patch-aj b/x11/mlterm/patches/patch-aj new file mode 100644 index 00000000000..e2cbf465311 --- /dev/null +++ b/x11/mlterm/patches/patch-aj @@ -0,0 +1,17 @@ +$NetBSD: patch-aj,v 1.1 2006/12/19 07:53:57 wiz Exp $ + +plugged fd leaks. + +http://mlterm.cvs.sourceforge.net/mlterm/mlterm/kiklib/src/kik_file.h?r1=1.5&r2=1.6&view=patch + +--- kiklib/src/kik_file.h.orig 2003/01/12 12:34:31 1.5 ++++ kiklib/src/kik_file.h 2006/10/19 14:41:51 1.6 +@@ -33,5 +33,8 @@ + + int kik_file_unlock( int fd) ; + ++int kik_file_set_cloexec( int fd) ; ++ ++int kik_file_unset_cloexec( int fd) ; + + #endif diff --git a/x11/mlterm/patches/patch-ak b/x11/mlterm/patches/patch-ak new file mode 100644 index 00000000000..328465857c1 --- /dev/null +++ b/x11/mlterm/patches/patch-ak @@ -0,0 +1,40 @@ +$NetBSD: patch-ak,v 1.1 2006/12/19 07:53:57 wiz Exp $ + +plugged fd leaks. + +http://mlterm.cvs.sourceforge.net/mlterm/mlterm/kiklib/src/kik_pty_bsd.c?r1=1.9&r2=1.10&view=patch + +--- kiklib/src/kik_pty_bsd.c.orig 2003/03/08 03:19:29 1.9 ++++ kiklib/src/kik_pty_bsd.c 2006/10/19 14:41:51 1.10 +@@ -118,6 +118,7 @@ + } + else + { ++ kik_file_set_cloexec( *master) ; + /* + * we succeeded to open pty master. + * opening pty slave in succession. +@@ -136,6 +137,7 @@ + } + else + { ++ kik_file_set_cloexec( *slave) ; + return 1 ; + } + } +@@ -195,7 +197,6 @@ + /* + * parent process + */ +- + /* + * delaying. + */ +@@ -301,5 +302,7 @@ + #endif + } + ++ kik_file_set_cloexec( *slave) ; ++ + return pid ; + } diff --git a/x11/mlterm/patches/patch-al b/x11/mlterm/patches/patch-al new file mode 100644 index 00000000000..b583120a618 --- /dev/null +++ b/x11/mlterm/patches/patch-al @@ -0,0 +1,52 @@ +$NetBSD: patch-al,v 1.1 2006/12/19 07:53:57 wiz Exp $ + +plugged fd leaks. + +http://mlterm.cvs.sourceforge.net/mlterm/mlterm/xwindow/x_xim.c?r1=1.9&r2=1.11&view=patch + +--- xwindow/x_xim.c.orig 2005/02/10 15:15:08 1.9 ++++ xwindow/x_xim.c 2006/10/23 13:09:36 1.11 +@@ -5,6 +5,8 @@ + + #include "x_xim.h" + + #include <stdio.h> /* sprintf */ + #include <string.h> /* strcmp/memset */ ++#include <unistd.h> /* dup/close */ ++#include <kiklib/kik_file.h> /* kik_set_file_cloexec */ + #include <kiklib/kik_debug.h> +@@ -121,6 +123,7 @@ + char * xmod ; + char * cur_locale ; + int result ; ++ int next_fd ; /* to deal with brain-dead XIM implemantations */ + + /* 4 is the length of "@im=" */ + if( ( xmod = alloca( 4 + strlen( xim->name) + 1)) == NULL) +@@ -154,6 +157,12 @@ + + result = 0 ; + ++ next_fd = dup( 0) ; ++ if( next_fd != -1) ++ { ++ /* remember the lowest unused fd */ ++ close( next_fd) ; ++ } + if( XSetLocaleModifiers(xmod) && ( xim->im = XOpenIM( display , NULL , NULL , NULL))) + { + if( ( xim->encoding = ml_get_char_encoding( kik_get_codeset())) == ML_UNKNOWN_ENCODING || +@@ -172,7 +181,12 @@ + result = 1 ; + } + } +- ++ if( next_fd > 0) ++ { ++ /* if XOpenIM() internally opens a fd, ++ * we should close it on exec() */ ++ kik_file_set_cloexec( next_fd) ; ++ } + if( cur_locale) + { + /* restoring */ diff --git a/x11/mlterm/patches/patch-am b/x11/mlterm/patches/patch-am new file mode 100644 index 00000000000..83cb23bff69 --- /dev/null +++ b/x11/mlterm/patches/patch-am @@ -0,0 +1,56 @@ +$NetBSD: patch-am,v 1.1 2006/12/19 07:53:57 wiz Exp $ + +plugged fd leaks. + +http://mlterm.cvs.sourceforge.net/mlterm/mlterm/mlterm/ml_config_menu.c?r1=1.6&r2=1.7&view=patch + +--- mlterm/ml_config_menu.c.orig 2003/09/16 03:18:31 1.6 ++++ mlterm/ml_config_menu.c 2006/10/19 14:41:51 1.7 +@@ -33,6 +33,7 @@ + if( config_menu->pid == pid) + { + config_menu->pid = 0 ; ++ close( config_menu->fd) ; + config_menu->fd = -1 ; + } + } +@@ -83,6 +84,12 @@ + return 0 ; + } + ++ if( !kik_file_unset_cloexec( pty_fd)) ++ { ++ /* configulators require an inherited pty. */ ++ return 0 ; ++ } ++ + if( pipe( fds) == -1) + { + return 0 ; +@@ -131,8 +138,14 @@ + + close( fds[1]) ; + +- if( dup2( fds[0] , STDIN_FILENO) == -1 || dup2( pty_fd , STDOUT_FILENO) == -1 || +- execv( cmd_path , args) == -1) ++ /* for configulators, ++ * STDIN => to read replys from mlterm ++ * STDOUT => to write the "master" side of pty ++ * STDERR => is retained to be the mlterm's STDERR ++ */ ++ if( dup2( fds[0] , STDIN_FILENO) == -1 ++ || dup2( pty_fd , STDOUT_FILENO) == -1 ++ || execv( cmd_path , args) == -1) + { + /* failed */ + +@@ -148,6 +161,9 @@ + + config_menu->fd = fds[1] ; + config_menu->pid = pid ; ++ ++ kik_file_set_cloexec( pty_fd) ; ++ kik_file_set_cloexec( config_menu->fd) ; + + return 1 ; + } diff --git a/x11/mlterm/patches/patch-an b/x11/mlterm/patches/patch-an new file mode 100644 index 00000000000..d74dc627b2f --- /dev/null +++ b/x11/mlterm/patches/patch-an @@ -0,0 +1,26 @@ +$NetBSD: patch-an,v 1.1 2006/12/19 07:53:57 wiz Exp $ + +plugged fd leaks. + +http://mlterm.cvs.sourceforge.net/mlterm/mlterm/xwindow/x_display.c?r1=1.4&r2=1.5&view=patch + +--- xwindow/x_display.c.orig 2003/12/09 11:56:13 1.4 ++++ xwindow/x_display.c 2006/10/19 14:41:51 1.5 +@@ -7,6 +7,7 @@ + #include <kiklib/kik_debug.h> + #include <kiklib/kik_mem.h> + #include <kiklib/kik_str.h> /* strdup */ ++#include <kiklib/kik_file.h> /* kik_file_set_cloexec */ + + #include "x_xim.h" + #include "x_picture.h" +@@ -39,6 +40,9 @@ + goto error1 ; + } + ++ /* set close-on-exec flag on the socket connected to X. */ ++ kik_file_set_cloexec( XConnectionNumber( disp->display)); ++ + if( ( disp->name = strdup( name)) == NULL) + { + goto error2 ; diff --git a/x11/mlterm/patches/patch-ao b/x11/mlterm/patches/patch-ao new file mode 100644 index 00000000000..4cc77582bfd --- /dev/null +++ b/x11/mlterm/patches/patch-ao @@ -0,0 +1,35 @@ +$NetBSD: patch-ao,v 1.1 2006/12/19 07:53:57 wiz Exp $ + +plugged fd leaks. + +http://mlterm.cvs.sourceforge.net/mlterm/mlterm/xwindow/x_term_manager.c?r1=1.93&r2=1.95&view=patch + +--- xwindow/x_term_manager.c.orig 2006/09/30 16:09:44 1.93 ++++ xwindow/x_term_manager.c 2006/11/20 11:22:34 1.95 +@@ -872,7 +872,8 @@ + { + return -1 ; + } +- ++ kik_file_set_cloexec( sock_fd); ++ + while( bind( sock_fd , (struct sockaddr *) &servaddr , sizeof( servaddr)) < 0) + { + if( errno == EADDRINUSE) +@@ -993,7 +994,7 @@ + * If this flag off, this fd remained open until the child process forked in + * open_screen_intern()(ml_term_open_pty()) close it. + */ +- fcntl( fd , F_SETFD , 1) ; ++ kik_file_set_cloexec( fd) ; + + if( ( fp = fdopen( fd , "r+")) == NULL) + { +@@ -1855,6 +1856,7 @@ + { + additional_fds[i].fd = fd ; + additional_fds[i].handler = handler ; ++ kik_file_set_cloexec( fd); + + return 0 ; + } |