Bug #2626

TabsManager and RecentChatManager storing is broken

Added by Bartosz Brachaczek 10 months ago. Updated 9 months ago.

Status:Resolved Start date:08/05/2012
Priority:Regression Due date:
Assignee:Bartosz Brachaczek % Done:

100%

Category:- Spent time: -
Target version:Kadu - 0.12.1
Found in Git commit: Steps to reproduce:
Fixed in Git commit:9130010db97e941a07c4da5a76abe88e0a789680 Additional information:
Junior job:No

Description

Restoring opened tabs and storing recent chats is broken in some circumstances.

TabsManager and RecentChatManager store Chat::uuid() in configuration and give no reason to ChatShared::shouldStore() to return true, which could mean data loss. ChatWidgetManager does the same thing, but ChatWindow stores a custom property on Chats, so by pure accident it works here.

This is really broken now. There are several possible approaches to fix it (not all are possible for 0.12.1, but we can always do a quick fix and then fix it properly in master):
1. Store some dummy custom property for such chats. I propose this fix for 0.12.1. Though, on long run it's not a good idea as it's very counter-intuitive, error-prone and hacky.
2. Add some hacks to ChatShared::shouldStore(). Main disadvantage are possibly unloaded plugins, which could otherwise want the chat to be stored, so I don't think it could work.
3. Do not allow to store Chat::uuid() by external users at all. They could use custom properties for their data. I'd go for it for 1.0 as I don't have any better ideas.


Related issues

related to core - Bug #2638: Do not depend on Chat::uuid() in TabsManager, RecentChatM... New 08/22/2012

History

Updated by Bartosz Brachaczek 10 months ago

  • Assignee set to Bartosz Brachaczek
  • Priority changed from High to Regression

Updated by Bartosz Brachaczek 9 months ago

  • Status changed from New to Resolved
  • % Done changed from 0 to 100
  • Fixed in Git commit set to 9130010db97e941a07c4da5a76abe88e0a789680

Resolved for 0.12.1. For the long run fix refer to #2638.

Also available in: Atom PDF