diff options
| author | Glenn Morris | 2013-11-22 18:58:28 -0800 |
|---|---|---|
| committer | Glenn Morris | 2013-11-22 18:58:28 -0800 |
| commit | 50dca5dfd6adef80fb90a49736cdfcbd4c00d764 (patch) | |
| tree | 3c6aed0244b0bb63d532add38ea87658ac8ca21b | |
| parent | e1b01c7fedfe8b481eb45ec64786981e1cc50264 (diff) | |
| download | emacs-50dca5dfd6adef80fb90a49736cdfcbd4c00d764.tar.gz emacs-50dca5dfd6adef80fb90a49736cdfcbd4c00d764.zip | |
* src/process.c (get_process): Explicit error for dead buffers
That seems more in keeping with the existing behavior of this function
in other situations.
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/process.c | 12 |
2 files changed, 11 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index c6f63adebcd..bc3d3ba6f25 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2013-11-23 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | * process.c (get_process): Explicit error for dead buffers. | ||
| 4 | |||
| 1 | 2013-11-23 Andreas Schwab <schwab@linux-m68k.org> | 5 | 2013-11-23 Andreas Schwab <schwab@linux-m68k.org> |
| 2 | 6 | ||
| 3 | * process.c (get_process): Check that OBJ is a live buffer. (Bug#15923) | 7 | * process.c (get_process): Check that OBJ is a live buffer. (Bug#15923) |
diff --git a/src/process.c b/src/process.c index 7d4fb4e3ec4..7050bf9822e 100644 --- a/src/process.c +++ b/src/process.c | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | /* Asynchronous subprocess control for GNU Emacs. | 1 | /* Asynchronous subprocess control for GNU Emacs. |
| 2 | 2 | ||
| 3 | Copyright (C) 1985-1988, 1993-1996, 1998-1999, 2001-2013 Free Software | 3 | Copyright (C) 1985-1988, 1993-1996, 1998-1999, 2001-2013 |
| 4 | Foundation, Inc. | 4 | Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | This file is part of GNU Emacs. | 6 | This file is part of GNU Emacs. |
| 7 | 7 | ||
| @@ -812,12 +812,14 @@ get_process (register Lisp_Object name) | |||
| 812 | else | 812 | else |
| 813 | obj = name; | 813 | obj = name; |
| 814 | 814 | ||
| 815 | /* Now obj should be either a (live) buffer object or a process object. */ | 815 | /* Now obj should be either a buffer object or a process object. */ |
| 816 | if (BUFFERP (obj) && !NILP (BVAR (XBUFFER (obj), name))) | 816 | if (BUFFERP (obj)) |
| 817 | { | 817 | { |
| 818 | if (NILP (BVAR (XBUFFER (obj), name))) | ||
| 819 | error ("Attempt to get process for a dead buffer"); | ||
| 818 | proc = Fget_buffer_process (obj); | 820 | proc = Fget_buffer_process (obj); |
| 819 | if (NILP (proc)) | 821 | if (NILP (proc)) |
| 820 | error ("Buffer %s has no process", SDATA (BVAR (XBUFFER (obj), name))); | 822 | error ("Buffer %s has no process", SDATA (BVAR (XBUFFER (obj), name))); |
| 821 | } | 823 | } |
| 822 | else | 824 | else |
| 823 | { | 825 | { |