Bugzilla (bugzilla.redhat.com) will be under maintenance for infrastructure upgrades and will not be unavailable on July 31st between 12:30 AM - 05:30 AM UTC. We appreciate your understanding and patience. You can follow status.redhat.com for details.
Bug 1883619 - ECalendarItem: Settings loaded only when being shown
Summary: ECalendarItem: Settings loaded only when being shown
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: evolution
Version: 8.2
Hardware: All
OS: Linux
Target Milestone: rc
: 8.0
Assignee: Milan Crha
QA Contact: Desktop QE
Depends On:
TreeView+ depends on / blocked
Reported: 2020-09-29 17:51 UTC by Paulo Andrade
Modified: 2021-05-18 15:19 UTC (History)
1 user (show)

Fixed In Version: evolution-3.28.5-15.el8
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2021-05-18 15:19:09 UTC
Type: Bug
Target Upstream Version:

Attachments (Terms of Use)

Description Paulo Andrade 2020-09-29 17:51:37 UTC
Steps to reproduce:

1. Start evolution
2. View -> Layout -> Uncheck "Show Side Bar"
3. View -> Window -> Choose "Calendar"
4. Edit -> Preferences -> General -> Week starts on: select Saturday
5. Create one appointment per day until filling the current week
6. Close the evolution window
7. Start evolution
8. Scroll calendar to not have the current day visible
9. Press Ctrl-T

It will enter a 100% cpu usage loop. Looping apparently on a very
deep call trace on gtk_css_node_ensure_style.
Attempted a gtk3 build with https://github.com/GNOME/gtk/commit/fc823eb61002d1350305cba6ec718a7c4f6c05e1
but it still consumes 100% cpu, just that does not create very deep
stack traces on gtk_css_node_ensure_style.

Comment 1 Paulo Andrade 2020-09-29 17:54:19 UTC
Ops, on step 4 should also select Saturday and Sunday as work days.

Comment 3 Milan Crha 2020-09-30 11:51:53 UTC
Thanks for a bug report. I can reproduce it too, but only in the Month View. Other views do not trigger the gtk+ bug (I suppose so, because the backtrace shows a long recursive call of gtk_css_node_ensure_style() function (more than 1000 of those on the stack). After some investigation, the gtk+ function call is only a side effect of a disagreement between the mini-calendar inner state and the actual settings, causing immediate change of the selected month due to "rounding" to correct time. Once this is fixed it all behaves as it should.

Comment 4 Milan Crha 2020-09-30 11:59:53 UTC
I fixed this upstream [1] for 3.39.1+ and 3.38.1+.

[1] https://gitlab.gnome.org/GNOME/evolution/commit/8a442bd07b

Comment 5 Milan Crha 2020-09-30 13:20:34 UTC
As a workaround, let the side bar shown at least once (press F9 twice). That's enough to make it work as expected.

Comment 9 Michal Odehnal 2020-10-19 09:43:59 UTC
Unable to reproduce with evolution-3.28.5-15.el8.x86_64. Switching to VERIFIED.

Comment 11 errata-xmlrpc 2021-05-18 15:19:09 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Low: evolution security, bug fix, and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.