-(defun gnus-write-active-file (file hashtb)
- (with-temp-file file
- (mapatoms
- (lambda (sym)
- (when (and sym (boundp sym))
- (insert (format "%s %d %d y\n"
- (symbol-name sym) (cdr (symbol-value sym))
- (car (symbol-value sym))))))
- hashtb)))
+(static-if (boundp 'MULE)
+ (defun gnus-write-active-file-as-coding-system
+ (coding-system file hashtb &optional full-names)
+ (let ((output-coding-system coding-system))
+ (with-temp-file file
+ (mapatoms
+ (lambda (sym)
+ (when (and sym
+ (boundp sym)
+ (symbol-value sym))
+ (insert (format "%s %d %d y\n"
+ (if full-names
+ (symbol-name sym)
+ (gnus-group-real-name (symbol-name sym)))
+ (cdr (symbol-value sym))
+ (car (symbol-value sym))))))
+ hashtb))))
+ (defun gnus-write-active-file-as-coding-system
+ (coding-system file hashtb &optional full-names)
+ (let ((coding-system-for-write coding-system))
+ (with-temp-file file
+ (mapatoms
+ (lambda (sym)
+ (when (and sym
+ (boundp sym)
+ (symbol-value sym))
+ (insert (format "%s %d %d y\n"
+ (if full-names
+ (symbol-name sym)
+ (gnus-group-real-name (symbol-name sym)))
+ (cdr (symbol-value sym))
+ (car (symbol-value sym))))))
+ hashtb))))
+ )