branch: externals/listen
commit 18f2d77bba0c9238949bcf4b52bdd0f356eaee99
Author: Adam Porter <[email protected]>
Commit: Adam Porter <[email protected]>

    Change: (listen--act) Get duration and volume synchronously
    
    When starting playback, it seems like a good idea to get these
    synchronously, as it avoids race conditions for the lighter.  But
    maybe this can be optimized in the future.
---
 listen-mpv.el | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

diff --git a/listen-mpv.el b/listen-mpv.el
index 0e7d4cabf5..4fe6320082 100755
--- a/listen-mpv.el
+++ b/listen-mpv.el
@@ -144,21 +144,15 @@
 
 (cl-defmethod listen--act ((player listen-player-mpv) msg)
   (listen-debug :buffer "*listen-mpv*" (listen-player-process player) msg)
-  (pcase-let (((map event request_id reason data error name) msg))
+  (pcase-let (((map event request_id _reason data _error name) msg))
     (pcase event
       ((or "start-file" "playback-restart")
        (listen--status-is player 'playing)
        (setf (listen-player-playback-started-at player) (current-time)
              (listen-player-playback-started-from player) 0)
        (listen--update-metadata player)
-       (listen-mpv--get-property "duration"
-                                 (lambda (msg)
-                                   (setf (listen-player-duration player)
-                                         (map-elt msg 'data))))
-       (listen-mpv--get-property "volume"
-                                 (lambda (msg)
-                                   (setf (listen-player-duration player)
-                                         (map-elt msg 'data)))))
+       (setf (listen-player-duration player) (listen-mpv--get-property player 
"duration"))
+       (setf (listen-player-volume player) (listen-mpv--get-property player 
"volume")))
       ((or "end-file" "idle") (listen--status-is player 'stopped))
       ((or 'nil "data")
        (if-let ((callback (map-elt (map-elt (listen-player-etc player) 
:requests) request_id)))

Reply via email to