You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by bu...@apache.org on 2020/09/04 11:31:25 UTC

[cxf] branch master updated: cxf-rt-rs-client: minor changes in quoted header processing

This is an automated email from the ASF dual-hosted git repository.

buhhunyx pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cxf.git


The following commit(s) were added to refs/heads/master by this push:
     new fb7c501  cxf-rt-rs-client: minor changes in quoted header processing
fb7c501 is described below

commit fb7c501a22208b2ff0a16aee5cf0add2ae2525f1
Author: Alexey Markevich <bu...@gmail.com>
AuthorDate: Fri Sep 4 14:29:52 2020 +0300

    cxf-rt-rs-client: minor changes in quoted header processing
---
 .../java/org/apache/cxf/jaxrs/client/AbstractClient.java     | 12 ++----------
 .../test/java/org/apache/cxf/systest/jaxrs/BookStore.java    |  2 +-
 .../apache/cxf/systest/jaxrs/JAXRSClientServerBookTest.java  |  2 +-
 3 files changed, 4 insertions(+), 12 deletions(-)

diff --git a/rt/rs/client/src/main/java/org/apache/cxf/jaxrs/client/AbstractClient.java b/rt/rs/client/src/main/java/org/apache/cxf/jaxrs/client/AbstractClient.java
index d398cbb..af9bc5a 100644
--- a/rt/rs/client/src/main/java/org/apache/cxf/jaxrs/client/AbstractClient.java
+++ b/rt/rs/client/src/main/java/org/apache/cxf/jaxrs/client/AbstractClient.java
@@ -447,7 +447,7 @@ public abstract class AbstractClient implements Client {
             if (null == entry.getKey()) {
                 continue;
             }
-            if (entry.getValue().size() > 0) {
+            if (!entry.getValue().isEmpty()) {
                 if (HttpUtils.isDateRelatedHeader(entry.getKey())) {
                     currentResponseBuilder.header(entry.getKey(), entry.getValue().get(0));
                     continue;
@@ -868,15 +868,7 @@ public abstract class AbstractClient implements Client {
                     quote = !quote;
                     break;
                 case '\\':
-                    if (quote) {
-                        pos++;
-                        if (pos <= lastIndex) {
-                            sb.append(chars[pos]);
-                        }
-                        if (pos == lastIndex) {
-                            results.add(sb.toString());
-                        }
-                    } else {
+                    if (!quote) {
                         sb.append(c);
                     }
                     break;
diff --git a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookStore.java b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookStore.java
index 6418293..570d519 100644
--- a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookStore.java
+++ b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookStore.java
@@ -1744,7 +1744,7 @@ public class BookStore {
                 header("SomeHeader1", "\"some text, some more text\"").
                 header("SomeHeader2", "\"some text\"").
                 header("SomeHeader2", "\"quoted,text\"").
-                header("SomeHeader2", "\"even more text\"").
+                header("SomeHeader2", "\"and backslash\\\"").
                 header("SomeHeader3", "\"some text, some more text with inlined \\\"\"").
                 header("SomeHeader4", "\"\"").
                 build();
diff --git a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerBookTest.java b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerBookTest.java
index 389cbaf..f19e8e3 100644
--- a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerBookTest.java
+++ b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerBookTest.java
@@ -2841,7 +2841,7 @@ public class JAXRSClientServerBookTest extends AbstractBusClientServerTestBase {
         assertEquals(3, header2.size());
         assertEquals("\"some text\"", header2.get(0));
         assertEquals("\"quoted,text\"", header2.get(1));
-        assertEquals("\"even more text\"", header2.get(2));
+        assertEquals("\"and backslash\"", header2.get(2));
 
         List<Object> header3 = r.getMetadata().get("SomeHeader3");
         assertEquals(1, header3.size());