aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--emms-info-native.el12
1 files changed, 7 insertions, 5 deletions
diff --git a/emms-info-native.el b/emms-info-native.el
index bca21b1..4aaafed 100644
--- a/emms-info-native.el
+++ b/emms-info-native.el
@@ -728,15 +728,17 @@ If there is no such identifier, return nil."
(defun emms-info-native--decode-id3v2-string (bytes)
"Decode id3v2 text information from BYTES.
-Remove the terminating null byte, if any. Return the text as
-string."
+Remove the terminating null byte, if any, and trim trailing
+whitespace.
+
+Return the text as string."
(let* ((encoding (emms-info-native--id3v2-text-encoding bytes))
(string (mapconcat #'byte-to-string (seq-rest bytes) ""))
(decoded (decode-coding-string string encoding)))
(when (> (length decoded) 0)
- (if (equal (substring decoded -1) "\0")
- (substring decoded 0 -1)
- decoded))))
+ (string-trim-right (if (equal (substring decoded -1) "\0")
+ (substring decoded 0 -1)
+ decoded)))))
(defun emms-info-native--id3v2-text-encoding (bytes)
"Return the encoding for text information BYTES."