diff options
| author | Karoly Lorentey | 2004-09-16 13:09:53 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2004-09-16 13:09:53 +0000 |
| commit | 98a92e2d7b1f9993215dd4db3d5810586b3da7d3 (patch) | |
| tree | 36549b6c7ca6056a0e3b5fd72264160953b23f15 /src/alloc.c | |
| parent | aeeb70757cd8c57689a1b3238e9b25a2d422e38f (diff) | |
| parent | 113e270a241bcabe4aae4eb13f0ceb62744ec1f4 (diff) | |
| download | emacs-98a92e2d7b1f9993215dd4db3d5810586b3da7d3.tar.gz emacs-98a92e2d7b1f9993215dd4db3d5810586b3da7d3.zip | |
Merged in changes from CVS trunk.
Patches applied:
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-547
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-548
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-549
Use symbol-matching for generic-mode keywords
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-550
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-551
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-246
Diffstat (limited to 'src/alloc.c')
| -rw-r--r-- | src/alloc.c | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/src/alloc.c b/src/alloc.c index e1fadc155f6..12e673495c3 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | /* Storage allocation and gc for GNU Emacs Lisp interpreter. | 1 | /* Storage allocation and gc for GNU Emacs Lisp interpreter. |
| 2 | Copyright (C) 1985,86,88,93,94,95,97,98,1999,2000,01,02,03,2004 | 2 | Copyright (C) 1985, 1986, 1988, 1993, 1994, 1995, 1997, 1998, 1999, |
| 3 | Free Software Foundation, Inc. | 3 | 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | This file is part of GNU Emacs. | 5 | This file is part of GNU Emacs. |
| 6 | 6 | ||
| @@ -4455,6 +4455,21 @@ returns nil, because real GC can't be done. */) | |||
| 4455 | for (i = 0; i < staticidx; i++) | 4455 | for (i = 0; i < staticidx; i++) |
| 4456 | mark_object (*staticvec[i]); | 4456 | mark_object (*staticvec[i]); |
| 4457 | 4457 | ||
| 4458 | for (bind = specpdl; bind != specpdl_ptr; bind++) | ||
| 4459 | { | ||
| 4460 | mark_object (bind->symbol); | ||
| 4461 | mark_object (bind->old_value); | ||
| 4462 | } | ||
| 4463 | mark_kboards (); | ||
| 4464 | mark_ttys (); | ||
| 4465 | |||
| 4466 | #ifdef USE_GTK | ||
| 4467 | { | ||
| 4468 | extern void xg_mark_data (); | ||
| 4469 | xg_mark_data (); | ||
| 4470 | } | ||
| 4471 | #endif | ||
| 4472 | |||
| 4458 | #if (GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS \ | 4473 | #if (GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS \ |
| 4459 | || GC_MARK_STACK == GC_MARK_STACK_CHECK_GCPROS) | 4474 | || GC_MARK_STACK == GC_MARK_STACK_CHECK_GCPROS) |
| 4460 | mark_stack (); | 4475 | mark_stack (); |
| @@ -4468,11 +4483,6 @@ returns nil, because real GC can't be done. */) | |||
| 4468 | #endif | 4483 | #endif |
| 4469 | 4484 | ||
| 4470 | mark_byte_stack (); | 4485 | mark_byte_stack (); |
| 4471 | for (bind = specpdl; bind != specpdl_ptr; bind++) | ||
| 4472 | { | ||
| 4473 | mark_object (bind->symbol); | ||
| 4474 | mark_object (bind->old_value); | ||
| 4475 | } | ||
| 4476 | for (catch = catchlist; catch; catch = catch->next) | 4486 | for (catch = catchlist; catch; catch = catch->next) |
| 4477 | { | 4487 | { |
| 4478 | mark_object (catch->tag); | 4488 | mark_object (catch->tag); |
| @@ -4484,20 +4494,11 @@ returns nil, because real GC can't be done. */) | |||
| 4484 | mark_object (handler->var); | 4494 | mark_object (handler->var); |
| 4485 | } | 4495 | } |
| 4486 | mark_backtrace (); | 4496 | mark_backtrace (); |
| 4487 | mark_kboards (); | ||
| 4488 | mark_ttys (); | ||
| 4489 | 4497 | ||
| 4490 | #if GC_MARK_STACK == GC_USE_GCPROS_CHECK_ZOMBIES | 4498 | #if GC_MARK_STACK == GC_USE_GCPROS_CHECK_ZOMBIES |
| 4491 | mark_stack (); | 4499 | mark_stack (); |
| 4492 | #endif | 4500 | #endif |
| 4493 | 4501 | ||
| 4494 | #ifdef USE_GTK | ||
| 4495 | { | ||
| 4496 | extern void xg_mark_data (); | ||
| 4497 | xg_mark_data (); | ||
| 4498 | } | ||
| 4499 | #endif | ||
| 4500 | |||
| 4501 | /* Everything is now marked, except for the things that require special | 4502 | /* Everything is now marked, except for the things that require special |
| 4502 | finalization, i.e. the undo_list. | 4503 | finalization, i.e. the undo_list. |
| 4503 | Look thru every buffer's undo list | 4504 | Look thru every buffer's undo list |