Mercurial > emacs
comparison src/alloc.c @ 51578:42f25a716cb8
(mark_kboards): Move to keyboard.c.
| author | Stefan Monnier <monnier@iro.umontreal.ca> |
|---|---|
| date | Sun, 15 Jun 2003 21:48:14 +0000 |
| parents | 0b5248964d32 |
| children | 00b3e009b3f5 |
comparison
equal
deleted
inserted
replaced
| 51577:f624d43a48fb | 51578:42f25a716cb8 |
|---|---|
| 247 | 247 |
| 248 Lisp_Object Vgc_elapsed; /* accumulated elapsed time in GC */ | 248 Lisp_Object Vgc_elapsed; /* accumulated elapsed time in GC */ |
| 249 EMACS_INT gcs_done; /* accumulated GCs */ | 249 EMACS_INT gcs_done; /* accumulated GCs */ |
| 250 | 250 |
| 251 static void mark_buffer P_ ((Lisp_Object)); | 251 static void mark_buffer P_ ((Lisp_Object)); |
| 252 static void mark_kboards P_ ((void)); | 252 extern void mark_kboards P_ ((void)); |
| 253 static void gc_sweep P_ ((void)); | 253 static void gc_sweep P_ ((void)); |
| 254 static void mark_glyph_matrix P_ ((struct glyph_matrix *)); | 254 static void mark_glyph_matrix P_ ((struct glyph_matrix *)); |
| 255 static void mark_face_cache P_ ((struct face_cache *)); | 255 static void mark_face_cache P_ ((struct face_cache *)); |
| 256 | 256 |
| 257 #ifdef HAVE_WINDOW_SYSTEM | 257 #ifdef HAVE_WINDOW_SYSTEM |
| 4958 /* If this is an indirect buffer, mark its base buffer. */ | 4958 /* If this is an indirect buffer, mark its base buffer. */ |
| 4959 if (buffer->base_buffer && !XMARKBIT (buffer->base_buffer->name)) | 4959 if (buffer->base_buffer && !XMARKBIT (buffer->base_buffer->name)) |
| 4960 { | 4960 { |
| 4961 XSETBUFFER (base_buffer, buffer->base_buffer); | 4961 XSETBUFFER (base_buffer, buffer->base_buffer); |
| 4962 mark_buffer (base_buffer); | 4962 mark_buffer (base_buffer); |
| 4963 } | |
| 4964 } | |
| 4965 | |
| 4966 | |
| 4967 /* Mark the pointers in the kboard objects. */ | |
| 4968 | |
| 4969 static void | |
| 4970 mark_kboards () | |
| 4971 { | |
| 4972 KBOARD *kb; | |
| 4973 Lisp_Object *p; | |
| 4974 for (kb = all_kboards; kb; kb = kb->next_kboard) | |
| 4975 { | |
| 4976 if (kb->kbd_macro_buffer) | |
| 4977 for (p = kb->kbd_macro_buffer; p < kb->kbd_macro_ptr; p++) | |
| 4978 mark_object (p); | |
| 4979 mark_object (&kb->Voverriding_terminal_local_map); | |
| 4980 mark_object (&kb->Vlast_command); | |
| 4981 mark_object (&kb->Vreal_last_command); | |
| 4982 mark_object (&kb->Vprefix_arg); | |
| 4983 mark_object (&kb->Vlast_prefix_arg); | |
| 4984 mark_object (&kb->kbd_queue); | |
| 4985 mark_object (&kb->defining_kbd_macro); | |
| 4986 mark_object (&kb->Vlast_kbd_macro); | |
| 4987 mark_object (&kb->Vsystem_key_alist); | |
| 4988 mark_object (&kb->system_key_syms); | |
| 4989 mark_object (&kb->Vdefault_minibuffer_frame); | |
| 4990 mark_object (&kb->echo_string); | |
| 4991 } | 4963 } |
| 4992 } | 4964 } |
| 4993 | 4965 |
| 4994 | 4966 |
| 4995 /* Value is non-zero if OBJ will survive the current GC because it's | 4967 /* Value is non-zero if OBJ will survive the current GC because it's |
