src/Viserio/Component/Events/DataCollector/TraceableEventManager.php
public function detach(string $eventName, $listener): bool
    {
        if (isset($this->wrappedListeners[$eventName])) {
            foreach ($this->wrappedListeners[$eventName] as $index => $wrappedListener) {
                /** @var WrappedListener $wrappedListener */
                if ($wrappedListener->getWrappedListener() === $listener) {
                    $listener = $wrappedListener;
                    unset($this->wrappedListeners[$eventName][$index]);

                    break;
                }
            }
        }

        return $this->eventManager->detach($eventName, $listener);
    }
public function detach(string $eventName, $listener): bool
    {
        if (isset($this->wrappedListeners[$eventName])) {
            foreach ($this->wrappedListeners[$eventName] as $index => $wrappedListener) {
                /** @var WrappedListener $wrappedListener */
                if ($wrappedListener->getWrappedListener() === $listener) {
                    $listener = $wrappedListener;
                    unset($this->wrappedListeners[$eventName][$index]);

                    break;
                }
            }
        }

        return $this->eventManager->detach($eventName, $listener);
    }
{@inheritdoc}