libecal: importing event with pseudo "Etc/UTC" timezone crashed (#593019)
The problem was two-fold: first, e_cal_match_timezone() recognized the pseudo VTIMEZONE as matching the internal "UTC". Then e_cal_get_timezone() failed to extract this internal VTIMEZONE because there is no real definition for it, leading to an assert which terminates the caller. Matching to "UTC" is also problematic because e_cal_match_timezones() will use it for the imported event, which then cannot be exported properly (leads to TZID=UTC without VTIMEZONE definition). Therefore this patch removes the mapping to "UTC" in e_cal_match_timezone(). It also fixes e_cal_get_timezone() so that it does not assert and returns an error code, as originally intented, although that should no longer happen with the change to e_cal_match_timezone().
parent
1271dfa8
Please register or sign in to comment