#978 Keeps marking feeds as unread

git_master
closed-fixed
Usability (69)
7
2011-09-14
2011-08-26
No

Today I have upgraded from version 1.7.2 to the latest git revision (4ca99b4). My cache directory was migrated and everything seemed to work as expected, until the first update where all my already read feeds appeared again as unread.
Though that it was something from the migration and started to mark the feeds as read.
Then closed liferea and opened it again; a new update made all the feeds unread again. Marking the feeds as read and forcing an update make them unread again.
As it is now it's just not possible to use it (since all the feeds will be marked as unread always).

Discussion

  • Nelson A. de Oliveira

    • priority: 5 --> 7
     
  • Nelson A. de Oliveira

    s/Though/Thought

     
  • nE0sIghT

    nE0sIghT - 2011-08-28

    Same issue with 1.7.6

     
  • Jouni Rinne

    Jouni Rinne - 2011-08-28

    Yes, I can confirm that: exactly the same issue with 1.7.6 on Gentoo

     
  • Anonymous

    Anonymous - 2011-08-29

    I confirm this bug, too. Using version 1.7.6 - r4398 (from Development PPA - https://launchpad.net/~liferea/+archive/development ).

     
  • Alejandro Dubrovsky

    I just made a patch that fixes this issue. I'm almost certain it breaks synchronisation of read status with ttrss, but for me it's the lesser of two evils. It's wrt git commit 4ca99b4389e570d610c8ffd6bfe678dad9f5005c but it should apply to 1.7.6

    diff --git a/src/itemset.c b/src/itemset.c
    index dceb057..2a5e4ef 100644
    --- a/src/itemset.c
    +++ b/src/itemset.c
    @@ -113,11 +113,10 @@ itemset_generic_merge_check (GList *items, itemPtr newItem, gint maxChecks, gboo
    if (0 == strcmp (item_get_id (oldItem), item_get_id (newItem))) {
    found = TRUE;

    - /* found corresponding item, check if they are REALLY equal (eg, read status may have changed) */
    - if(oldItem->readStatus != newItem->readStatus)
    - equal = FALSE;
    - if(oldItem->flagStatus != newItem->flagStatus)
    + /* found corresponding item, check if they have the same flags */
    + if(oldItem->flagStatus != newItem->flagStatus) {
    equal = FALSE;
    + }
    break;
    } else {
    /* different ids, but the content might be still equal (e.g. empty)

     
  • Comment has been marked as spam. 
    Undo

    You can see all pending comments posted by this user  here

    Anonymous

    Anonymous - 2011-09-07

    I'm not sure if issue is related but my "Unread" folder listing (1100+) but the only feed I'm using is Google Reader which lists (195). If I mark all "Unread" as read, the right pane is empty but still has (900+) listed. Otherwise everything else seems to work fine; when I "Mark All As Read" they stay read between program restarts.

    Running Ubuntu 10.10, 1.7.6 r4399 from dev PPA

     
  • Lars Windolf

    Lars Windolf - 2011-09-14
    • assigned_to: nobody --> llando
    • status: open --> closed-fixed
     
  • Lars Windolf

    Lars Windolf - 2011-09-14

    Fix released with 1.8-RC1