GNU bug report logs -
#40576
call-process-region does not accept nil as first argument
Previous Next
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Sun, 12 Apr 2020 19:07:03 +0200
with message-id <CAArVCkTVb5ZmmOpTjDr+wQJGfehqJm+DymgnmeXHbux-qe6veQ <at> mail.gmail.com>
and subject line Re: bug#40576: call-process-region does not accept nil as first argument
has caused the debbugs.gnu.org bug report #40576,
regarding call-process-region does not accept nil as first argument
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
40576: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=40576
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
[Message part 3 (text/plain, inline)]
Hi,
According to the documentation of call-process-region,
If START is nil, that means to use the entire buffer contents; END is
ignored.
But when I run:
(call-process-region nil nil "/bin/cat" t (current-buffer))
I get:
Debugger entered--Lisp error: (wrong-type-argument integer-or-marker-p nil)
call-process-region(nil nil "/bin/cat" t #<buffer *scratch*>)
eval((call-process-region nil nil "/bin/cat" t (current-buffer)) nil)
elisp--eval-last-sexp(t)
eval-last-sexp(t)
eval-print-last-sexp(nil)
funcall-interactively(eval-print-last-sexp nil)
call-interactively(eval-print-last-sexp nil nil)
command-execute(eval-print-last-sexp)
If, instead, I run:
(call-process-region (point-min) (point-max) "/bin/cat" t (current-buffer))
It works.
Am I interpreting the documentation wrong?
Emacs version:
GNU Emacs 26.3 (build 1, x86_64-apple-darwin18.2.0, NS appkit-1671.20
Version 10.14.3 (Build 18D109)) of 2019-09-02
Thank you
[Message part 4 (text/html, inline)]
[Message part 5 (message/rfc822, inline)]
Am So., 12. Apr. 2020 um 18:01 Uhr schrieb Philipp Stephani
<p.stephani2 <at> gmail.com>:
>
> Am So., 12. Apr. 2020 um 17:44 Uhr schrieb Pietro Giorgianni
> <giorgian <at> gmail.com>:
> >
> > Hi,
> >
> > According to the documentation of call-process-region,
> > If START is nil, that means to use the entire buffer contents; END is
> > ignored.
> >
> > But when I run:
> > (call-process-region nil nil "/bin/cat" t (current-buffer))
> > I get:
> > Debugger entered--Lisp error: (wrong-type-argument integer-or-marker-p nil)
> > call-process-region(nil nil "/bin/cat" t #<buffer *scratch*>)
> > eval((call-process-region nil nil "/bin/cat" t (current-buffer)) nil)
> > elisp--eval-last-sexp(t)
> > eval-last-sexp(t)
> > eval-print-last-sexp(nil)
> > funcall-interactively(eval-print-last-sexp nil)
> > call-interactively(eval-print-last-sexp nil nil)
> > command-execute(eval-print-last-sexp)
> >
> > If, instead, I run:
> > (call-process-region (point-min) (point-max) "/bin/cat" t (current-buffer))
> >
> > It works.
> >
> > Am I interpreting the documentation wrong?
>
> Nope, looks like a genuine bug (that happens only if DELETE is non-nil).
I've now fixed this on master (commit 42306747d8).
This bug report was last modified 5 years and 44 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.