@@ -187,19 +187,18 @@ those subscribers that cancel their subscription.
187187Errors signaled by a subscriber are demoted to messages."
188188 (pcase (funcall pub-fn content)
189189 ((and `(content , _ ) sub-content)
190- (while subs
191- ; ; NOTE: The first element of SUBS is ignored here so that
192- ; ; the pointer to the subscriber list remains the same for
193- ; ; each publisher, even when subscribers are being
194- ; ; destructively removed.
195- (when (cadr subs)
196- (with-demoted-errors " Jupyter: I/O subscriber error: %S"
197- ; ; Publish subscriber content to subscribers
198- (pcase (funcall (cadr subs) sub-content)
199- ; ; Destructively remove the subscriber when it returns an
200- ; ; unsubscribe value.
201- ('(unsubscribe) (setcdr subs (cddr subs))))))
202- (pop subs))
190+ ; ; NOTE: The first element of SUBS is ignored here so that the
191+ ; ; pointer to the subscriber list remains the same for each
192+ ; ; publisher, even when subscribers are being destructively
193+ ; ; removed.
194+ (while (cadr subs)
195+ (with-demoted-errors " Jupyter: I/O subscriber error: %S"
196+ ; ; Publish subscriber content to subscribers
197+ (pcase (funcall (cadr subs) sub-content)
198+ ; ; Destructively remove the subscriber when it returns an
199+ ; ; unsubscribe value.
200+ ('(unsubscribe) (setcdr subs (cddr subs)))
201+ (_ (pop subs)))))
203202 nil )
204203 ; ; Cancel a publisher's subscription to another publisher.
205204 ('(unsubscribe) '(unsubscribe))
0 commit comments