 					if event.isTerminating || shouldInterrupt {
 						// Dispose only after notifying observers, so disposal logic
 						// is consistently the last thing to run.
-						self.generatorDisposable.dispose()
+						generatorDisposable.dispose()
 					}
 				}
 			}

						sink.put(event)
					}

					let shouldInterrupt = !event.isTerminating && self.interrupted.value
					if shouldInterrupt {
						self.interrupt()
					}


	/// Used to ensure that events are serialized during delivery to observers.
	private let sendLock = NSLock()

	/// Initializes a Signal that will immediately invoke the given generator,
	/// then forward events sent to the given observer.
