martinrotter / rssguard

Feed reader (and podcast player) which supports RSS/ATOM/JSON and many web-based feed services.
GNU General Public License v3.0
1.56k stars 124 forks source link

[BUG]: Article preview not working #1417

Closed Cronos-lab closed 3 months ago

Cronos-lab commented 4 months ago

Brief description of the issue

Hello,

I installed RSSGuard as AppImage on Linux Mint. I also use OpenSnitch, an interactive application firewall. https://github.com/evilsocket/opensnitch

In OpenSnitch, I applied two rules : ^/tmp/.mount_rssgua[0-9A-Za-z]{6}\/.QtWebEngineProcess$ (I have checked "is regular expression") ^/tmp/.mount_rssgua[0-9A-Za-z]{6}\/.rssguard$ (I have checked "is regular expression")

When I run RSSGuard for the first time after installation, everything works and I can see the article preview.

When I quit RSSGuard and restart it, I no longer have access to the article preview.

I need to delete the folders located here to display the item preview again: /home/USER/.config/RSS Guard 4

Note that the list of articles is displayed correctly.

How to reproduce the bug?

  1. Install Open-Snitch
  2. Install the AppImage of RSSGuard
  3. Open RSSGuard & apply Open Snitch rules directly & read a preview of articles
  4. Leave RSSQuard
  5. Relaunch application

What was the expected result?

Get a preview of the articles.

What actually happened?

The item preview does not work during the second launch of the application.

Debug log

time=" 332.664" type="debug" -> core: Updating messages in DB. time=" 332.664" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81744' is present in DB. time=" 332.711" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81746' is present in DB. time=" 332.739" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81738' is present in DB. time=" 332.762" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81731' is present in DB. time=" 332.784" type="debug" -> database: Checking if message with feed-specific custom ID 'http://www.it-connect.fr/?p=6177' is present in DB. time=" 332.804" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81667' is present in DB. time=" 332.825" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81662' is present in DB. time=" 332.845" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=80086' is present in DB. time=" 332.868" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81627' is present in DB. time=" 332.892" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81613' is present in DB. time=" 332.920" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81617' is present in DB. time=" 332.953" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81608' is present in DB. time=" 332.975" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=79779' is present in DB. time=" 332.995" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81524' is present in DB. time=" 333.016" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.it-connect.fr/?p=81518' is present in DB. time=" 333.072" type="debug" -> database: SQLite connection 'db_connection_140370657670720' is already active. time=" 333.072" type="debug" -> database: SQLite database connection 'db_connection_140370657670720' to file 'file::memory:' seems to be established. time=" 333.094" type="debug" -> database: SQLite connection 'db_connection_140370657670720' is already active. time=" 333.094" type="debug" -> database: SQLite database connection 'db_connection_140370657670720' to file 'file::memory:' seems to be established. time=" 333.114" type="debug" -> database: SQLite connection 'db_connection_140370657670720' is already active. time=" 333.114" type="debug" -> database: SQLite database connection 'db_connection_140370657670720' to file 'file::memory:' seems to be established. time=" 333.136" type="debug" -> database: SQLite connection 'db_connection_140370657670720' is already active. time=" 333.136" type="debug" -> database: SQLite database connection 'db_connection_140370657670720' to file 'file::memory:' seems to be established. time=" 333.156" type="debug" -> database: SQLite connection 'db_connection_140370657670720' is already active. time=" 333.156" type="debug" -> database: SQLite database connection 'db_connection_140370657670720' to file 'file::memory:' seems to be established. time=" 333.157" type="debug" -> feed-downloader: Updating messages in DB took 492992 microseconds. time=" 333.157" type="debug" -> feed-downloader: 15 unread messages and 15 total messages for feed '60' stored in DB. time=" 333.157" type="debug" -> feed-downloader: Made progress in feed updates, total feeds count 1/1 (id of feed is 60). time=" 333.157" type="debug" -> feed-downloader: Finished feed updates in thread '0x7fab0245d640'. time=" 333.159" type="debug" -> CTRL is NOT pressed while sorting articles - sorting with standard mode. time=" 333.196" type="debug" -> message-model: Repopulated model, SQL statement is now: 'SELECT Messages.id, Messages.is_read, Messages.is_important, Messages.is_deleted, Messages.is_pdeleted, Messages.feed, Messages.title, Messages.url, Messages.author, Messages.date_created, Messages.contents, Messages.enclosures, Messages.score, Messages.account_id, Messages.custom_id, Messages.custom_hash, Feeds.title, Feeds.is_rtl, CASE WHEN LENGTH(Messages.enclosures) > 10 THEN 'true' ELSE 'false' END AS has_enclosures, (SELECT GROUP_CONCAT(Labels.name) FROM Labels WHERE Messages.labels LIKE "%." || Labels.custom_id || ".%") as msg_labels, Messages.labels FROM Messages LEFT JOIN Feeds ON Messages.feed = Feeds.custom_id AND Messages.account_id = Feeds.account_id WHERE Feeds.custom_id IN ('60') AND Messages.is_deleted = 0 AND Messages.is_pdeleted = 0 AND Messages.account_id = 1 ORDER BY Messages.date_created DESC, LOWER(Messages.author) ASC, LOWER(Messages.title) ASC;'. time=" 333.196" type="debug" -> gui: Reloading of msg selections took 37 miliseconds. time=" 333.202" type="debug" -> core: Using QSoundEffect to play notification sound. time=" 333.202" type="debug" -> core: Silencing GUI message: ''. time=" 334.152" type="debug" -> gui: Message list got focus with reason 'Qt::MouseFocusReason'. time=" 334.153" type="debug" -> gui: Current row changed - proxy 'QModelIndex(0,6,0x56153792e8c0,MessagesProxyModel(0x56152ce33550, name = MessagesProxyModel))', source 'QModelIndex(0,6,0x0,MessagesModel(0x56152ce4fbd0))'. time=" 334.153" type="debug" -> gui: Marking article as read immediately. time=" 334.155" type="debug" -> database: SQLite connection 'StandardFeed' is already active. time=" 334.155" type="debug" -> database: SQLite database connection 'StandardFeed' to file 'file::memory:' seems to be established. time=" 334.211" type="debug" -> database: SQLite connection 'UnreadNode' is already active. time=" 334.211" type="debug" -> database: SQLite database connection 'UnreadNode' to file 'file::memory:' seems to be established. time=" 334.236" type="debug" -> feed-model: There is request to reload feed model, reloading the 2 items individually. time=" 334.260" type="debug" -> gui: HTML image resizing took 0 miliseconds. time=" 374.056" type="debug" -> gui: Message list got focus with reason 'Qt::ActiveWindowFocusReason'. time=" 375.031" type="debug" -> gui: Current row changed - proxy 'QModelIndex(1,6,0x56153792e8c0,MessagesProxyModel(0x56152ce33550, name = MessagesProxyModel))', source 'QModelIndex(1,6,0x0,MessagesModel(0x56152ce4fbd0))'. time=" 375.031" type="debug" -> gui: Marking article as read immediately. time=" 375.032" type="debug" -> database: SQLite connection 'StandardFeed' is already active. time=" 375.032" type="debug" -> database: SQLite database connection 'StandardFeed' to file 'file::memory:' seems to be established. time=" 375.090" type="debug" -> database: SQLite connection 'UnreadNode' is already active. time=" 375.091" type="debug" -> database: SQLite database connection 'UnreadNode' to file 'file::memory:' seems to be established. time=" 375.123" type="debug" -> feed-model: There is request to reload feed model, reloading the 2 items individually. time=" 375.147" type="debug" -> gui: HTML image resizing took 0 miliseconds. time=" 388.377" type="debug" -> gui: Message list got focus with reason 'Qt::ActiveWindowFocusReason'. time=" 391.326" type="debug" -> gui: Current row changed - proxy 'QModelIndex(2,6,0x56153792e8c0,MessagesProxyModel(0x56152ce33550, name = MessagesProxyModel))', source 'QModelIndex(2,6,0x0,MessagesModel(0x56152ce4fbd0))'. time=" 391.326" type="debug" -> gui: Marking article as read immediately. time=" 391.327" type="debug" -> database: SQLite connection 'StandardFeed' is already active. time=" 391.327" type="debug" -> database: SQLite database connection 'StandardFeed' to file 'file::memory:' seems to be established. time=" 391.376" type="debug" -> database: SQLite connection 'UnreadNode' is already active. time=" 391.376" type="debug" -> database: SQLite database connection 'UnreadNode' to file 'file::memory:' seems to be established. time=" 391.408" type="debug" -> feed-model: There is request to reload feed model, reloading the 2 items individually. time=" 391.432" type="debug" -> gui: HTML image resizing took 0 miliseconds. time=" 430.367" type="debug" -> gui: Message list got focus with reason 'Qt::ActiveWindowFocusReason'. time=" 531.135" type="debug" -> gui: Message list got focus with reason 'Qt::ActiveWindowFocusReason'. time=" 531.865" type="debug" -> gui: Main window hide event time=" 531.865" type="debug" -> gui: Article list header geometries changed. time=" 651.033" type="debug" -> gui: Article list header geometries changed. time=" 651.050" type="debug" -> gui: Message list got focus with reason 'Qt::ActiveWindowFocusReason'. time=" 756.091" type="debug" -> gui: Message list got focus with reason 'Qt::ActiveWindowFocusReason'. time=" 757.291" type="debug" -> gui: Message list got focus with reason 'Qt::ActiveWindowFocusReason'. time=" 757.322" type="debug" -> gui: Main window hide event time=" 757.322" type="debug" -> gui: Article list header geometries changed. time=" 757.327" type="debug" -> gui: Main window close event time=" 766.419" type="debug" -> core: Received '-a' execution message. time=" 766.419" type="debug" -> gui: Article list header geometries changed. time=" 766.428" type="debug" -> core: Silencing GUI message: 'L'application est déjà lancée'. time=" 766.698" type="debug" -> gui: Message list got focus with reason 'Qt::ActiveWindowFocusReason'. time=" 769.983" type="debug" -> gui: Message list got focus with reason 'Qt::PopupFocusReason'. time=" 770.415" type="debug" -> gui: Current row changed - proxy 'QModelIndex(3,6,0x56153792e8c0,MessagesProxyModel(0x56152ce33550, name = MessagesProxyModel))', source 'QModelIndex(3,6,0x0,MessagesModel(0x56152ce4fbd0))'. time=" 770.415" type="debug" -> gui: Marking article as read immediately. time=" 770.416" type="debug" -> database: SQLite connection 'StandardFeed' is already active. time=" 770.416" type="debug" -> database: SQLite database connection 'StandardFeed' to file 'file::memory:' seems to be established. time=" 770.469" type="debug" -> database: SQLite connection 'UnreadNode' is already active. time=" 770.469" type="debug" -> database: SQLite database connection 'UnreadNode' to file 'file::memory:' seems to be established. time=" 770.493" type="debug" -> feed-model: There is request to reload feed model, reloading the 2 items individually. time=" 770.513" type="debug" -> gui: HTML image resizing took 0 miliseconds. time=" 772.438" type="debug" -> gui: Current row changed - proxy 'QModelIndex(2,6,0x56153792e8c0,MessagesProxyModel(0x56152ce33550, name = MessagesProxyModel))', source 'QModelIndex(2,6,0x0,MessagesModel(0x56152ce4fbd0))'. time=" 772.439" type="debug" -> gui: HTML image resizing took 0 miliseconds.

Operating system and version

martinrotter commented 4 months ago

Provide fulll log from the point where app is started for the second time and article is clicked.

Does issue exist with 4.6.6?

Cronos-lab commented 4 months ago

test.txt Here are the logs for the latest version.

I've also tried with version 4.6.6 but the problem is similar.

Cronos-lab commented 4 months ago

I think the problem is in my rssguard.desktop file, maybe I need to add a line.

Because the first time I launch it, I have to add my settings and my catalogue, then I have to restart, and then everything works.

But when I quit the software and launch it using rssguard.desktop, that's when the article preview no longer works.

My rssguard.desktop, looks like this:

[Desktop Entry]

The type as listed above

Type=Application

The version of the desktop entry specification to which this file complies

Version=1.0

The name of the application

Name=RSSGuard

Icon=/home/USER/.local/share/applications/RSS_Guard_logo.png

The executable of the application, possibly with arguments.

Exec=/home/USER/applications/rssguard-4.7.0-f2d3203df-linux64.AppImage

Describes whether this application needs to be run in a terminal or not

Terminal=true

Name[fr_FR]=rssguard.desktop Comment=PrefersNonDefaultGPU=false

martinrotter commented 4 months ago

Hard to say, I did not really ever bumped into this specific problem using AppImage. It just works.

Also, there are likely (given download stats) hundreds of AppImage users - if such a critical bug was there, it would be reported many times.

Cronos-lab commented 4 months ago

I found out what the problem was. It was my Settings file that came from Windows and was causing a conflict.

Thank you very much and sorry for the inconvenience.

martinrotter commented 4 months ago

I see, okay. Perhaps you could share the settings file?

martinrotter commented 4 months ago

So, perhaps "Enable article preview" function was turned OFF? It is located in "Articles" menu.

DawEdhel commented 3 months ago

Recently I had to use a Linux AppImage variant with my WIndows userdata folder, and met the same problem: the article preview were triggered but its content were blank for any article.

Fiddling with the config file, I've figured out the problem was with this line:

[browser]
webengine_chromium_flags=--enable-smooth-scrolling

According to this, Linux variant requires "--no-sandbox" option additionally to work properly; but looks like its default values get overridden by saved custom webengine options from the config file instead.

martinrotter commented 3 months ago

Thanks! Will fix.