The good news is: I can reproduce the problem with the scp method not
working. Opening a non-existing file works fine, but after typing a
few letters, saving it doesn't work.
The code in question is in rcp-handle-write-region:
(save-excursion (set-buffer rcpbuf) (erase-buffer))
(unless (equal 0
(apply #'call-process
rcp-program nil rcpbuf nil
(append rcp-args
(list
tmpfil
(rcp-make-rcp-program-file-name
user host
(shell-quote-argument path))))))
(pop-to-buffer rcpbuf)
(error "rcp-handle-write-region: %s failed for file %s"
rcp-program filename)))
Here's what I did: I used edebug to step through the function. I
stopped after the save-excursion, just before the unless. I then used
M-: to eval the apply expression, just as it is written in the code.
This copied the file and returned 0. Good.
I then SPC'd through the apply, and it returned 2!
Just for good measure, I again hit M-: and evaled the same expression
again, and again it returned 0.
I'm flabbergasted. Why is the same code returning 2 when run from the
function and returning 0 when evaled manually? More importantly, why
does the scp work when run via M-: but not when run from the function?
Is there some black magic at work, here?
kai
--
This gubblick contains many nonsklarkish English flutzpahs,
but the overall pluggandisp can be glorked from context. -- David Moser