Chris,

Looks good for me.

Thank you for doing it.

-Dmitry

On 2013-06-28 13:36, Chris Hegarty wrote:
> The latest webrev is
>   http://cr.openjdk.java.net/~jzavgren/8015799/webrev.03/
> 
> We end up with:
> 
>  private String filterHeaderField(String name, String value) {
>         if (value == null)
>             return null;
> 
>         if (SET_COOKIE.equalsIgnoreCase(name) ||
>             SET_COOKIE2.equalsIgnoreCase(name)) {
> 
>             // Filtering only if there is a cookie handler. [Assumption:
> the
>             // cookie handler will store/retrieve the HttpOnly cookies]
>             if (cookieHandler == null || value.length() == 0)
>                 return value;
>             ....
> 
> So return value is not changed. BTW. I agree with your comments.
> 
> -Chris.
> 
> 
> On 06/27/2013 06:13 PM, Dmitry Samersoff wrote:
>> Chris,
>>
>> 1. I'm not sure it's a correct to return null rather then empty value,
>>     but you understand better what is happening, so I'm leaving it up
>>     to you.
>>
>> 2. It might be better to move
>>
>>    2805         if (value == null)
>>    2806             return null;
>>
>> under if(SET_COOKIE ...), i.e. to ll. 2810
>>
>> it doesn't change anything in practice - the methods continue returning
>> null for all cases where value is null -  but makes code better
>> understandable.
>>
>> -Dmitry
>>
>>
>> On 2013-06-27 00:49, Chris Hegarty wrote:
>>> To link this email thread, both in the archives, and for others. The
>>> call for review on this bug started with:
>>>    http://mail.openjdk.java.net/pipermail/net-dev/2013-June/006607.html
>>>
>>> On 06/26/2013 08:22 PM, Kurchi Hazra wrote:
>>>>
>>>> On 6/26/2013 12:17 PM, Kurchi Hazra wrote:
>>>>> Hi John,
>>>>>
>>>>>    Why not change lines 2810-2811 to:
>>>>>      if (value == null || value.length() == 0)
>>>>>          return value;
>>>> I meant return null. For other cookie-headers too, is there any reason
>>>> for us not returning null if the length of value is 0?
>>>
>>> In the first webrev John had made this change, but I asked him to revert
>>> it and only change the Set-Cookie(2) headers.
>>>
>>> "Since all header retrieval passes through filterHeaderField, in one way
>>> or another, I'm a little concerned about changing this. Also, as the
>>> only issue we know of is with Set-Cookie(2), maybe you could add the
>>> empty string check to these headers only? ( that is to say, move the
>>> 'value.length() == 0' check into the ' if
>>> (SET_COOKIE.equalsIgnoreCase(name)..... '  "
>>>
>>> The difference is, currently if a header value is non-null and has a
>>> length of 0 ( i.e. empty string ), then empty string is returned. With
>>> the original change then null is returned.
>>>
>>> We have been bitten by subtle changes in this area before. Returning
>>> null from such an API, URLConnection.getHeaderField(s), for cases where
>>> it did not return null before may lead to NPE's in some applications.
>>>
>>> -Chris.
>>>
>>>>>
>>>>> Also, lots of formatting issue in the test, especially in
>>>>> TestCookieHandler, try-catch block indentation is off in line 54.
>>>>>   Its also best to stop the server in a finally clause at line 58.
>>>>> Alternatively, I also liked Andreas' use of autocloseable in his test
>>>>> for 6563286. See [1].
>>>
>>> Yes, please.
>>>
>>> -Chris.
>>>
>>>>>
>>>>> - Kurchi
>>>>>
>>>>> [1]
>>>>> http://cr.openjdk.java.net/~arieber/6563286/webrev.00/test/sun/net/www/http/HttpURLConnection/MalformedFollowRedirect.java.html
>>>>>
>>>>>
>>>>> <http://cr.openjdk.java.net/%7Earieber/6563286/webrev.00/test/sun/net/www/http/HttpURLConnection/MalformedFollowRedirect.java.html>
>>>>>
>>>>>
>>>>>
>>>>> On 6/26/2013 10:54 AM, John Zavgren wrote:
>>>>>> Please consider the following changes to the Java cookie code.
>>>>>>
>>>>>> http://cr.openjdk.java.net/~jzavgren/8015799/webrev.02/
>>>>>> <http://cr.openjdk.java.net/%7Ejzavgren/8015799/webrev.02/>
>>>>>>
>>>>>> The problem I fixed occurs when a server returns an array of cookies
>>>>>> that contains a null cookie.
>>>>>>
>>>>>> Thanks
>>>>>> John
>>>>>> -- 
>>>>>> John Zavgren
>>>>>> john.zavg...@oracle.com
>>>>>> 603-821-0904
>>>>>> US-Burlington-MA
>>>>>
>>>>
>>>> -- 
>>>> -Kurchi
>>>>
>>
>>


-- 
Dmitry Samersoff
Oracle Java development team, Saint Petersburg, Russia
* I would love to change the world, but they won't give me the sources.

Reply via email to