From 6f5d5aec27e89f6215b7bcccd4bbefd6d0bb9190 Mon Sep 17 00:00:00 2001
From: "william.xwl" <william.xwl>
Date: Fri, 16 Dec 2005 09:19:00 +0000
Subject: `emms-score-set-playing' is not really "set", but "add". Fix this.
 Same

for `emms-score-set-file-on-line'.

darcs-hash:20051216091938-e8fe6-cbba6bc91a39e46d1585654e51beb590efed1350.gz
---
 emms-score.el | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/emms-score.el b/emms-score.el
index eedec49..dca9c4d 100644
--- a/emms-score.el
+++ b/emms-score.el
@@ -129,14 +129,21 @@ The score hash is automatically saved."
 (defun emms-score-set-playing (score)
   "Set score for current playing track."
   (interactive "nSet score for playing track: ")
-  (if emms-player-playing-p
-      (emms-score-change-score score (emms-score-current-selected-track-filename))
-    (error "No track currently playing")))
+  (let ((filename (emms-score-current-selected-track-filename)))
+    (if emms-player-playing-p
+	(emms-score-change-score
+	 (- score (emms-score-get-score filename))
+	 filename)
+      (error "No track currently playing"))))
 
 (defun emms-score-set-file-on-line (score)
   "Set score for track at point in emms-playlist buffer."
   (interactive "nSet score for track at point: ")
-  (emms-score-change-score score (emms-score-track-at-filename)))
+  (let ((filename (emms-score-track-at-filename)))
+    (if emms-player-playing-p
+	(emms-score-change-score
+	 (- score (emms-score-get-score filename))
+	 filename))))
 
 (defun emms-score-set-tolerance (tolerance)
   "Allow playing tracks with a score >= tolerance."
-- 
cgit v1.2.3