aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman <[email protected]>1992-07-24 07:15:18 +0000
committerRichard M. Stallman <[email protected]>1992-07-24 07:15:18 +0000
commit15c65264fae0a306ac53cef41af7b1879051ce17 (patch)
tree38a3a2dda18bd78668e02efd246dbf0d80d9036d /src
parentba343182c20416a0cce986585f4382efc753205e (diff)
*** empty log message ***
Diffstat (limited to 'src')
-rw-r--r--src/callint.c5
-rw-r--r--src/eval.c11
-rw-r--r--src/fileio.c47
-rw-r--r--src/fns.c3
4 files changed, 49 insertions, 17 deletions
diff --git a/src/callint.c b/src/callint.c
index 59b73b4896..ed090aa85a 100644
--- a/src/callint.c
+++ b/src/callint.c
@@ -437,10 +437,7 @@ Otherwise, this is done only if an arg is read using the minibuffer.")
break;
case 'S': /* Any symbol. */
- visargs[i] = read_minibuf (Vminibuffer_local_ns_map,
- Qnil,
- build_string (prompt),
- 0);
+ visargs[i] = Fread_no_blanks_input (build_string (prompt), Qnil);
/* Passing args[i] directly stimulates compiler bug */
teml = visargs[i];
args[i] = Fintern (teml, Qnil);
diff --git a/src/eval.c b/src/eval.c
index 4d4ca7c584..5ec675111a 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1515,6 +1515,11 @@ DEFUN ("eval", Feval, Seval, 1, 1, 0,
val = (*XSUBR (fun)->function) (argvals[0], argvals[1], argvals[2],
argvals[3], argvals[4], argvals[5]);
goto done;
+ case 7:
+ val = (*XSUBR (fun)->function) (argvals[0], argvals[1], argvals[2],
+ argvals[3], argvals[4], argvals[5],
+ argvals[6]);
+ goto done;
default:
/* Someone has created a subr that takes more arguments than
@@ -1846,6 +1851,12 @@ Thus, (funcall 'cons 'x 'y) returns (x . y).")
internal_args[2], internal_args[3],
internal_args[4], internal_args[5]);
goto done;
+ case 7:
+ val = (*XSUBR (fun)->function) (internal_args[0], internal_args[1],
+ internal_args[2], internal_args[3],
+ internal_args[4], internal_args[5],
+ internal_args[6]);
+ goto done;
default:
diff --git a/src/fileio.c b/src/fileio.c
index 144ebe00ef..fcf1a6772f 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -101,6 +101,8 @@ int vms_stmlf_recfm;
Lisp_Object Qfile_error, Qfile_already_exists;
+Lisp_Object Qfile_name_history;
+
report_file_error (string, data)
char *string;
Lisp_Object data;
@@ -2941,7 +2943,7 @@ DIR defaults to current buffer's directory default.")
(prompt, dir, defalt, mustmatch, initial)
Lisp_Object prompt, dir, defalt, mustmatch, initial;
{
- Lisp_Object val, insdef, tem, backup_n;
+ Lisp_Object val, insdef, tem;
struct gcpro gcpro1, gcpro2;
register char *homedir;
int count;
@@ -2968,21 +2970,17 @@ DIR defaults to current buffer's directory default.")
insdef = dir;
if (!NILP (initial))
{
- Lisp_Object args[2];
+ Lisp_Object args[2], pos;
args[0] = insdef;
args[1] = initial;
insdef = Fconcat (2, args);
- backup_n = make_number (- (XSTRING (initial)->size));
+ pos = make_number (XSTRING (dir)->size);
+ insdef = Fcons (insdef, pos);
}
- else
- backup_n = Qnil;
}
else
- {
- insdef = build_string ("");
- backup_n = Qnil;
- }
+ insdef = build_string ("");
#ifdef VMS
count = specpdl_ptr - specpdl;
@@ -2992,7 +2990,8 @@ DIR defaults to current buffer's directory default.")
GCPRO2 (insdef, defalt);
val = Fcompleting_read (prompt, intern ("read-file-name-internal"),
dir, mustmatch,
- insert_default_directory ? insdef : Qnil, backup_n);
+ insert_default_directory ? insdef : Qnil,
+ Qfile_name_history);
#ifdef VMS
unbind_to (count, Qnil);
@@ -3057,7 +3056,8 @@ DIR defaults to current buffer's directory default.")
GCPRO2 (insdef, defalt);
val = Fcompleting_read (prompt, intern ("read-file-name-internal"),
dir, mustmatch,
- insert_default_directory ? insdef : Qnil, Qnil);
+ insert_default_directory ? insdef : Qnil,
+ Qfile_name_history);
#ifdef VMS
unbind_to (count, Qnil);
@@ -3096,6 +3096,31 @@ syms_of_fileio ()
Qwrite_region = intern ("write-region");
Qverify_visited_file_modtime = intern ("verify-visited-file-modtime");
+ Qfile_name_history = intern ("file-name-history");
+ Fset (Qfile_name_history, Qnil);
+
+ staticpro (&Qcopy_file);
+ staticpro (&Qmake_directory);
+ staticpro (&Qdelete_directory);
+ staticpro (&Qdelete_file);
+ staticpro (&Qrename_file);
+ staticpro (&Qadd_name_to_file);
+ staticpro (&Qmake_symbolic_link);
+ staticpro (&Qfile_exists_p);
+ staticpro (&Qfile_executable_p);
+ staticpro (&Qfile_readable_p);
+ staticpro (&Qfile_symlink_p);
+ staticpro (&Qfile_writable_p);
+ staticpro (&Qfile_directory_p);
+ staticpro (&Qfile_accessible_directory_p);
+ staticpro (&Qfile_modes);
+ staticpro (&Qset_file_modes);
+ staticpro (&Qfile_newer_than_file_p);
+ staticpro (&Qinsert_file_contents);
+ staticpro (&Qwrite_region);
+ staticpro (&Qverify_visited_file_modtime);
+ staticpro (&Qfile_name_history);
+
Qfile_error = intern ("file-error");
staticpro (&Qfile_error);
Qfile_already_exists = intern("file-already-exists");
diff --git a/src/fns.c b/src/fns.c
index cf8ac7b9e2..89afc34362 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -1170,8 +1170,7 @@ and can edit it until it as been confirmed.")
GCPRO1 (prompt);
while (1)
{
- ans = Fdowncase (read_minibuf (Vminibuffer_local_map,
- Qnil, prompt, Qnil, 0));
+ ans = Fdowncase (Fread_minibuffer (prompt, Qnil));
if (XSTRING (ans)->size == 3 && !strcmp (XSTRING (ans)->data, "yes"))
{
UNGCPRO;