view lisp/play/meese.el @ 7863:c4adb7401604

(forms-mode): Plug security hole by disabling `eval-buffer' unless `enable-local-eval' is set to t. Correct setting of `forms--mode-setup'. (forms--local-write-file-function): New function to be used as `local-write-file-hooks'. (forms-mode): Use it. (forms-find-file,forms-find-file-other-window): Locally set `enable-local-eval' and `enable-local-variables' to t. (forms-find-file-other-window): Remove extraneous call to `eval-current-buffer'.
author Richard M. Stallman <rms@gnu.org>
date Mon, 13 Jun 1994 12:07:44 +0000
parents fb0ed5a1d0f3
children 9127591ba072
line wrap: on
line source

;;; meese.el --- protect the impressionable young minds of America

;; This is in the public domain on account of being distributed since
;; 1985 or 1986 without a copyright notice.

;; Maintainer: FSF
;; Keywords: games

;;; Code:

(defun protect-innocence-hook ()
  (if (and (equal (file-name-nondirectory buffer-file-name) "sex.6")
	   (not (y-or-n-p "Are you over 18? ")))
      (progn
	(clear-visited-file-modtime)
	(setq buffer-file-name (concat (file-name-directory buffer-file-name)
				       "celibacy.1"))
	(let (buffer-read-only)	; otherwise (erase-buffer) may bomb.
	  (erase-buffer)
	  (insert-file-contents buffer-file-name t))
	(rename-buffer (file-name-nondirectory buffer-file-name)))))

(or (memq 'protect-innocence-hook find-file-hooks)
    (setq find-file-hooks (cons 'protect-innocence-hook find-file-hooks)))

;;; meese.el ends here