From ed882589e15422e03267ffb9ca6cb1a7376d1822 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Wed, 12 Mar 2014 22:31:59 -0400 Subject: [PATCH] Merged #30 "Watch list push parameters are not always honored" --- src/main/java/com/gitblit/models/TicketModel.java | 16 +++++++++++++++- 1 files changed, 15 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/gitblit/models/TicketModel.java b/src/main/java/com/gitblit/models/TicketModel.java index fa09ec5..aced6d7 100644 --- a/src/main/java/com/gitblit/models/TicketModel.java +++ b/src/main/java/com/gitblit/models/TicketModel.java @@ -785,7 +785,21 @@ for (String item : items) { list.add(prefix + item); } - setField(field, join(list, ",")); + if (hasField(field)) { + String flat = getString(field); + if (isEmpty(flat)) { + // field is empty, use this list + setField(field, join(list, ",")); + } else { + // merge this list into the existing field list + Set<String> set = new TreeSet<String>(Arrays.asList(flat.split(","))); + set.addAll(list); + setField(field, join(set, ",")); + } + } else { + // does not have a list for this field + setField(field, join(list, ",")); + } } public String getId() { -- Gitblit v1.9.1