linuxmint / cinnamon

A Linux desktop featuring a traditional layout, built from modern technology and introducing brand new innovative features.
GNU General Public License v2.0
4.4k stars 722 forks source link

Date & Time crashes when clicking on the map if timezone is set to localtime #12148

Open fulalas opened 1 month ago

fulalas commented 1 month ago
 * cinnamon-control-center version 6.0.1
 * Distribution - (PorteuX 1.2 x64)
 * AMD 780M with Mesa 24.0.4

Issue Having timezone set to localtime crashes the application when clicking on the map:

Traceback (most recent call last):
  File "/usr/share/cinnamon/cinnamon-settings/modules/cs_calendar.py", line 194, in _on_proxy_ready
    self.proxy_ready_callback()
  File "/usr/share/cinnamon/cinnamon-settings/modules/cs_calendar.py", line 77, in _on_proxy_ready
    self.tz_selector.set_timezone(self.zone)
  File "/usr/share/cinnamon/cinnamon-settings/modules/cs_calendar.py", line 263, in set_timezone
    region, city = timezone.split('/', maxsplit=1)
    ^^^^^^^^^^^^
ValueError: not enough values to unpack (expected 2, got 1)

The problem is in /usr/share/cinnamon/cinnamon-settings/modules/cs_calendar.py. Original code:

    def set_timezone(self, timezone):
        if timezone == "Etc/UTC" or timezone == "Universal":
            return

Changing to this fixes the issue:

    def set_timezone(self, timezone):
        if timezone == "Etc/UTC" or timezone == "Universal" or timezone == "localtime":
            return

However, maybe there's a safer solution, like returning if timezone equals Etc/UTC or doesn't have /