diff --git a/src/main/java/org/springframework/hateoas/Links.java b/src/main/java/org/springframework/hateoas/Links.java
index 7c2b99b1..b2521031 100644
--- a/src/main/java/org/springframework/hateoas/Links.java
+++ b/src/main/java/org/springframework/hateoas/Links.java
@@ -45,7 +45,7 @@ import com.fasterxml.jackson.annotation.JsonValue;
public class Links implements Iterable {
public static final Links NONE = new Links(Collections.emptyList());
- private static final Pattern LINK_HEADER_PATTERN = Pattern.compile("(<[^>]*>(;\\s*\\w+=\"?[^\"]*\"?)+)");
+ private static final Pattern LINK_HEADER_PATTERN = Pattern.compile("(<[^>]*>(;\\s*\\w+=\"?[^\",]*\"?)+)");
private final List links;
@@ -91,8 +91,8 @@ public class Links implements Iterable {
return NONE;
}
- Matcher matcher = LINK_HEADER_PATTERN.matcher(source);
List links = new ArrayList<>();
+ Matcher matcher = LINK_HEADER_PATTERN.matcher(source);
while (matcher.find()) {
diff --git a/src/test/java/org/springframework/hateoas/LinksUnitTest.java b/src/test/java/org/springframework/hateoas/LinksUnitTest.java
index 79c9d503..5864e000 100755
--- a/src/test/java/org/springframework/hateoas/LinksUnitTest.java
+++ b/src/test/java/org/springframework/hateoas/LinksUnitTest.java
@@ -55,10 +55,13 @@ class LinksUnitTest {
Link.of("/somethingElse", "bar").withHreflang("de"));
// #1899
- static final String FIVE = ";rel=boo";
+ static final String FIVE = ";rel=boo";
static final String SIX = "; rel=bee";
- static final String LINKS3 = StringUtils.collectionToCommaDelimitedString(Arrays.asList(FIVE, SIX));
- static final Links reference3 = Links.of(Link.of("/somethingElse", "boo"), Link.of("/somethingElse", "bee"));
+ static final String SEVEN = ";rel=beeboo;title=sometitle";
+ static final String LINKS3 = StringUtils.collectionToCommaDelimitedString(Arrays.asList(FIVE, SIX, SEVEN));
+ static final Links reference3 = Links.of(Link.of("/somethingElse?foo=one,two", "boo"), //
+ Link.of("/somethingElse", "bee"),
+ Link.of("/somethingElse", "beeboo").withTitle("sometitle"));
@Test
void parsesLinkHeaderLinks() {