* lisp/net/puny.el (puny-decode-string-internal):
Handle strings with no ascii parts. (Bug#23688)
(defun puny-decode-string-internal (string)
(with-temp-buffer
(insert string)
- (goto-char (point-max))
- (search-backward "-" nil (point-min))
- ;; The encoded chars are after the final dash.
- (let ((encoded (buffer-substring (1+ (point)) (point-max)))
+ ;; The encoded chars are after any final dash, else the whole string.
+ (let ((encoded (buffer-substring
+ (if (search-backward "-" nil 'move)
+ (1+ (point))
+ (point))
+ (point-max)))
(ic 0)
(i 0)
(bias puny-initial-bias)