[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-swing-dev
Subject:    Re: <Swing Dev> RFR JDK-8245785: javax.swing.JTabbedPane cannot be deserialized
From:       Prasanta Sadhukhan <prasanta.sadhukhan () oracle ! com>
Date:       2020-07-15 13:38:52
Message-ID: b0572b7f-bcc3-34c1-3d04-295f4b06870e () oracle ! com
[Download RAW message or body]


On 14-Jul-20 7:41 PM, Prasanta Sadhukhan wrote:
>
> On 13-Jul-20 8:07 PM, Philip Race wrote:
>> The regression test needs some clean up.
>> It seems to be a copy+paste of the submitter's test case
>> including the comment in German which can be removed.
>> Also IMO all the English comments are stating the obvious and don't 
>> need to be there.
>>
>> And use ByteArray based streams not File streams.
>
> OK. Modified webrev
>
> http://cr.openjdk.java.net/~psadhukhan/8245785/webrev.3/
Any further comments on this?
>
> Regards
> Prasanta
>> There are fewer clean up issues if you do that.
>>
>> -phil.
>>
>>
>> On 7/13/20, 7:10 AM, Prasanta Sadhukhan wrote:
>>>
>>> On 13-Jul-20 11:30 AM, Sergey Bylokhov wrote:
>>>> On 11.07.2020 23:05, Prasanta Sadhukhan wrote:
>>>>>
>>>>> It's just a null check so I guess we can keep getTabCount() check 
>>>>> in-place. Also, there are no other fields is missing which is 
>>>>> required.
>>>>
>>>> But as far as I understand this check is not needed, the field 
>>>> initialized to non-null
>>>> value in the constructor. And should not be null after 
>>>> deserialization, otherwise, you
>>>> will need to add the null checks in every place where the field is 
>>>> used.
>>>>
>>> OK. Null check removed 
>>> http://cr.openjdk.java.net/~psadhukhan/8245785/webrev.2/
>>>
>>> Regards
>>> Prasanta
>>>>>
>>>>> Regards
>>>>> Prasanta
>>>>>>
>>>>>>>
>>>>>>> if JTabbedPane has few tabs/pages, all are deserialized. This is 
>>>>>>> also tested in the testcase.
>>>>>>>
>>>>>>> http://cr.openjdk.java.net/~psadhukhan/8245785/webrev.1/
>>>>>>>
>>>>>>> Regards
>>>>>>> Prasanta
>>>>>>> On 09-Jul-20 3:28 PM, Sergey Bylokhov wrote:
>>>>>>>> Hi, Prasanta.
>>>>>>>>
>>>>>>>> Why the "pages" object is not instantiated when deserialized? 
>>>>>>>> What will happen if the JTabbedPane
>>>>>>>> will have a few(more than zero) pages before deserialization, 
>>>>>>>> will all pages be serialized/deserialized in this case?
>>>>>>>>
>>>>>>>> On 09.07.2020 01:14, Prasanta Sadhukhan wrote:
>>>>>>>>> Hi All,
>>>>>>>>>
>>>>>>>>> Please review a fix for an issue where deserializing a 
>>>>>>>>> serialized JTabbedPane-object results in NullPointerException.
>>>>>>>>>
>>>>>>>>> The NPE is result of tabbed "pages" object not being 
>>>>>>>>> instantiated when deserialized.
>>>>>>>>>
>>>>>>>>> Proposed fix is to add a null check for "pages" object.
>>>>>>>>>
>>>>>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8245785
>>>>>>>>>
>>>>>>>>> webrev: http://cr.openjdk.java.net/~psadhukhan/8245785/webrev.0/
>>>>>>>>>
>>>>>>>>> Regards
>>>>>>>>> Prasanta
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic