Bug 637091 - Crash in g_str_hash, task_shell_sidebar_client_removed

I don't know how in the world an ESource can wind up not having a UID
string, but we saw a case of this in 2.32.  Emit a runtime warning and
avoid crashing.
This commit is contained in:
Matthew Barnes
2011-03-03 07:45:37 -05:00
parent 8e33ff0fbb
commit 0be641ea82
3 changed files with 3 additions and 0 deletions

View File

@ -746,6 +746,7 @@ cal_shell_sidebar_client_removed (ECalShellSidebar *cal_shell_sidebar,
source = e_cal_get_source (client);
uid = e_source_peek_uid (source);
g_return_if_fail (uid != NULL);
g_hash_table_remove (client_table, uid);
e_source_selector_unselect_source (selector, source);

View File

@ -651,6 +651,7 @@ memo_shell_sidebar_client_removed (EMemoShellSidebar *memo_shell_sidebar,
source = e_cal_get_source (client);
uid = e_source_peek_uid (source);
g_return_if_fail (uid != NULL);
g_hash_table_remove (client_table, uid);
e_source_selector_unselect_source (selector, source);

View File

@ -651,6 +651,7 @@ task_shell_sidebar_client_removed (ETaskShellSidebar *task_shell_sidebar,
source = e_cal_get_source (client);
uid = e_source_peek_uid (source);
g_return_if_fail (uid != NULL);
g_hash_table_remove (client_table, uid);
e_source_selector_unselect_source (selector, source);