Dear Bug Team!
When I attempt to run 'w3m' with the 'tinypath' function of Jari
Aalto's
Tiny Tools package, XEmacs immdiately dies without a trace. Not even a
stack dump. Just disappears from the screen.
By doing this many times I made out a minibuffer message just before it
dies:
ad-handle-definition, "require" got redefined
So I set "ad-redefinition-action" to "accept", and managed to get
this
backtrace. Unfortunately I don't have the expertise to take it much further
than this. It looks like it it's coming from "poe.el", part of the APEL
package (BTW it happens with the standard XEmacs apel package, but this
backtrace comes from the newer 10.3 version of APEL).
Has anyone seen this before? It makes me nervous.
Ned Ludd
=== Backtrace ================================================
Signaling: (wrong-number-of-arguments (lambda (feature &optional filename)
"$ad-doc: require$" (let (ad-return-value) (let* ((feature feature) (opt
filename) (alist (get (quote require) (quote tinypath-load-list))) lib path)
(when (and (not (featurep feature)) (not (assq feature alist))) (setq lib
(cond ((stringp opt) (if (string-match "/" opt) (tinypath-expand-file-name
opt) opt)) (t (symbol-name feature)))) (when (setq path (tinypath-cache-p
lib)) (tinypath-verbose-macro 5 (message "TinyPath: (advice require) Cache
hit %s" lib)) (tinypath-cache-warn-if-not-exist path) (push (cons feature
path) alist) (put (quote require) (quote tinypath-load-list) alist) (setq
filename path))) (tinypath-time-macro (symbol-name feature) (setq
ad-return-value (ad-Orig-require feature filename)))) ad-return-value)) 3)
require(nofeature "nofile" noerror)
(progn (require (quote nofeature) "nofile" (quote noerror)) (if (get ...
...) (error "`require' is already redefined")))
(list (quote quote) (progn (require ... "nofile" ...) (if ... ...)))
(condition-case nil (list (quote quote) (progn ... ...)) (error (quote
...)))
eval((condition-case nil (list (quote quote) (progn ... ...)) (error
(quote ...))))
(lambda (var bodyform &rest handlers) "Like `condition-case', but evaluate
BODYFORM at compile time." (eval (\` ...)))(nil (progn (require (quote
nofeature) "nofile" (quote noerror)) (if (get ... ...) (error
"`require' is
already redefined"))) (error (or (fboundp ...) (progn ... ... ... ...))))
(static-condition-case nil (progn (require ... "nofile" ...) (if ... ...))
(error (or ... ...)))
load-internal("/usr/local/lib/xemacs/site-packages/lisp/apel/poe.el" nil t
t undecided)
efs-real-load("/usr/local/lib/xemacs/site-packages/lisp/apel/poe.el" nil t
t)
ad-Orig-load("/usr/local/lib/xemacs/site-packages/lisp/apel/poe.el" nil t
nil)
(setq ad-return-value (ad-Orig-load file noerror nomessage nosuffix))
(progn (setq ad-return-value (ad-Orig-load file noerror nomessage
nosuffix)))
(prog1 (progn (setq ad-return-value ...)) (tinypath-time-record file
start-time))
(let* ((start-time ...)) (prog1 (progn ...) (tinypath-time-record file
start-time)))
(tinypath-time-macro file (setq ad-return-value (ad-Orig-load file noerror
nomessage nosuffix)))
(let* ((file file) (nosuffix nosuffix) (must-suffix nil)) (when (and ...
...) (let ... ...)) (tinypath-time-macro file (setq ad-return-value ...)))
(let (ad-return-value) (let* (... ... ...) (when ... ...)
(tinypath-time-macro file ...)) ad-return-value)
load("/usr/local/lib/xemacs/site-packages/lisp/apel/poe.el" nil t nil)
efs-real-require(poe
"/usr/local/lib/xemacs/site-packages/lisp/apel/poe.el")
ad-Orig-require(poe
"/usr/local/lib/xemacs/site-packages/lisp/apel/poe.el")
(setq ad-return-value (ad-Orig-require feature filename))
(progn (setq ad-return-value (ad-Orig-require feature filename)))
(prog1 (progn (setq ad-return-value ...)) (tinypath-time-record
(symbol-name feature) start-time))
(let* ((start-time ...)) (prog1 (progn ...) (tinypath-time-record ...
start-time)))
(tinypath-time-macro (symbol-name feature) (setq ad-return-value
(ad-Orig-require feature filename)))
(let* ((feature feature) (opt filename) (alist ...) lib path) (when (and
... ...) (setq lib ...) (when ... ... ... ... ... ...)) (tinypath-time-macro
(symbol-name feature) (setq ad-return-value ...)))
(let (ad-return-value) (let* (... ... ... lib path) (when ... ... ...)
(tinypath-time-macro ... ...)) ad-return-value)
require(poe)
(cond ((or ... ... ...) (require ...) (require ...)))
(progn (cond (... ... ...)))
(eval-and-compile (cond (... ... ...)))
load-internal("/usr/local/lib/xemacs/site-packages/lisp/w3m/w3m-util.el"
nil t t undecided)
efs-real-load("/usr/local/lib/xemacs/site-packages/lisp/w3m/w3m-util.el"
nil t t)
ad-Orig-load("/usr/local/lib/xemacs/site-packages/lisp/w3m/w3m-util.el"
nil t nil)
(setq ad-return-value (ad-Orig-load file noerror nomessage nosuffix))
(progn (setq ad-return-value (ad-Orig-load file noerror nomessage
nosuffix)))
(prog1 (progn (setq ad-return-value ...)) (tinypath-time-record file
start-time))
(let* ((start-time ...)) (prog1 (progn ...) (tinypath-time-record file
start-time)))
(tinypath-time-macro file (setq ad-return-value (ad-Orig-load file noerror
nomessage nosuffix)))
(let* ((file file) (nosuffix nosuffix) (must-suffix nil)) (when (and ...
...) (let ... ...)) (tinypath-time-macro file (setq ad-return-value ...)))
(let (ad-return-value) (let* (... ... ...) (when ... ...)
(tinypath-time-macro file ...)) ad-return-value)
load("/usr/local/lib/xemacs/site-packages/lisp/w3m/w3m-util.el" nil t nil)
efs-real-require(w3m-util
"/usr/local/lib/xemacs/site-packages/lisp/w3m/w3m-util.el")
ad-Orig-require(w3m-util
"/usr/local/lib/xemacs/site-packages/lisp/w3m/w3m-util.el")
(setq ad-return-value (ad-Orig-require feature filename))
(progn (setq ad-return-value (ad-Orig-require feature filename)))
(prog1 (progn (setq ad-return-value ...)) (tinypath-time-record
(symbol-name feature) start-time))
(let* ((start-time ...)) (prog1 (progn ...) (tinypath-time-record ...
start-time)))
(tinypath-time-macro (symbol-name feature) (setq ad-return-value
(ad-Orig-require feature filename)))
(let* ((feature feature) (opt filename) (alist ...) lib path) (when (and
... ...) (setq lib ...) (when ... ... ... ... ... ...)) (tinypath-time-macro
(symbol-name feature) (setq ad-return-value ...)))
(let (ad-return-value) (let* (... ... ... lib path) (when ... ... ...)
(tinypath-time-macro ... ...)) ad-return-value)
require(w3m-util)
load-internal("/usr/local/lib/xemacs/site-packages/lisp/w3m/w3m.el" nil t
t undecided)
efs-real-load("/usr/local/lib/xemacs/site-packages/lisp/w3m/w3m.el" nil t
t)
ad-Orig-load("/usr/local/lib/xemacs/site-packages/lisp/w3m/w3m.el" nil nil
t)
(setq ad-return-value (ad-Orig-load file noerror nomessage nosuffix))
(progn (setq ad-return-value (ad-Orig-load file noerror nomessage
nosuffix)))
(prog1 (progn (setq ad-return-value ...)) (tinypath-time-record file
start-time))
(let* ((start-time ...)) (prog1 (progn ...) (tinypath-time-record file
start-time)))
(tinypath-time-macro file (setq ad-return-value (ad-Orig-load file noerror
nomessage nosuffix)))
(let* ((file file) (nosuffix nosuffix) (must-suffix nil)) (when (and ...
...) (let ... ...)) (tinypath-time-macro file (setq ad-return-value ...)))
(let (ad-return-value) (let* (... ... ...) (when ... ...)
(tinypath-time-macro file ...)) ad-return-value)
load("/usr/local/lib/xemacs/site-packages/lisp/w3m/w3m.el" nil nil t)
load-file("/usr/local/lib/xemacs/site-packages/lisp/w3m/w3m.el")
call-interactively(load-file)
command-execute(load-file t)
execute-extended-command(nil)
call-interactively(execute-extended-command)
=== End Backtrace ==================================================
Tinypath does advise 'require' as follows:
(defadvice require (around tinypath dis)
"Use `tinypath-:cache' for fast lookup of files.
Property (get 'require 'tinypath-load-list) contains list
of required packages: '((feature . path)."
(let* ((feature (ad-get-arg 0))
(opt (ad-get-arg 1)) ;the optional "file" parameter
(alist (get 'require 'tinypath-load-list))
lib
path)
(when (and (not (featurep feature))
;; Avoid recursive calls.
(not (assq feature alist)))
(setq lib (cond
((stringp opt)
(if (string-match "/" opt)
(tinypath-expand-file-name opt) opt))
(t
(symbol-name feature))))
(when (setq path (tinypath-cache-p lib))
(tinypath-verbose-macro 5
(message "TinyPath: (advice require) Cache hit %s" lib))
(tinypath-cache-warn-if-not-exist path)
(push (cons feature path) alist)
(put 'require 'tinypath-load-list alist)
(ad-set-arg 1 path)))
(tinypath-time-macro (symbol-name feature)
ad-do-it)))
This is the netinstaller installation.
My init file contains:
(setq max-lisp-eval-depth 100000)
(setq max-specpdl-size 50000)
(setq debug-on-error t)
(setq debug-on-signal t)
(setq stack-trace-on-error t)
(setq stack-trace-on-signal t)
(setq debug-on-quit t)
(setq ad-redefinition-action "accept")
autoload 'w3m "w3m" "Interface for w3m on Emacs." t)
(setq tinypath-:cache-file-prefix "~/.xemacs/cache/tinypath")
(setq tinypath-:load-path-root '("/usr/local/lib/xemacs"))
(require 'cl)
(pushnew "/usr/local/lib/xemacs/site-lisp/tiny-tools/lisp/tiny" load-path
:test 'string=)
(load "tinypath.el")
================================================================
System Info to help track down your bug:
---------------------------------------
uname -a: CYGWIN_NT-5.0 TSUNAMI 1.3.10(0.51/3/2) 2002-02-25 11:14 i686
unknown
./configure '--with-dragndrop' '--with-postgresql=no'
'--with-x=no'
'--bindir=/usr/local/bin/i686-pc-cygwin' '--with-site-lisp=yes'
'--with-ipv6-cname=no' '--with-netinstall'
XEmacs 21.4.8 "Honest Recruiter (Windows [3])" configured for
`i686-pc-cygwin'.
Compilation / Installation:
Source code location: /development/xemacs/xemacs-21.4-release
Installation prefix: /usr/local
Operating system description file: `s/cygwin32.h'
Machine description file: `m/intel386.h'
Compiler:
gcc -I/usr/lib/../include/noX -I/usr/lib/../include/noX -g -O3 -Wall -Wno-sw
itch -Winline -Wmissing-prototypes -Wsign-compare -Wshadow -Wpointer-arith
Relocating allocator for buffers: no
GNU version of malloc: yes
Window System:
Compiling in support for the Microsoft window system.
Using MS-Windows menubars.
Using MS-Windows scrollbars.
Using MS-Windows dialog boxes.
Using MS-Windows native widgets.
Compiling in support for Drag'n'Drop (EXPERIMENTAL).
- Drag'n'Drop prototype: msw.
TTY:
Compiling in support for ncurses.
Images:
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.
Sound:
Compiling in support for sound (native).
Databases:
Compiling in support for GNU DBM.
Internationalization:
Compiling in support for file coding.
Mail:
Compiling in support for POP mail retrieval.
Other Features:
Inhibiting IPv6 canonicalization at startup.
Compiling in support for dynamic shared object modules.
Load-Path Lisp Shadows:
----------------------
(/usr/local/lib/xemacs/xemacs-packages/lisp/mail-lib/starttls
/usr/local/lib/xemacs/site-packages/lisp/gnus/starttls
/usr/local/lib/xemacs/xemacs-packages/lisp/sieve/sieve
/usr/local/lib/xemacs/site-packages/lisp/gnus/sieve
/usr/local/lib/xemacs/xemacs-packages/lisp/sieve/sieve-mode
/usr/local/lib/xemacs/site-packages/lisp/gnus/sieve-mode
/usr/local/lib/xemacs/xemacs-packages/lisp/sieve/sieve-manage
/usr/local/lib/xemacs/site-packages/lisp/gnus/sieve-manage
/usr/local/lib/xemacs/xemacs-packages/lisp/mail-lib/rfc2104
/usr/local/lib/xemacs/site-packages/lisp/gnus/rfc2104
/usr/local/lib/xemacs/xemacs-packages/lisp/mail-lib/pop3
/usr/local/lib/xemacs/site-packages/lisp/gnus/pop3
/usr/local/lib/xemacs/xemacs-packages/lisp/mail-lib/netrc
/usr/local/lib/xemacs/site-packages/lisp/gnus/netrc
/usr/local/lib/xemacs/mule-packages/etc/start-files/ja/locale-start
/usr/local/lib/xemacs/mule-packages/etc/start-files/fr/locale-start
/usr/local/lib/xemacs/mule-packages/etc/start-files/ja/locale-start
/usr/local/lib/xemacs/mule-packages/etc/start-files/ro/locale-start
/usr/local/lib/xemacs/mule-packages/etc/start-files/ja/locale-start
/usr/local/lib/xemacs/mule-packages/lisp/locale/locale-start
/usr/local/lib/xemacs/xemacs-packages/lisp/text-modes/folding
/usr/local/lib/xemacs/site-lisp/tiny-tools/lisp/other/folding
/usr/local/lib/xemacs/xemacs-packages/lisp/mailcrypt/expect
/usr/local/lib/xemacs/site-lisp/tiny-tools/lisp/other/expect
/usr/local/lib/xemacs/site-packages/lisp/apel/calist
/usr/local/lib/xemacs/site-lisp/tiny-tools/lisp/other/calist
/usr/local/lib/xemacs/xemacs-packages/lisp/text-modes/swedish
/usr/local/lib/xemacs/xemacs-packages/etc/auctex/style/swedish
/usr/local/lib/xemacs/mule-packages/lisp/leim/quail/czech
/usr/local/lib/xemacs/xemacs-packages/etc/auctex/style/czech
/usr/local/lib/xemacs/site-packages/lisp/apel/alist
/usr/local/lib/xemacs-21.4.8/lisp/alist
/usr/local/lib/xemacs/mule-packages/lisp/leim/quail/thai-xtis
/usr/local/lib/xemacs-21.4.8/lisp/mule/thai-xtis
/usr/local/lib/xemacs/mule-packages/lisp/leim/quail/greek
/usr/local/lib/xemacs-21.4.8/lisp/mule/greek
/usr/local/lib/xemacs/mule-packages/lisp/leim/quail/cyrillic
/usr/local/lib/xemacs-21.4.8/lisp/mule/cyrillic)
Installed XEmacs Packages:
-------------------------
((zenirc:version 1.13 :type regular)
(xslt-process :version 1.1 :type regular)
(xslide :version 1.01 :type regular)
(xemacs-devel :version 1.47 :type single-file)
(xemacs-base :version 1.66 :type regular)
(w3 :version 1.25 :type regular)
(vm :version 7.07 :type regular)
(viper :version 1.34 :type regular)
(view-process :version 1.11 :type regular)
(vhdl :version 1.15 :type regular)
(vc-cc :version 1.21 :type regular)
(vc :version 1.33 :type regular)
(tramp :version 1.05 :type regular)
(tpu :version 1.12 :type regular)
(tooltalk :version 1.13 :type regular)
(time :version 1.11 :type regular)
(textools :version 1.12 :type regular)
(text-modes :version 1.48 :type single-file)
(texinfo :version 1.2 :type regular)
(supercite :version 1.19 :type regular)
(strokes :version 1.08 :type regular)
(sounds-wav :version 1.1 :type regular)
(sounds-au :version 1.1 :type regular)
(slider :version 1.13 :type regular)
(sieve :version 1.07 :type regular)
(sh-script :version 1.15 :type regular)
(sgml :version 1.08 :type regular)
(scheme :version 1.11 :type regular)
(rmail :version 1.13 :type regular)
(reftex :version 1.25 :type regular)
(psgml :version 1.28 :type regular)
(ps-print :version 1.04 :type regular)
(prog-modes
:version
1
.59
:type
single-file)
(pcomplete :version 1.01 :type regular)
(pcl-cvs :version 1.63 :type regular)
(pc :version 1.25 :type single-file)
(os-utils :version 1.28 :type single-file)
(net-utils :version 1.27 :type single-file)
(mmm-mode :version 1.0 :type regular)
(misc-games :version 1.15 :type single-file)
(mine :version 1.14 :type regular)
(mh-e :version 1.14 :type regular)
(mew :version 1.17 :type regular)
(mailcrypt :version 2.11 :type regular)
(mail-lib :version 1.47 :type regular)
(liece :version 1.07 :type regular)
(jde :version 1.35 :type regular)
(ispell :version 1.24 :type regular)
(ilisp :version 1.27 :type regular)
(igrep :version 1.08 :type regular)
(idlwave :version 1.25 :type regular)
(ibuffer :version 1.08 :type regular)
(hm--html-menus :version 1.18 :type regular)
(haskell-mode :version 1.03 :type regular)
(gnats :version 1.15 :type regular)
(games :version 1.13 :type regular)
(fsf-compat :version 1.11 :type single-file)
(frame-icon :version 1.09 :type regular)
(forms :version 1.14 :type regular)
(footnote :version 1.15 :type regular)
(eudc :version 1.36 :type regular)
(eterm :version 1.13 :type regular)
(ess :version 1.02 :type regular)
(eshell :version 1.03 :type regular)
(emerge :version 1.09 :type regular)
(elib :version 1.1 :type single-file)
(efs :version 1.29 :type regular)
(edt :version 1.12 :type regular)
(edit-utils :version 1.89 :type single-file)
(ediff :version 1.41 :type regular)
(edebug :version 1.14 :type regular)
(dired :version 1.12 :type regular)
(dictionary :version 1.11 :type regular)
(debug :version 1.15 :type regular)
(crisp :version 1.12 :type regular)
(cookie :version 1.14 :type regular)
(clearcase :version 1.04 :type regular)
(cc-mode :version 1.28 :type regular)
(calendar :version 1.18 :type regular)
(calc :version 1.23 :type regular)
(c-support :version 1.16 :type single-file)
(build :version 1.06 :type regular)
(bbdb :version 1.21 :type regular)
(auctex :version 1.32 :type regular)
(ada :version 1.1 :type regular)
(Sun :version 1.13 :type regular)
(x-symbol :version 4.41 :type regular))
Features:
--------
(mail-abbrevs xemacsbug shadow sendmail rfc822 debug poe-xemacs
overlay poe pym edebug eval-reg static apel-ver product timer
efs-x19.15 efs-fnh efs-ovwrt efs-cu efs-netrc efs-defun comint ring
efs assoc executable info cus-face advice advice-preload pp tinypath
zenirc-autoloads xslt-process-autoloads xslide-autoloads
xemacs-devel-autoloads xemacs-base-autoloads w3-autoloads vm-autoloads
viper-autoloads view-process-autoloads vhdl-autoloads vc-cc-autoloads
vc-autoloads tramp-autoloads tpu-autoloads tooltalk-autoloads
time-autoloads textools-autoloads text-modes-autoloads
texinfo-autoloads supercite-autoloads strokes-autoloads
sounds-wav-autoloads sounds-au-autoloads slider-autoloads
sieve-autoloads sh-script-autoloads sgml-autoloads scheme-autoloads
rmail-autoloads reftex-autoloads psgml-autoloads ps-print-autoloads
prog-modes-autoloads pcomplete-autoloads pcl-cvs-autoloads
pc-autoloads os-utils-autoloads net-utils-autoloads mmm-mode-autoloads
misc-games-autoloads mine-autoloads mh-e-autoloads mew-autoloads
mailcrypt-autoloads mail-lib-autoloads liece-autoloads jde-autoloads
ispell-autoloads ilisp-autoloads igrep-autoloads idlwave-autoloads
ibuffer-autoloads hm--html-menus-autoloads haskell-mode-autoloads
gnats-autoloads games-autoloads fsf-compat-autoloads
frame-icon-autoloads forms-autoloads footnote-autoloads eudc-autoloads
eterm-autoloads ess-autoloads eshell-autoloads emerge-autoloads
elib-autoloads efs-autoloads edt-autoloads edit-utils-autoloads
ediff-autoloads edebug-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
ada-autoloads Sun-autoloads x-symbol-autoloads apel-autoloads
lisp-autoloads loadhist auto-show fontl-hooks code-cmds gutter-items
menubar-items x-menubar dragdrop mode-motion mouse itimer auto-save
lisp-mode easymenu iso8859-1 page buff-menu lib-complete help-nomule
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 mswindows-scrollbars mswindows tty-frames tty toolbar
native-sound scrollbar unix-processes multicast network-streams
subprocesses modules menu-accelerator-support menubar dbm md5 xemacs
gutter tiff png gif jpeg xface xpm xbm lisp-float-type cygwin32
dragdrop-api dialog devices window-system base64)
Recent keystrokes:
-----------------
button1 button1up M-x l o a d - f i l e RET / u s r
/ l o c a l / l i b / x e m TAB / s i TAB p a TAB l
i s TAB w 3 m / w 3 m . e l RET M-x r e p o TAB r t
TAB x e TAB RET
Recent messages (most recent first):
-----------------------------------
Loading
/usr/local/lib/xemacs/xemacs-packages/lisp/net-utils/xemacsbug.elc...done
Loading
/usr/local/lib/xemacs/xemacs-packages/lisp/net-utils/xemacsbug.elc...
Making completion list...
Entering debugger...
Loading
/usr/local/lib/xemacs/xemacs-packages/lisp/xemacs-base/debug.elc...done
Loading /usr/local/lib/xemacs/xemacs-packages/lisp/xemacs-base/debug.elc...
Loading /usr/local/lib/xemacs/xemacs-packages/lisp/edebug/edebug.elc...done
Loading /usr/local/lib/xemacs/xemacs-packages/lisp/edebug/edebug.elc...
Loading /usr/local/lib/xemacs/site-packages/lisp/w3m/w3m.el...
Loading tinypath.el...done
TinyPath: total 3549, load-path 145, exec-path 19, Info 6
TinyPath: total 3549, load-path 145, exec-path 19, Info 6 time 3 sec
TinyPath: tinypath-install END 2002-07-25 15:41:45
** tinypath.el: Hm, no woman.el found to read manual pages.
http://www.maths.qmw.ac.uk/~fjw/
TinyPath: `load-path' synchronization watchdog INSTALLED.
Loading
/usr/local/lib/xemacs/xemacs-packages/lisp/fsf-compat/timer.elc...done
Loading /usr/local/lib/xemacs/xemacs-packages/lisp/fsf-compat/timer.elc...
TinyPath: cache advice code ACTIVATED.
TinyPath: total 3549, load-path 145, exec-path 19, Info 6
TinyPath: PATH-NOK tinypath-:load-path-ignore-regexp matches [/texinfo]
(ignored) /usr/local/lib/xemacs/xemacs-packages/lisp/texinfo