diff options
author | Richard M. Stallman <rms@gnu.org> | 1996-08-07 18:28:03 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1996-08-07 18:28:03 +0000 |
commit | 18fef1118abe792aa6b81aebba31e7ef33363a19 (patch) | |
tree | 26b1e214aef33edefb24ec2c254f2abad5c657a7 | |
parent | dea5efcbe3af1c2f19e7983c3276cd9ad25bc5b4 (diff) | |
download | emacs-18fef1118abe792aa6b81aebba31e7ef33363a19.tar.gz |
(Fread_from_minibuffer): Make position 0 in the initial
input mean the beginning.
-rw-r--r-- | src/minibuf.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/minibuf.c b/src/minibuf.c index d0e86ea3195..0d107f97b1b 100644 --- a/src/minibuf.c +++ b/src/minibuf.c @@ -493,7 +493,7 @@ DEFUN ("read-from-minibuffer", Fread_from_minibuffer, Sread_from_minibuffer, 1, If optional second arg INITIAL-CONTENTS is non-nil, it is a string\n\ to be inserted into the minibuffer before reading input.\n\ If INITIAL-CONTENTS is (STRING . POSITION), the initial input\n\ - is STRING, but point is placed POSITION characters into the string.\n\ + is STRING, but point is placed at position POSITION in the minibuffer.\n\ Third arg KEYMAP is a keymap to use whilst reading;\n\ if omitted or nil, the default is `minibuffer-local-map'.\n\ If fourth arg READ is non-nil, then interpret the result as a lisp object\n\ @@ -531,7 +531,11 @@ DEFUN ("read-from-minibuffer", Fread_from_minibuffer, Sread_from_minibuffer, 1, { CHECK_NUMBER (position, 0); /* Convert to distance from end of input. */ - pos = XINT (position) - 1 - XSTRING (initial_contents)->size; + if (XINT (position) < 1) + /* A number too small means the beginning of the string. */ + pos = - XSTRING (initial_contents)->size; + else + pos = XINT (position) - 1 - XSTRING (initial_contents)->size; } } |