diff --git a/private/player-agent-gui.rkt b/private/player-agent-gui.rkt index 9a015ca..a572a8a 100644 --- a/private/player-agent-gui.rkt +++ b/private/player-agent-gui.rkt @@ -360,13 +360,13 @@ (define agent-frame% (class frame% (super-new) - (define/override (on-close) + (define/augment (on-close) (stop-worker!) (when audio (with-handlers ((exn:fail? void)) (audio-quit! audio))) (safe-delete-file temporary-media) - (super on-close)))) + (inner (void) on-close)))) (set! frame (new agent-frame% diff --git a/private/player.rkt b/private/player.rkt index 8d108e2..3d51cbd 100644 --- a/private/player.rkt +++ b/private/player.rkt @@ -1135,7 +1135,11 @@ (suggested-name (string-trim (or (json-string data 'name #f) - "RKT playback agent")))) + "RKT playback agent"))) + (advertised-name + (if (string=? suggested-name "") + "RKT playback agent" + suggested-name))) (unless (valid-agent-id? app-id) (raise-arguments-error 'player-agent-register! @@ -1147,19 +1151,16 @@ (let ((existing (agent-by-id value app-id))) (if existing (begin - (set-playback-agent-name! existing suggested-name) + (set-playback-agent-name! existing advertised-name) (let ((agent-output (agent-renderer value existing))) (when agent-output - (set-renderer-name! agent-output suggested-name))) + (set-renderer-name! agent-output advertised-name))) (set-playback-agent-last-seen! existing (current-seconds)) (hasheq 'name (playback-agent-name existing) 'pollIntervalMs 1000)) - (let* ((name - (if (string=? suggested-name "") - "RKT playback agent" - suggested-name)) + (let* ((name advertised-name) (agent (playback-agent app-id name (current-seconds)