<Swing Dev> RFR JDK-8245785: javax.swing.JTabbedPane cannot be deserialized
Sergey Bylokhov
Sergey.Bylokhov at oracle.com
Mon Jul 13 06:00:05 UTC 2020
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.
>
> 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
>>>>
>>>>
>>
>>
--
Best regards, Sergey.
More information about the swing-dev
mailing list