- (let ((8bit 0))
- (cond
- ((not (featurep 'mule))
- (while (re-search-forward "[^\x20-\x7f\r\n\t]" nil t)
- (incf 8bit)))
- (t
- ;; Mule version
- (while (not (eobp))
- (skip-chars-forward "\x20-\x7f\r\n\t")
- (unless (eobp)
- (forward-char 1)
- (incf 8bit)))))
- (if (> (/ (* 8bit 1.0) (buffer-size)) 0.166)
- 'base64
- 'quoted-printable)))))
+ (skip-chars-forward "\x20-\x7f\r\n\t" limit)
+ (while (< (point) limit)
+ (incf n8bit)
+ (forward-char 1)
+ (skip-chars-forward "\x20-\x7f\r\n\t" limit))
+ (if (< (* 6 n8bit) (- limit (point-min)))
+ 'quoted-printable
+ 'base64))))