summaryrefslogtreecommitdiff
path: root/src/lread.c
diff options
context:
space:
mode:
authorKarl Heuer <kwzh@gnu.org>1994-03-18 00:13:40 +0000
committerKarl Heuer <kwzh@gnu.org>1994-03-18 00:13:40 +0000
commitaca5a70b8684be9cc5e870c5f14c01df9460a86b (patch)
tree149152f90283e758784bd885671a2a5b64e0d5de /src/lread.c
parent2fb8179a3aac8a1cd61f3ccec1e5faa65097cadb (diff)
downloademacs-aca5a70b8684be9cc5e870c5f14c01df9460a86b.tar.gz
(openp, Fload): GCPRO some things.
Diffstat (limited to 'src/lread.c')
-rw-r--r--src/lread.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/lread.c b/src/lread.c
index 8649d8a6694..ccb2f52d238 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -353,8 +353,10 @@ Return t if file exists.")
since it would try to load a directory as a Lisp file */
if (XSTRING (str)->size > 0)
{
+ GCPRO1 (str);
fd = openp (Vload_path, str, !NILP (nosuffix) ? "" : ".elc:.el:",
&found, 0);
+ UNGCPRO;
}
if (fd < 0)
@@ -505,7 +507,9 @@ openp (path, str, suffix, storeptr, exec_only)
int want_size;
register Lisp_Object filename;
struct stat st;
+ struct gcpro gcpro1;
+ GCPRO1 (str);
if (storeptr)
*storeptr = Qnil;
@@ -563,7 +567,7 @@ openp (path, str, suffix, storeptr, exec_only)
/* We succeeded; return this descriptor and filename. */
if (storeptr)
*storeptr = build_string (fn);
- return fd;
+ RETURN_UNGCPRO (fd);
}
}
@@ -572,10 +576,11 @@ openp (path, str, suffix, storeptr, exec_only)
break;
nsuffix += lsuffix + 1;
}
- if (absolute) return -1;
+ if (absolute)
+ RETURN_UNGCPRO (-1);
}
- return -1;
+ RETURN_UNGCPRO (-1);
}