[mew-win32 4531] NTEmacs で start-process, call -process が無限再帰する
Hayashi Masahiro (林 雅博) <[email protected]>
| Newsgroups | gmane.mail.mew.windows |
|---|---|
| Message-ID | <[email protected]> |
[mew-win32 4516] Meadow
NTEmacs NTEmacs mw32script load-path
start-process, call-process
# 1
(defun hoge (msg)
(message msg))
(hoge "hoge1")
=> "hoge1"
(defalias 'hoge-original 'hoge)
(defun hoge (msg)
(apply 'hoge-original '("hoge2")))
(hoge "hoge1")
=> Lisp nesting exceeds `max-lisp-eval-depth'
Index: mew-win32.el
===================================================================
RCS file: /cvsmew/mew/mew-win32.el,v
retrieving revision 1.67
diff -u -r1.67 mew-win32.el
--- mew-win32.el 21 Jan 2009 05:55:00 -0000 1.67
+++ mew-win32.el 5 Feb 2009 04:54:26 -0000
@@ -62,7 +62,7 @@
(require 'mw32script)
(file-error nil)) ;; NTEmacs
(mw32script-make-pathext-regexp)
- (defalias 'call-process-original 'call-process)
+ (defvar mew-w32-call-process-original (symbol-function 'call-process))
(defun call-process (PROGRAM INFILE BUFFER DISPLAY &rest PROGRAM-ARGS)
(let (prog sargs)
(setq prog (mw32script-openp PROGRAM))
@@ -70,12 +70,12 @@
(setq prog (mew-which-exec PROGRAM))
(setq sargs (mw32script-resolve-script prog)))
(if sargs
- (apply 'call-process-original
+ (apply mew-w32-call-process-original
(car sargs) INFILE BUFFER DISPLAY
prog PROGRAM-ARGS)
- (apply 'call-process-original
+ (apply mew-w32-call-process-original
PROGRAM INFILE BUFFER DISPLAY PROGRAM-ARGS))))
- (defalias 'start-process-original 'start-process)
+ (defvar mew-w32-start-process-original (symbol-function 'start-process))
(defun start-process (NAME BUFFER PROGRAM &rest PROGRAM-ARGS)
(let (prog sargs)
(setq prog (mw32script-openp PROGRAM))
@@ -83,9 +83,9 @@
(setq prog (mew-which-exec PROGRAM))
(setq sargs (mw32script-resolve-script prog)))
(if sargs
- (apply 'start-process-original
+ (apply mew-w32-start-process-original
NAME BUFFER (car sargs) prog PROGRAM-ARGS)
- (apply 'start-process-original
+ (apply mew-w32-start-process-original
NAME BUFFER PROGRAM PROGRAM-ARGS))))))
;; printing