Skip to content
  • Fushan Wen's avatar
    systemtray: Check if a service is already added before processing QDBusReply · 931a5441
    Fushan Wen authored
    Due to async nature of QDBusPendingReply, services could be already
    registered by QDBusServiceWatcher when the pending reply takes a long
    time to finish, so it's possible that QDBusServiceWatcher::serviceRegistered
    signal is emitted before the pending reply emits QDBusPendingCallWatcher::finished,
    which will make the same service added twice and crash plasmashell.
    
    We need to check if a service is already added in m_sniServices before
    processing registered items in QDBusReply.
    
    BUG: 443961
    
    
    (cherry picked from commit c0b8f687)
    931a5441