Index: /home/oleg/src/apache.org/jakarta-commons/httpclient-trunk/src/java/org/apache/commons/httpclient/util/ParameterParser.java =================================================================== --- /home/oleg/src/apache.org/jakarta-commons/httpclient-trunk/src/java/org/apache/commons/httpclient/util/ParameterParser.java (revision 326187) +++ /home/oleg/src/apache.org/jakarta-commons/httpclient-trunk/src/java/org/apache/commons/httpclient/util/ParameterParser.java (working copy) @@ -225,7 +225,7 @@ if (hasChar() && (chars[pos] == separator)) { pos++; // skip separator } - if ((paramName != null) && (paramName.length() > 0)) { + if (paramName != null && !(paramName.equals("") && paramValue == null)) { params.add(new NameValuePair(paramName, paramValue)); } } Index: /home/oleg/src/apache.org/jakarta-commons/httpclient-trunk/src/test/org/apache/commons/httpclient/TestParameterParser.java =================================================================== --- /home/oleg/src/apache.org/jakarta-commons/httpclient-trunk/src/test/org/apache/commons/httpclient/TestParameterParser.java (revision 326187) +++ /home/oleg/src/apache.org/jakarta-commons/httpclient-trunk/src/test/org/apache/commons/httpclient/TestParameterParser.java (working copy) @@ -96,7 +96,9 @@ s = " = stuff "; params = parser.parse(s, ';'); - assertEquals(0, params.size()); + assertEquals(1, params.size()); + assertEquals("", ((NameValuePair)params.get(0)).getName()); + assertEquals("stuff", ((NameValuePair)params.get(0)).getValue()); } public void testParsingEscapedChars() { Index: /home/oleg/src/apache.org/jakarta-commons/httpclient-trunk/src/test/org/apache/commons/httpclient/cookie/TestCookieCompatibilitySpec.java =================================================================== --- /home/oleg/src/apache.org/jakarta-commons/httpclient-trunk/src/test/org/apache/commons/httpclient/cookie/TestCookieCompatibilitySpec.java (revision 326187) +++ /home/oleg/src/apache.org/jakarta-commons/httpclient-trunk/src/test/org/apache/commons/httpclient/cookie/TestCookieCompatibilitySpec.java (working copy) @@ -381,6 +381,17 @@ assertEquals("Version", 0, parsed[0].getVersion()); } + public void testParseNoName() throws Exception { + Header header = new Header("Set-Cookie","=stuff; path=/"); + + CookieSpec cookiespec = new CookieSpecBase(); + try { + Cookie[] parsed = cookieParse(cookiespec, "127.0.0.1", 80, "/", false, header); + fail("MalformedCookieException should have been thrown"); + } catch (MalformedCookieException ex) { + // expected + } + } public void testParseNoValue() throws Exception { Header header = new Header("Set-Cookie","cookie-name=");