# HG changeset patch # User Kenichi Handa # Date 921459080 0 # Node ID ab39ea2168e745ad514976b8d3914db56cbd5243 # Parent d4ee4399e999ceede23925ae9d79785e29741787 (detect-coding-with-priority): Restore the internal database. diff -r d4ee4399e999 -r ab39ea2168e7 lisp/international/mule-util.el --- a/lisp/international/mule-util.el Mon Mar 15 00:11:22 1999 +0000 +++ b/lisp/international/mule-util.el Mon Mar 15 00:51:20 1999 +0000 @@ -258,13 +258,19 @@ "Detect a coding system of the text between FROM and TO with PRIORITY-LIST. PRIORITY-LIST is an alist of coding categories vs the corresponding coding systems ordered by priority." - `(let* ((prio-list ,priority-list) - (coding-category-list coding-category-list) - ,@(mapcar (function (lambda (x) (list x x))) coding-category-list)) - (mapcar (function (lambda (x) (set (car x) (cdr x)))) - prio-list) - (set-coding-priority (mapcar (function (lambda (x) (car x))) prio-list)) - (detect-coding-region ,from ,to))) + `(unwind-protect + (let* ((prio-list ,priority-list) + (coding-category-list coding-category-list) + ,@(mapcar (function (lambda (x) (list x x))) + coding-category-list)) + (mapcar (function (lambda (x) (set (car x) (cdr x)))) + prio-list) + (set-coding-priority (mapcar (function (lambda (x) (car x))) + prio-list)) + (detect-coding-region ,from ,to)) + ;; We must restore the internal database. + (set-coding-priority coding-category-list) + (update-coding-systems-internal))) ;;;###autoload (defun detect-coding-with-language-environment (from to lang-env)