diff options
author | Colomban Wendling <[email protected]> | 2025-06-25 11:29:04 +0200 |
---|---|---|
committer | Colomban Wendling <[email protected]> | 2025-06-25 11:29:04 +0200 |
commit | 492b20b5e1ebe7f2eb99c87f998d41f9df35b87d (patch) | |
tree | 8d446909bc4d26307227a061fc27fe203ad67a98 /src/fr-window.c | |
parent | bfad4da5b243c6353b21e499813c0a80790d3f98 (diff) | |
download | engrampa-datetime-failure.tar.bz2 engrampa-datetime-failure.tar.xz |
Avoid critical errors with invalid datesdatetime-failure
This likely should not happen with valid dates, but can if a archiver
reports invalid ones for whatever reason (legitimate weird dates, or
parser failures for example).
Diffstat (limited to 'src/fr-window.c')
-rw-r--r-- | src/fr-window.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/fr-window.c b/src/fr-window.c index e86f7e0..d1ce30c 100644 --- a/src/fr-window.c +++ b/src/fr-window.c @@ -1493,8 +1493,12 @@ fr_window_populate_file_list (FrWindow *window, } else { GDateTime *date_time; date_time = g_date_time_new_from_unix_local (fdata->modified); - s_time = g_date_time_format (date_time, _("%d %B %Y, %H:%M")); - g_date_time_unref (date_time); + if (! date_time) { + s_time = g_strdup (""); + } else { + s_time = g_date_time_format (date_time, _("%d %B %Y, %H:%M")); + g_date_time_unref (date_time); + } } gtk_list_store_set (window->priv->list_store, &iter, @@ -1522,8 +1526,12 @@ fr_window_populate_file_list (FrWindow *window, s_size = g_format_size (fdata->size); date_time = g_date_time_new_from_unix_local (fdata->modified); - s_time = g_date_time_format (date_time, _("%d %B %Y, %H:%M")); - g_date_time_unref (date_time); + if (! date_time) { + s_time = g_strdup(""); + } else { + s_time = g_date_time_format (date_time, _("%d %B %Y, %H:%M")); + g_date_time_unref (date_time); + } desc = g_content_type_get_description (fdata->content_type); gtk_list_store_set (window->priv->list_store, &iter, |