     /// - parameter callback: The closure to invoke whenever the signal fires.
     public func listenPast(listener: AnyObject, callback: (T) -> Void) -> SignalListener<T> {
         let signalListener = self.listen(listener, callback: callback)
-        if let lastDataFired = lastDataFired where fireCount > 0 {
+        if let lastDataFired = lastDataFired {
             signalListener.callback(lastDataFired)
         }
         return signalListener

    /// The last data that the signal was fired with.
    public var lastDataFired: T? = nil
    
    /// Should the Signal retain a reference to the last data that it was fired with?
    public var retainLastData: Bool = false
    
    /// All the listeners listening to the Signal.

    
    /// Clears the last fired data from the Signal and resets the fire count
    public func clearLastData() {
        lastDataFired = nil
    }
}
