view lisp/post-gc.el @ 1125:ecb17ab2f7ab

[xemacs-hg @ 2002-11-28 12:30:09 by michaels] 2002-11-25 Mike Sperber <mike@xemacs.org> * frame.c (frame_conversion_internal): Convert pixel_to_char argument to an enum; allow additional option CHAR_TO_DISPLAYABLE_PIXEL. * frame.c (Fset_frame_pixel_height): Make `set-frame-pixel-height' conform to `frame-pixel-height'. (Fset_frame_displayable_pixel_height): New function, equivalent to old `set-frame-pixel-height'. (Fset_frame_width): Make `set-frame-pixel-width conform to `frame-pixel-width'. (Fset_frame_displayable_pixel_width): New function, equivalent to old `set-frame-pixel-width'. (Fset_frame_pixel_size): Make `set-frame-pixel-size conform to `frame-pixel-height' and `frame-pixel-width'. (Fset_frame_displayable_pixel_size): New function, equivalent to old `set-frame-size'.
author michaels
date Thu, 28 Nov 2002 12:30:09 +0000
parents 011e1bce6ece
children 75b8038f720e
line wrap: on
line source

;;; post-gc.el --- post-gc actions

;; Copyright (C) 1985-1986, 1990, 1992-1997 Free Software Foundation, Inc.
;; Copyright (c) 1993, 1994 Sun Microsystems, Inc.
;; Copyright (C) 1995 Board of Trustees, University of Illinois

;; Author: Mike Sperber <mike@xemacs.org>
;; Maintainer: XEmacs Development Team
;; Keywords: internal, dumped

;; This file is part of XEmacs.

;; XEmacs is free software; you can redistribute it and/or modify it
;; under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.

;; XEmacs is distributed in the hope that it will be useful, but
;; WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
;; General Public License for more details.

;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING.  If not, write to the 
;; Free Software Foundation, 59 Temple Place - Suite 330,
;; Boston, MA 02111-1307, USA.

;;; Synched up with: Not in FSF.

;;; Commentary:

;; This file is dumped with XEmacs.

;; This file defines actions to happen after each GC to perform
;; additional cleanup, call finalizers, etc.

(defun run-finalizers (alist)
  "Run the finalizers for all objects that have just become unreachable."
  (let ((info (assq 'finalize-list alist)))
    (if info
	(let ((finalize-list (cdr info)))
	  (while finalize-list
	    (funcall (cdr (car finalize-list)) (car (car finalize-list)))
	    (setq finalize-list (cdr finalize-list)))))))

(add-hook 'post-gc-hook 'run-finalizers)