summaryrefslogtreecommitdiff
path: root/src/fr-window.c
diff options
context:
space:
mode:
authorColomban Wendling <[email protected]>2025-06-25 11:29:04 +0200
committerColomban Wendling <[email protected]>2025-06-25 11:29:04 +0200
commit492b20b5e1ebe7f2eb99c87f998d41f9df35b87d (patch)
tree8d446909bc4d26307227a061fc27fe203ad67a98 /src/fr-window.c
parentbfad4da5b243c6353b21e499813c0a80790d3f98 (diff)
downloadengrampa-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.c16
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,