Ensure Fragment can merge attributes

Use a new map when merging as the original may be immutable.

Closes gh-34848
This commit is contained in:
rstoyanchev
2025-05-02 08:19:18 +01:00
parent ac773d97e9
commit c067919173
2 changed files with 51 additions and 4 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2002-2024 the original author or authors.
* Copyright 2002-2025 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -91,9 +91,7 @@ public final class Fragment {
if (CollectionUtils.isEmpty(model.asMap())) {
return;
}
if (this.model == null) {
this.model = new LinkedHashMap<>();
}
this.model = new LinkedHashMap<>(this.model != null ? this.model : Collections.emptyMap());
model.asMap().forEach((key, value) -> this.model.putIfAbsent(key, value));
}