* send_process problem
@ 2002-05-10 17:15 Tak Ota
0 siblings, 0 replies; only message in thread
From: Tak Ota @ 2002-05-10 17:15 UTC (permalink / raw)
After the following changes (I believe Andrew's change is irrelevant)
send_process started failing while running Mew(email package) on
i386-msvc-nt5.0.2195.
2002-05-04 Jason Rumney <jasonr@gnu.org>
* keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
for event-click-count.
* process.c (init_process): Only add server subfeature if we can
use non-blocking I/O.
2002-05-04 Andrew Choi <akochoi@shaw.ca>
* macterm.c (XTread_socket): Call WaitNextEvent once instead of
repeatedly.
2002-05-03 Jason Rumney <jasonr@gnu.org>
* process.c (Fmake_network_process): Only support server sockets
when we can make them non-blocking.
* s/ms-w32.h (HAVE_SELECT): Define.
* w32.h (FILE_NDELAY): New flag.
* w32.c (sys_getpeername, fcntl): New functions.
(_sys_read_ahead): Temporarily block on non-blocking sockets.
* w32proc.c: include sys/file.h.
Here is the backtrace at the time when error occurred. The problem
only happens when a message size is large. It seems like the package
calls process-send-region for each 1000 characters. It has succeeded
up to 9000 characters then failed. I wondered if the network process
was killed due to the abruptly disconnected network but list-processes
showed the process was still there.
-Tak
Debugger entered--Lisp error: (file-error "writing to process" "invalid argument" #<process mew-smtp-info-mail1.sjc.in.sel.sony.com>)
process-send-region(#<process mew-smtp-info-mail1.sjc.in.sel.sony.com> 9001 10001)
(let ((next ...)) (process-send-region pro cont next) (setq cont next) (setq i (1+ i)))
(while (and (< cont ...) (not ...) (< i N)) (let (...) (process-send-region pro cont next) (setq cont next) (setq i ...)))
(let ((cont ...) (sender ...) (inc 1000) (i 0) (N 10)) (set-buffer (process-buffer pro)) (when (and sender ...) (process-send-string pro ...) (let ... ... ... ...)) (while (and ... ... ...) (let ... ... ... ...)) (mew-smtp-set-cont pnm cont) (if (< cont ...) (let ... ...) (mew-smtp-set-cont pnm nil) (mew-smtp-set-timer pnm nil) (process-send-string pro ...)))
(save-excursion (let (... ... ... ... ...) (set-buffer ...) (when ... ... ...) (while ... ...) (mew-smtp-set-cont pnm cont) (if ... ... ... ... ...)))
mew-smtp-command-content(#<process mew-smtp-info-mail1.sjc.in.sel.sony.com> "mew-smtp-info-mail1.sjc.in.sel.sony.com")
funcall(mew-smtp-command-content #<process mew-smtp-info-mail1.sjc.in.sel.sony.com> "mew-smtp-info-mail1.sjc.in.sel.sony.com")
(and func (funcall func process pnm))
(cond (next (mew-smtp-set-status pnm next) (setq func ...) (and func ...) (mew-smtp-set-string pnm nil)) (t (if ... ...) (mew-smtp-recover pnm str)))
(cond ((and ... ...) (setq code ...) (setq next ...) (cond ... ...)) (t nil))
(progn (set-buffer (process-buffer process)) (mew-smtp-set-string pnm str) (cond (... ... ... ...) (t nil)))
(unwind-protect (progn (set-buffer ...) (mew-smtp-set-string pnm str) (cond ... ...)) (if (get-buffer obuf) (set-buffer obuf)))
(let ((obuf ...)) (unwind-protect (progn ... ... ...) (if ... ...)))
(if (bufferp (process-buffer process)) (let (...) (unwind-protect ... ...)))
(mew-filter (mew-smtp-set-string pnm str) (cond (... ... ... ...) (t nil)))
(let* ((pnm ...) (status ...) (str ...) next func code) (mew-smtp-debug (upcase status) string) (mew-filter (mew-smtp-set-string pnm str) (cond ... ...)))
mew-smtp-filter(#<process mew-smtp-info-mail1.sjc.in.sel.sony.com> "354 Enter mail, end with \".\" on a line by itself\n")
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2002-05-10 17:15 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-05-10 17:15 send_process problem Tak Ota
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.