]> code.delx.au - gnu-emacs/blobdiff - lisp/ps-bdf.el
Merge from emacs--rel--22
[gnu-emacs] / lisp / ps-bdf.el
index 056438a2bc5db0b25c376774bffca8500dd24ab8..097bd18bb1a47e95a106260fb6469cec1766f3c8 100644 (file)
@@ -1,17 +1,19 @@
 ;;; ps-bdf.el --- BDF font file handler for ps-print
 
-;; Copyright (C) 1998, 1999, 2001, 2003 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
+;; Copyright (C) 1998, 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+;;   Free Software Foundation, Inc.
+;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+;;   National Institute of Advanced Industrial Science and Technology (AIST)
+;;   Registration Number H14PRO021
 
 ;; Keywords: wp, BDF, font, PostScript
-;; Maintainer: Kenichi Handa <handa@etl.go.jp>
-;; Time-stamp: <2003/07/11 21:13:44 vinicius>
+;; Maintainer: Kenichi Handa <handa@m17n.org>
 
 ;; This file is part of GNU Emacs.
 
 ;; GNU Emacs 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)
+;; the Free Software Foundation; either version 3, or (at your option)
 ;; any later version.
 
 ;; GNU Emacs is distributed in the hope that it will be useful,
@@ -272,18 +274,20 @@ CODE, where N and CODE are in the following relation:
            (while (search-forward "\nSTARTCHAR" nil t)
              (setq offset (line-beginning-position))
              (search-forward "\nENCODING")
-             (setq code (read (current-buffer))
-                   code0 (lsh code -8)
-                   code1 (logand code 255)
-                   min-code (min min-code code)
-                   max-code (max max-code code)
-                   min-code0 (min min-code0 code0)
-                   max-code0 (max max-code0 code0)
-                   min-code1 (min min-code1 code1)
-                   max-code1 (max max-code1 code1))
-             (search-forward "ENDCHAR")
-             (setq maxlen (max maxlen (- (point) offset))
-                   glyph-list (cons (cons code offset) glyph-list)))
+             (setq code (read (current-buffer)))
+             (if (< code 0)
+                 (search-forward "ENDCHAR")
+               (setq code0 (lsh code -8)
+                     code1 (logand code 255)
+                     min-code (min min-code code)
+                     max-code (max max-code code)
+                     min-code0 (min min-code0 code0)
+                     max-code0 (max max-code0 code0)
+                     min-code1 (min min-code1 code1)
+                     max-code1 (max max-code1 code1))
+               (search-forward "ENDCHAR")
+               (setq maxlen (max maxlen (- (point) offset))
+                     glyph-list (cons (cons code offset) glyph-list))))
 
            (setq code-range
                  (vector min-code0 max-code0 min-code1 max-code1