If DESTINATION is 0, ‘call-process’ returns immediately with value nil.
Otherwise it waits for PROGRAM to terminate
and returns a numeric exit status or a signal description string.
If you quit, the process is killed with SIGINT, or SIGKILL if you quit again.
Checking for equality with /= caused the function to fail in cases where
retcode was a string. That's probably not very common, but can happen.
Yesterday I updated some homebrew stuff and elm-format failed when trying
to use a dynamically linked library. In this case, call-process returned a
string, which caused a runtime error when checking for that exit code.
This manifested itself in me not being able to save any elm file (having
elm-format-on-save enabled), which was not very easy to track down :-)
According to call-process's documentation:
Checking for equality with
/=
caused the function to fail in cases whereretcode
was a string. That's probably not very common, but can happen.Yesterday I updated some homebrew stuff and elm-format failed when trying to use a dynamically linked library. In this case,
call-process
returned a string, which caused a runtime error when checking for that exit code.This manifested itself in me not being able to save any elm file (having
elm-format-on-save
enabled), which was not very easy to track down :-)