diff --git a/spec.bs b/spec.bs index 8c886bc..c0d23c7 100644 --- a/spec.bs +++ b/spec.bs @@ -199,7 +199,8 @@ The signal getter steps are to 1. If [=this=]'s [=relevant global object=] is a {{Window}} object, and its [=associated Document=] is not [=Document/fully active=], then return. - 1. Run [=this=]'s [=Subscriber/next algorithm=] algorithm given |value|. + 1. If [=this=]'s [=Subscriber/next algorithm=] is not null, then run [=this=]'s + [=Subscriber/next algorithm=] given |value|. [=Assert=]: No exception was thrown. @@ -214,10 +215,12 @@ The signal getter steps are to 1. [=close a subscription|Close=] [=this=]. - 1. Run |error algorithm| given |error|. + 1. If |error algorithm| is not null, then run |error algorithm| given |error|. [=Assert=]: No exception was thrown. + 1. Otherwise (i.e., when |error algorithm| is null), [=report the exception=] |error|. + 1. [=AbortController/Signal abort=] [=this=]'s [=Subscriber/complete or error controller=]. @@ -231,7 +234,7 @@ The signal getter steps are to 1. [=close a subscription|Close=] [=this=]. - 1. Run |complete algorithm|. + 1. If |complete algorithm| is not null, then run |complete algorithm|. [=Assert=]: No exception was thrown.