Calendar crashes when clicked
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Zim |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
This is zim 0.62
Platform: nt
Locale: en_US cp1252
FS encoding: mbcs
Python: (2, 7, 8, 'final', 0)
Gtk: (2, 24, 10)
Pygtk: (2, 24, 0)
Zim revision is:
branch: 062
revision: 739 <email address hidden>
date: 2014-10-10 21:28:06 +0200
======= Traceback =======
File "zim\actions.pyo", line 55, in func
File "zim\plugins\
File "zim\gui\
File "zim\plugins\
File "zim\plugins\
File "zim\plugins\
File "zim\plugins\
File "zim\plugins\
ValueError: day is out of range for month
This started happening on 01 April, previously I had no issues.
Changed in zim: | |
status: | Fix Committed → Fix Released |
Can't say exactly if my situation is the same, but traceback looks similar. from_path function in calendar.py), but since such date can't exist this raise ValueError.
Creating a new day page in calendar in current month with 100 > name > 31 cause plugin crash on next start.
It seems this error occurs while transforming date to datetime.date object (daterange_
The solution could be to wrap datetime.date in try/except and return None if exception occurs (see patch for example) - I don't think it will break something.
======= Traceback ======= 0.63\zim\ actions. py", line 55, in func func(instance, *arg, **kwarg) 0.63\zim\ plugins\ calendar. py", line 271, in show_calendar unique( self, self.plugin, self.window) 0.63\zim\ gui\widgets. py", line 2851, in unique 0.63\zim\ plugins\ calendar. py", line 482, in __init__ calendar_ widget = CalendarWidget( model) 0.63\zim\ plugins\ calendar. py", line 409, in __init__ on_month_ changed( self.calendar) 0.63\zim\ plugins\ calendar. py", line 436, in on_month_changed list_dates_ for_month( self.calendar. get_date( )): 0.63\zim\ plugins\ calendar. py", line 467, in list_dates_ for_month from_path( path) 0.63\zim\ plugins\ calendar. py", line 51, in daterange_from_path ======= ======= ====
....
File ...\zim-
self.
File ...\zim-
dialog = CalendarDialog.
File ...\zim-
dialog = klass(*args, **opts)
File ...\zim-
self.
File ...\zim-
self.
File ...\zim-
for date in self.model.
File ...\zim-
dates = daterange_
File ...\zim-
date = datetime.date(year, month, day)
ValueError: day is out of range for month
=======