summaryrefslogtreecommitdiff
path: root/variable.c
diff options
context:
space:
mode:
Diffstat (limited to 'variable.c')
-rw-r--r--variable.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/variable.c b/variable.c
index d74672b..7b9d0d8 100644
--- a/variable.c
+++ b/variable.c
@@ -957,6 +957,11 @@ do_variable_definition (const struct floc *flocp, const char *varname,
append = 1;
v = lookup_variable_in_set (varname, strlen (varname),
current_variable_set_list->set);
+
+ /* Don't append from the global set if a previous non-appending
+ target-specific variable definition exists. */
+ if (v && !v->append)
+ append = 0;
}
else
v = lookup_variable (varname, strlen (varname));