diff options
author | 2013-11-06 22:56:26 +0100 | |
---|---|---|
committer | 2013-11-06 22:56:26 +0100 | |
commit | 18128612d2787f06ac95c423b3f3b4dd8af6ec07 (patch) | |
tree | 84732e12cd7175e8c6f7912b9bac9660e177bef5 /plugins | |
parent | 4d1f330c0b4d15c834befa17d33558fb773d0259 (diff) |
trkproperties: restore multiple-value string to original value if the result is "" after editing
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/gtkui/trkproperties.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/plugins/gtkui/trkproperties.c b/plugins/gtkui/trkproperties.c index e3198db1..3a6cf301 100644 --- a/plugins/gtkui/trkproperties.c +++ b/plugins/gtkui/trkproperties.c @@ -246,9 +246,12 @@ on_metadata_edited (GtkCellRendererText *renderer, gchar *path, gchar *new_text, gtk_tree_model_get_iter (GTK_TREE_MODEL (store), &iter, treepath); gtk_tree_path_free (treepath); GValue value = {0,}; + GValue mult = {0,}; gtk_tree_model_get_value (GTK_TREE_MODEL (store), &iter, 1, &value); + gtk_tree_model_get_value (GTK_TREE_MODEL (store), &iter, 3, &mult); const char *svalue = g_value_get_string (&value); - if (strcmp (svalue, new_text)) { + int imult = g_value_get_int (&mult); + if (strcmp (svalue, new_text) && (!imult || strlen (new_text))) { gtk_list_store_set (store, &iter, 1, new_text, 3, 0, -1); trkproperties_modified = 1; } |