Bug 429444 - Cannot delete feeds or folders
Summary: Cannot delete feeds or folders
Status: RESOLVED FIXED
Alias: None
Product: akregator
Classification: Applications
Component: general (show other bugs)
Version: 5.15.3
Platform: Arch Linux Linux
: NOR normal
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
: 429866 429878 (view as bug list)
Depends on:
Blocks:
 
Reported: 2020-11-21 12:11 UTC by acidoglutamminico
Modified: 2021-04-11 12:41 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description acidoglutamminico 2020-11-21 12:11:39 UTC
SUMMARY
Cannot delete feed or folder.
Modifications in .local/share/akregator/data do not effect feeds displayed.

STEPS TO REPRODUCE
1. Install akregator from pacman

OBSERVED RESULT
Cannot delete feeds or folders

EXPECTED RESULT
Deleting feeds or folders

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 5.20.3
KDE Frameworks Version: 5.76.0
Qt Version: 5.15.1

ADDITIONAL INFORMATION
minimal install of kde, no other kde applications other than
Comment 1 Christoph Feck 2020-12-16 14:23:21 UTC
*** Bug 429866 has been marked as a duplicate of this bug. ***
Comment 2 Christoph Feck 2020-12-29 00:51:24 UTC
*** Bug 429878 has been marked as a duplicate of this bug. ***
Comment 3 Michael Vastola 2021-03-16 17:18:38 UTC
I can confirm this is also happening on 5.15.1 (Latest release from Ubuntu Groovy).

Oddly, for me, I can usually delete one feed or folder for each launch, and folders can only be deleted if I first delete each feed therein (re-running the app each time).

Console output appears to include a line along the lines of this every time I try to delete something (whether or not it is successful):
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 1964, resource id: 29423535, major code: 40 (TranslateCoords), minor code: 0

After deleting one or more feeds, I will get this when the program exits:
kf.xmlgui: 0x5609c5508788 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes.
Comment 4 Bug Janitor Service 2021-03-28 11:50:32 UTC
A possibly relevant merge request was started @ https://invent.kde.org/pim/akregator/-/merge_requests/10
Comment 5 Laurent Montel 2021-04-11 12:40:20 UTC
Git commit 2f6d4e233ae8178535d74c1da0cf75a54762d165 by Laurent Montel, on behalf of Tomáš Trnka.
Committed on 11/04/2021 at 12:39.
Pushed by mlaurent into branch 'master'.

Treat feed IDs as unsigned everywhere

This fixes several bugs introduced by commit 230b8f20e1c042fecd814328755815356217eb62
("Port all instance of KRandom") which switched the random number
generator used in FeedList::generateId() from KRandom to
QRandomGenerator. The former generates positive signed integers while
the latter generates unsigned ints. While TreeNode already used uint to
store the IDs, other classes used plain int. Half of the newly generated
IDs thus got mapped to negative values, confusing various validity
checks.

M  +3    -3    src/command/deletesubscriptioncommand.cpp
M  +2    -2    src/command/deletesubscriptioncommand.h
M  +4    -4    src/command/editsubscriptioncommand.cpp
M  +2    -2    src/command/editsubscriptioncommand.h
M  +4    -4    src/command/expireitemscommand.cpp
M  +2    -2    src/command/expireitemscommand.h
M  +5    -5    src/feed/feedlist.cpp
M  +3    -3    src/feed/feedlist.h
M  +6    -6    src/subscription/subscriptionlistjobs.cpp
M  +9    -9    src/subscription/subscriptionlistjobs.h
M  +1    -1    src/subscription/subscriptionlistmodel.cpp

https://invent.kde.org/pim/akregator/commit/2f6d4e233ae8178535d74c1da0cf75a54762d165
Comment 6 Laurent Montel 2021-04-11 12:41:16 UTC
Git commit 546db72108cba99a1881e97349ce55db5d1da88e by Laurent Montel, on behalf of Tomáš Trnka.
Committed on 11/04/2021 at 12:41.
Pushed by mlaurent into branch 'release/21.04'.

Treat feed IDs as unsigned everywhere

This fixes several bugs introduced by commit 230b8f20e1c042fecd814328755815356217eb62
("Port all instance of KRandom") which switched the random number
generator used in FeedList::generateId() from KRandom to
QRandomGenerator. The former generates positive signed integers while
the latter generates unsigned ints. While TreeNode already used uint to
store the IDs, other classes used plain int. Half of the newly generated
IDs thus got mapped to negative values, confusing various validity
checks.
(cherry picked from commit 2f6d4e233ae8178535d74c1da0cf75a54762d165)

M  +3    -3    src/command/deletesubscriptioncommand.cpp
M  +2    -2    src/command/deletesubscriptioncommand.h
M  +4    -4    src/command/editsubscriptioncommand.cpp
M  +2    -2    src/command/editsubscriptioncommand.h
M  +4    -4    src/command/expireitemscommand.cpp
M  +2    -2    src/command/expireitemscommand.h
M  +5    -5    src/feed/feedlist.cpp
M  +3    -3    src/feed/feedlist.h
M  +6    -6    src/subscription/subscriptionlistjobs.cpp
M  +9    -9    src/subscription/subscriptionlistjobs.h
M  +1    -1    src/subscription/subscriptionlistmodel.cpp

https://invent.kde.org/pim/akregator/commit/546db72108cba99a1881e97349ce55db5d1da88e