Title [Bug: 21.4.21] eterm: should perhaps set coding-system-for-read to binary
Type defect Module core code 21.4, core code 21.5, eterm
Severity some work obstructed Platform N/A
Keywords Nosy List haastord
These controls should only be changed by committers and tracker administrators.
Status new   Reason
Superseder   Submitted 2008-06-26.23:59:20
Priority normal   Assigned To

Created on 2008-11-29.06:19:55 by haastord, last changed 2009-03-06.14:34:37 by stephen.

msg1071 [hidden] ([hidden]) Date: 2009-03-06.14:34:37
  Message-ID: <>
I think this has been reported before and maybe fixed, will check later.

Since this happens with --file-coding, probably it's enough to set it to 
'undecided-unix or something like that, but ISTR the problem was something 
like eterm chomping off the CR without checking if there was one (or even 
a line end at all).
msg861 [hidden] ([hidden]) Date: 2008-11-29.06:19:55
  Message-ID: <>
Dear Bug Team!

I've had some trouble with the terminal emulator provided by the eterm
package (version 1.17). I first noticed the problem when using the
XEmacs packages distributed by Debian, but the problem also occur
after I build XEmacs myself with either of the --with-file-coding
or --with-mule configuration options enabled. However, the problem
doesn't happen if I build XEmacs with no configuration options enabled.

After I type M-x term RET RET I get the following error message:

(1) (error/warning) Error in process filter: (error /home/haakonst/xemac/
is not a directory)

(Note there's a missing "s" character before the last slash in the
directory name.) I've included the backtrace I get for this error when
debug-on-error set is to t below. Anyhow, I'm presented with the
terminal buffer and the shell prompt, but when I start to use it, the
buffer gets garbled up in a way that makes me think that newlines are
somehow inadvertently stripped before the text is displayed in the

However, after some testing, I tried to change the coding system for
process output to binary (for some reason the default value was
undecided-dos), and that seems to solve the problem. So, I think that
it could be useful to always set coding-system-for-read to binary
before a process is started in the terminal, like this simple patch

--- a/lisp/eterm/term.el        2005-06-27 07:37:01.000000000 +0000
+++ b/lisp/eterm/term.el        2008-06-25 22:05:00.000000000 +0000
@@ -1095,7 +1095,8 @@
           (format "EMACS=%s (term:%s)" emacs-version term-protocol-version)
           (format "LINES=%d" term-height)
           (format "COLUMNS=%d" term-width))
-         process-environment)))
+         process-environment))
+       (coding-system-for-read 'binary))
     (if (eq system-type 'windows-nt)
        (apply 'start-process name buffer
               command switches)

This was actually derived from the equivalent code in term.el from
GNU Emacs.

The backtrace:

Debugger entered--Lisp error: (error "/home/haakonst/xemac/ is not a directory")
  signal(error ("/home/haakonst/xemac/ is not a directory"))
  cerror("%s is not a directory" "/home/haakonst/xemac/")
  apply(cerror "%s is not a directory" "/home/haakonst/xemac/")
  error("%s is not a directory" "/home/haakonst/xemac/")
  #<compiled-function (string) "...(56)" [term-pending-frame fileline filename second-colon first-colon string 0 ?\^Z string-match ":" 1 string-to-int ?/ cd nil t] 4>("//home/haakonst/xemac")
  term-emulate-terminal(#<process "terminal" pid 9904 state:run> "^Z//home/haakonst/xemacs\n")


System Info to help track down your bug:

uname -a: Linux ninsei #1 SMP PREEMPT Fri Jun 20 14:17:13 PDT 2008 i686 GNU/Linux

./configure  '--with-sound=none,native' '--with-x11' '--extra-verbose' '--with-site-lisp' '--with-database=berkdb' '--statedir=/var/lib' '--infodir=/usr/share/info/xemacs21' '--infopath=/usr/share/info/xemacs21' '--prefix=/usr' '--dynamic' '--error-checking=none' '--debug=no' '--with-pop' '--with-file-coding' '--pdump' '--with-system-malloc' '--with_menubars=lucid' '--with_scrollbars=lucid' '--with_dialogs=athena' '--docdir=/usr/lib/xemacs-21.4.21/i486-linux-gnu/mule/' '--with-mule' '--with-canna=no' '--with-wnn=no' '--with-xim=xlib' '--with-xfs' '--package-path=~/.xemacs:~/.xemacs/packages:~/.xemacs/xemacs-packages::/usr/share/xemacs21/site-packages:/usr/share/xemacs21/mule-packages:/usr/share/xemacs21/xemacs-packages' 'i486-linux-gnu'

XEmacs 21.4.21 "Educational Television" configured for `i486-pc-linux'.

Compilation / Installation:
  Source code location:              /build/buildd/xemacs21-21.4.21
  Installation prefix:               /usr
  Operating system description file: `s/linux.h'
  Machine description file:          `m/intel386.h'
  Compiler:                          gcc -g -O2
  Compiler version:                  gcc (Debian 4.3.1-2) 4.3.1
  Compiler specs file:               specs.
  Relocating allocator for buffers:  no
  GNU version of malloc:             no
    - User chose not to use GNU allocators.
Need to guess glibc1/2/etc here

Window System:
  Compiling in support for the X window system:
    - X Windows headers location:                 
    - X Windows libraries location:               
    - Handling WM_COMMAND properly.
  Compiling in support for the Athena widget set:
    - Athena headers location:                    X11/Xaw
    - Athena library to link:                     Xaw
  Using Lucid menubars.
  Using Lucid scrollbars.
  Using Athena dialog boxes.
  Using Athena native widgets.

  Compiling in support for ncurses.
  Compiling in support for GPM (General Purpose Mouse).

  Compiling in support for GIF  images (builtin).
  Compiling in support for XPM  images.
  Compiling in support for PNG  images.
  Compiling in support for JPEG images.
  Compiling in support for TIFF images.
  Compiling in support for X-Face message headers.

  Compiling in support for sound (native).

  Compiling in support for Berkeley database.
  Compiling in support for LDAP.

  Compiling in support for Mule (multi-lingual Emacs).
  Compiling in support for file coding.
  Compiling in support for XIM (X11R5+ I18N input method).
    - Using raw Xlib to provide XIM support.
    - Using XFontSet to provide bilingual menubar.

  Compiling in support for POP mail retrieval.
  Compiling in support for "dot-locking" mail spool file locking method.

Other Features:
  Inhibiting IPv6 canonicalization at startup.
  Compiling in support for dynamic shared object modules.
  Using the new portable dumper.

Load-Path Lisp Shadows:

Installed XEmacs Packages:
(zenirc ver: 1.16 upstream: 2.112)
(xwem ver: 1.22 upstream: lg at
(xslt-process ver: 1.12 upstream: 1.2.1)
(xslide ver: 1.09 upstream: 0.2.2)
(xlib ver: 1.14 upstream: lg at
(xetla ver: 1.01 upstream: steve at
(xemacs-devel ver: 1.75 upstream: No-Upstream-Ver)
(xemacs-base ver: 2.1 upstream: No-Upstream-Ver)
(x-symbol ver: 1.1 upstream: 4.5.1)
(w3 ver: 1.33 upstream: 4.0pre47)
(vm ver: 7.22 upstream: 7.17)
(viper ver: 1.55 upstream: 3.09)
(view-process ver: 1.13 upstream: 2.4)
(vhdl ver: 1.22 upstream: 3.33.12)
(vc-cc ver: 1.22 upstream: No-Upstream-Ver)
(vc ver: 1.41 upstream: No-Upstream-Ver)
(tramp ver: 1.37 upstream: 2.0.55)
(tpu ver: 1.14 upstream: 4.2X)
(tooltalk ver: 1.15 upstream: No-Upstream-Ver)
(tm ver: 1.38 upstream: No-Upstream-Ver)
(time ver: 1.14 upstream: 1.17)
(textools ver: 1.15 upstream: No-Upstream-Ver)
(text-modes ver: 1.92 upstream: No-Upstream-Ver)
(texinfo ver: 1.3 upstream: No-Upstream-Ver)
(supercite ver: 1.21 upstream: 3.55x3)
(strokes ver: 1.1 upstream: No-Upstream-Ver)
(speedbar ver: 1.28 upstream: 0.14beta4)
(sounds-wav ver: 1.12 upstream: No-Upstream-Ver)
(sounds-au ver: 1.12 upstream: No-Upstream-Ver)
(sml-mode ver: 0.12 upstream: 3.9.5)
(slider ver: 1.15 upstream: 0.3x1)
(sieve ver: 1.18 upstream: No-Upstream-Ver)
(sh-script ver: 1.22 upstream: 2.0f)
(sgml ver: 1.11 upstream: No-Upstream-Ver)
(semantic ver: 1.2 upstream: 1.4.4)
(scheme ver: 1.15 upstream: No-Upstream-Ver)
(sasl ver: 1.16 upstream: 1.14.4)
(ruby-modes ver: 1.02 upstream: 1.6.8)
(rmail ver: 1.14 upstream: No-Upstream-Ver)
(riece ver: 1.23 upstream: 3.1.2)
(reftex ver: 1.34 upstream: 4.21)
(re-builder ver: 1.05 upstream: 1.20)
(python-modes ver: 1.08 upstream: No-Upstream-Ver)
(psgml-dtds ver: 1.03 upstream: No-Upstream-Ver)
(psgml ver: 1.44 upstream: 1.3.1)
(ps-print ver: 1.11 upstream: 6.5.6)
(prog-modes ver: 2.1 upstream: No-Upstream-Ver)
(pgg ver: 1.06 upstream: 0.1)
(perl-modes ver: 1.09 upstream: No-Upstream-Ver)
(pcomplete ver: 1.04 upstream: 1.1.6)
(pcl-cvs ver: 1.67 upstream: R-2_9_9)
(pc ver: 1.28 upstream: No-Upstream-Ver)
(os-utils ver: 1.39 upstream: No-Upstream-Ver)
(oo-browser ver: 1.04 upstream: 4.08)
(ocaml ver: 0.06 upstream: 3.06)
(net-utils ver: 1.52 upstream: N/A)
(mmm-mode ver: 1.02 upstream: 0.4.7)
(misc-games ver: 1.19 upstream: No-Upstream-Ver)
(mine ver: 1.16 upstream: 1.9)
(mh-e ver: 1.29 upstream: 7.4.2)
(mew ver: 1.19 upstream: 1.94.2)
(mailcrypt ver: 2.14 upstream: 3.5.8)
(mail-lib ver: 1.79 upstream: No-Upstream-Ver)
(jde ver: 1.51 upstream: 2.3.3)
(ispell ver: 1.32 upstream: 3.6)
(ilisp ver: 1.34 upstream: 5.12.0)
(igrep ver: 1.14 upstream: 2.111)
(idlwave ver: 1.32 upstream: 5.1)
(ibuffer ver: 1.09 upstream: No-Upstream-Ver)
(hyperbole ver: 1.16 upstream: 4.18)
(hm--html-menus ver: 1.23 upstream: 5.9)
(haskell-mode ver: 1.11 upstream: 2.1)
(gnus ver: 1.91 upstream: 5.10.8)
(gnats ver: 1.17 upstream: 3.101)
(general-docs ver: 1.04 upstream: No-Upstream-Ver)
(games ver: 1.17 upstream: 1.04)
(fsf-compat ver: 1.15 upstream: No-Upstream-Ver)
(frame-icon ver: 1.11 upstream: No-Upstream-Ver)
(fortran-modes ver: 1.05 upstream: No-Upstream-Ver)
(forms ver: 1.15 upstream: 2.37)
(footnote ver: 1.16 upstream: 0.18x)
(eudc ver: 1.39 upstream: 1.32)
(eterm ver: 1.17 upstream: No-Upstream-Ver)
(eshell ver: 1.1 upstream: 2.4.1)
(escreen ver: 1.01 upstream: 1.16)
(erc ver: 0.21 upstream: Version 5.1.2 Revision: 1.796.2.6)
(emerge ver: 1.11 upstream: No-Upstream-Ver)
(elib ver: 1.11 upstream: 1.0)
(eieio ver: 1.05 upstream: 0.17)
(efs ver: 1.33 upstream: 1.23)
(edt ver: 1.13 upstream: No-Upstream-Ver)
(edit-utils ver: 2.37 upstream: No-Upstream-Ver)
(ediff ver: 1.68 upstream: 2.75)
(edebug ver: 1.22 upstream: No-Upstream-Ver)
(ecrypto ver: 0.2 upstream: 2.0)
(ecb ver: 1.22 upstream: 2.31)
(docbookide ver: 0.08 upstream: 0.1)
(dired ver: 1.17 upstream: 7.13)
(dictionary ver: 1.16 upstream: 1.8)
(debug ver: 1.18 upstream: No-Upstream-Ver)
(crisp ver: 1.15 upstream: 1.34)
(cookie ver: 1.15 upstream: No-Upstream-Ver)
(clearcase ver: 1.1 upstream: /main/laptop/165)
(cc-mode ver: 1.45 upstream: 5.30.10)
(calendar ver: 1.32 upstream: No-Upstream-Ver)
(calc ver: 1.26 upstream: 2.02fX3)
(c-support ver: 1.22 upstream: No-Upstream-Ver)
(build ver: 1.14 upstream: 2.02)
(bbdb ver: 1.32 upstream: 2.35)
(auctex ver: 1.47 upstream: 11.55)
(apel ver: 1.32 upstream: 10.6)
(ada ver: 1.14 upstream: 2.27)
(Sun ver: 1.16 upstream: No-Upstream-Ver)
(skk ver: 1.23 upstream: 10.62a)
(mule-ucs ver: 1.14 upstream: 0.84)
(mule-base ver: 1.49 upstream: No-Upstream-Ver)
(lookup ver: 1.15 upstream: 1.0)
(locale ver: 1.24 upstream: No-Upstream-Ver)
(leim ver: 1.24 upstream: No-Upstream-Ver)
(latin-unity ver: 1.2 upstream: 1.20)
(latin-euro-standards ver: 1.07 upstream: 1.07)
(egg-its ver: 1.27 upstream: No-Upstream-Ver)
(edict ver: 1.16 upstream: 0.9.9)

Installed Modules:


(mail-abbrevs xemacsbug shadow sendmail rfc822 term ehelp electric
ring zenirc-autoloads xwem-autoloads xslt-process-autoloads
xslide-autoloads xlib-autoloads xetla-autoloads xemacs-devel-autoloads
xemacs-base-autoloads x-symbol-autoloads w3-autoloads vm-autoloads
viper-autoloads view-process-autoloads vhdl-autoloads vc-cc-autoloads
vc-autoloads tramp-autoloads tpu-autoloads tooltalk-autoloads
tm-autoloads time-autoloads textools-autoloads text-modes-autoloads
texinfo-autoloads supercite-autoloads strokes-autoloads
speedbar-autoloads sounds-wav-autoloads sounds-au-autoloads
sml-mode-autoloads slider-autoloads sieve-autoloads
sh-script-autoloads sgml-autoloads semantic-autoloads scheme-autoloads
sasl-autoloads ruby-modes-autoloads rmail-autoloads riece-autoloads
reftex-autoloads re-builder-autoloads python-modes-autoloads
psgml-dtds-autoloads psgml-autoloads ps-print-autoloads
prog-modes-autoloads pgg-autoloads perl-modes-autoloads
pcomplete-autoloads pcl-cvs-autoloads pc-autoloads os-utils-autoloads
oo-browser-autoloads ocaml-autoloads net-utils-autoloads
mmm-mode-autoloads misc-games-autoloads mine-autoloads mh-e-autoloads
mew-autoloads mailcrypt-autoloads mail-lib-autoloads jde-autoloads
ispell-autoloads ilisp-autoloads igrep-autoloads idlwave-autoloads
ibuffer-autoloads hyperbole-autoloads hm--html-menus-autoloads
haskell-mode-autoloads gnus-autoloads gnats-autoloads
general-docs-autoloads games-autoloads fsf-compat-autoloads
frame-icon-autoloads fortran-modes-autoloads forms-autoloads
footnote-autoloads eudc-autoloads eterm-autoloads eshell-autoloads
escreen-autoloads erc-autoloads emerge-autoloads elib-autoloads
eieio-autoloads efs-autoloads edt-autoloads edit-utils-autoloads
ediff-autoloads edebug-autoloads ecrypto-autoloads ecb-autoloads
docbookide-autoloads dired-autoloads dictionary-autoloads
debug-autoloads crisp-autoloads cookie-autoloads clearcase-autoloads
cc-mode-autoloads calendar-autoloads calc-autoloads
c-support-autoloads build-autoloads bbdb-autoloads auctex-autoloads
apel-autoloads ada-autoloads Sun-autoloads skk-autoloads
mule-ucs-autoloads mule-base-autoloads lookup-autoloads
locale-autoloads leim-autoloads latin-unity-autoloads
latin-euro-standards-autoloads egg-its-autoloads edict-autoloads
lisp-autoloads loadhist auto-show fontl-hooks x-iso8859-1 slovenian
czech romanian ccl mule-help code-cmds gutter-items menubar-items
x-menubar mode-motion mouse itimer auto-save lisp-mode easymenu
iso8859-1 page buff-menu lib-complete cus-file derived frame
text-props obsolete cus-start custom widget cl-extra mini-cl cl cl-19
packages backquote very-early-lisp file-coding mule lucid-scrollbars
cut-buffer lucid-menubars athena-dialogs x c-balloon-help tty-frames
tty toolbar native-sound scrollbar unix-processes multicast
network-streams subprocesses modules menu-accelerator-support menubar
berkeley-db md5 xemacs xim gutter tiff png gif jpeg xface xpm xbm
lisp-float-type linux dialog devices window-system base64)

Recent keystrokes:

M-x t e r m RET RET RET C-c k RET M-x r e p o r t - 
x e m a c s - b u g RET

Recent messages (most recent first):

Loading xemacsbug...done
Loading xemacsbug...
Loading term...done
Loading term...

XEmacs-Beta mailing list
XEmacs-Beta at
Date User Action Args
2009-03-06 14:34:37stephensetstatus: new
severity: some work obstructed
messages: + msg1071
module: + core code 21.4, core code 21.5, eterm
priority: normal
platform: + N/A
type: defect
2008-11-29 06:19:55haastordcreate