]> www.fi.muni.cz Git - evince.git/blobdiff - cut-n-paste/recent-files/egg-recent-item.c
Updated British English translation.
[evince.git] / cut-n-paste / recent-files / egg-recent-item.c
index c533205187159067484ad59f64f559280e88e24f..535e2227779aacff79e0b6819df530a0859ee90b 100644 (file)
@@ -128,6 +128,7 @@ egg_recent_item_copy (const EggRecentItem *item)
        newitem->uri = g_strdup (item->uri);
        if (item->mime_type)
                newitem->mime_type = g_strdup (item->mime_type);
+       newitem->mime_type_is_explicit = item->mime_type_is_explicit
        newitem->timestamp = item->timestamp;
        newitem->private_data = item->private_data;
        newitem->groups = egg_recent_item_copy_groups (item->groups);
@@ -219,8 +220,6 @@ egg_recent_item_set_uri (EggRecentItem *item, const gchar *uri)
                g_free (utf8_uri);
        }
 
-       egg_recent_item_update_mime_type (item);
-
        return TRUE;
 }
 
@@ -261,7 +260,7 @@ make_valid_utf8 (const char *name)
 
        string = NULL;
        remainder = name;
-       remaining_bytes = strlen (name);
+       remaining_bytes = name ? strlen (name) : 0;
 
        while (remaining_bytes != 0) {
                if (g_utf8_validate (remainder, remaining_bytes, &invalid))
@@ -355,13 +354,14 @@ egg_recent_item_set_mime_type (EggRecentItem *item, const gchar *mime)
                item->mime_type             = g_strdup (mime);
        } else {
                item->mime_type_is_explicit = FALSE;
-               egg_recent_item_update_mime_type (item);
        }
 }
 
 gchar * 
-egg_recent_item_get_mime_type (const EggRecentItem *item)
+egg_recent_item_get_mime_type (EggRecentItem *item)
 {
+       egg_recent_item_update_mime_type (item);
+
        return g_strdup (item->mime_type);
 }