<Swing Dev> RFR JDK-8245785: javax.swing.JTabbedPane cannot be deserialized
Prasanta Sadhukhan
prasanta.sadhukhan at oracle.com
Mon Jul 13 14:10:40 UTC 2020
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
>>>>>
>>>>>
>>>
>>>
>
>
More information about the swing-dev
mailing list