diff options
Diffstat (limited to 'graphics/darktable/files/patch-git-5db7918176ca45a24e9ea5b2a7bdbce898343059')
-rw-r--r-- | graphics/darktable/files/patch-git-5db7918176ca45a24e9ea5b2a7bdbce898343059 | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/graphics/darktable/files/patch-git-5db7918176ca45a24e9ea5b2a7bdbce898343059 b/graphics/darktable/files/patch-git-5db7918176ca45a24e9ea5b2a7bdbce898343059 new file mode 100644 index 000000000000..cabdbe858e29 --- /dev/null +++ b/graphics/darktable/files/patch-git-5db7918176ca45a24e9ea5b2a7bdbce898343059 @@ -0,0 +1,46 @@ +From 5db7918176ca45a24e9ea5b2a7bdbce898343059 Mon Sep 17 00:00:00 2001 +From: Mario Zimmermann <mail@zisoft.de> +Date: Mon, 23 Jun 2025 13:36:33 +0200 +Subject: [PATCH] use full metadata tag name for variable substitution + +--- + src/common/variables.c | 4 +--- + src/gui/gtkentry.c | 2 +- + 2 files changed, 2 insertions(+), 4 deletions(-) + +diff --git a/src/common/variables.c b/src/common/variables.c +index b8deed704af0..2746a7cf8647 100644 +--- src/common/variables.c ++++ b/src/common/variables.c +@@ -953,9 +953,8 @@ static char *_get_base_value(dt_variables_params_t *params, char **variable) + for(GList* iter = dt_metadata_get_list(); iter; iter = iter->next) + { + dt_metadata_t *metadata = (dt_metadata_t *)iter->data; +- gchar *prefix = g_utf8_strup(dt_metadata_get_tag_subkey(metadata->tagname), -1); + gboolean found = FALSE; +- if(_has_prefix(variable, prefix)) ++ if(_has_prefix(variable, metadata->tagname)) + { + GList *res = dt_metadata_get(params->imgid, metadata->tagname, NULL); + if(res != NULL) +@@ -963,7 +962,6 @@ static char *_get_base_value(dt_variables_params_t *params, char **variable) + g_list_free_full(res, g_free); + found = TRUE; + } +- g_free(prefix); + if(found) break; + } + dt_pthread_mutex_unlock(&darktable.metadata_threadsafe); +diff --git a/src/gui/gtkentry.c b/src/gui/gtkentry.c +index b4acc9ccc8ad..db200eff47a9 100644 +--- src/gui/gtkentry.c ++++ b/src/gui/gtkentry.c +@@ -291,7 +291,7 @@ void dt_gtkentry_variables_add_metadata(dt_metadata_t *metadata) + { + GtkTreeIter iter; + +- gchar *varname = g_utf8_strup(dt_metadata_get_tag_subkey(metadata->tagname), -1); ++ gchar *varname = g_strdup(metadata->tagname); + gchar *description = g_strdup_printf("$(%s) - %s", varname, _("from metadata")); + gtk_list_store_append(_completion_model, &iter); + gtk_list_store_set(_completion_model, &iter, |