Skip to content

Commit ebfdcf4

Browse files
committed
Baby-proof extra tag filters
1 parent 7a53bb9 commit ebfdcf4

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

src/main/java/net/minecraftforge/gitver/internal/GitVersionImpl.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import java.io.File;
2323
import java.io.IOException;
2424
import java.util.ArrayList;
25+
import java.util.Arrays;
2526
import java.util.Collection;
2627
import java.util.Collections;
2728
import java.util.List;
@@ -72,7 +73,7 @@ public GitVersionImpl(File gitDir, File root, File project, GitVersionConfig con
7273
throw new IllegalArgumentException("Subproject '%s' is not configured in the git version config! An entry for it must exist.".formatted(this.localPath));
7374

7475
this.tagPrefix = projectConfig.getTagPrefix();
75-
this.filters = projectConfig.getFilters();
76+
this.filters = this.setFiltersInternal(projectConfig.getFilters());
7677
this.subprojects = this.calculateSubprojects(config.getAllProjects());
7778
}
7879

@@ -244,11 +245,15 @@ public void setTagPrefix(String tagPrefix) {
244245

245246
@Override
246247
public void setFilters(String... filters) {
247-
this.filters = filters;
248+
this.filters = this.setFiltersInternal(filters);
248249
this.filtersView.reset();
249250
this.info.reset();
250251
}
251252

253+
private String[] setFiltersInternal(String... filters) {
254+
return Arrays.stream(filters).filter(s -> s.length() > (s.startsWith("!") ? 1 : 0)).toArray(String[]::new);
255+
}
256+
252257

253258
/* FILE SYSTEM */
254259

0 commit comments

Comments
 (0)