Mercurial > emacs
comparison src/frame.c @ 9972:92b33538b36a
(make_frame): Use allocate_vectorlike and VECSIZE.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Wed, 16 Nov 1994 05:50:06 +0000 |
parents | 9a35aeb4a0db |
children | e6618f52efe9 |
comparison
equal
deleted
inserted
replaced
9971:214a00665c2b | 9972:92b33538b36a |
---|---|
139 { | 139 { |
140 Lisp_Object frame; | 140 Lisp_Object frame; |
141 register struct frame *f; | 141 register struct frame *f; |
142 register Lisp_Object root_window; | 142 register Lisp_Object root_window; |
143 register Lisp_Object mini_window; | 143 register Lisp_Object mini_window; |
144 | 144 register struct Lisp_Vector *vec; |
145 frame = Fmake_vector (((sizeof (struct frame) - (sizeof (Lisp_Vector) | 145 int i; |
146 - sizeof (Lisp_Object))) | 146 |
147 / sizeof (Lisp_Object)), | 147 vec = allocate_vectorlike ((EMACS_INT) VECSIZE (struct frame)); |
148 make_number (0)); | 148 for (i = 0; i < VECSIZE (struct frame); i++) |
149 XSETTYPE (frame, Lisp_Frame); | 149 XSETFASTINT (vec->contents[i], 0); |
150 f = XFRAME (frame); | 150 vec->size = VECSIZE (struct frame); |
151 f = (struct frame *)vec; | |
152 XSETFRAME (frame, f); | |
151 | 153 |
152 f->cursor_x = 0; | 154 f->cursor_x = 0; |
153 f->cursor_y = 0; | 155 f->cursor_y = 0; |
154 f->current_glyphs = 0; | 156 f->current_glyphs = 0; |
155 f->desired_glyphs = 0; | 157 f->desired_glyphs = 0; |