diff options
Diffstat (limited to 'src/xfns.c')
-rw-r--r-- | src/xfns.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/xfns.c b/src/xfns.c index 8da2e27687d..e478bde7984 100644 --- a/src/xfns.c +++ b/src/xfns.c @@ -3021,6 +3021,8 @@ This function is an internal primitive--use `make-frame' instead. */) Lisp_Object parent; struct kboard *kb; + parms = Fcopy_alist (parms); + /* Use this general default value to start with until we know if this frame has a specified name. */ Vx_resource_name = Vinvocation_name; @@ -3401,6 +3403,12 @@ This function is an internal primitive--use `make-frame' instead. */) || !FRAME_LIVE_P (XFRAME (kb->Vdefault_minibuffer_frame)))) kb->Vdefault_minibuffer_frame = frame; + /* All remaining specified parameters, which have not been "used" + by x_get_arg and friends, now go in the misc. alist of the frame. */ + for (tem = parms; !NILP (tem); tem = XCDR (tem)) + if (CONSP (XCAR (tem)) && !NILP (XCAR (XCAR (tem)))) + f->param_alist = Fcons (XCAR (tem), f->param_alist); + UNGCPRO; /* Make sure windows on this frame appear in calls to next-window |