<Swing Dev> [11][JDK-8197785]javax.accessibility.AccessibilityBundle will reload the ResourceBundle for every call to toDisplayString

Semyon Sadetsky semyon.sadetsky at oracle.com
Mon Mar 5 17:09:24 UTC 2018


On 03/05/2018 09:00 AM, Semyon Sadetsky wrote:
>
> Hi Krishna,
>
> Is there any reason to use Hashmap. It seems the synchronization is 
> surplus here and its better to use HashMap.
>
I meant Hashtable. Sorry.

--Semyon

> --Semyon
>
> On 03/05/2018 05:39 AM, Krishna Addepalli wrote:
>>
>> Hi Phil
>>
>> Thank you for the review.
>>
>> I have checked the accessibility package, and found that contains is 
>> used with a Vector of AccessibleState objects in the file 
>> AccessibleStateset.
>>
>> However in AccessibilityBundle, the table is used to store a set of 
>> values associated with a particular locale, and going by the context, 
>> I find little reason that using contains is intentional here.
>>
>> And regarding the testcase, the thought of making it headless crossed 
>> my mind while writing it, but I was not sure if just creating a 
>> Button is allowed in headless mode.
>>
>> Fortunately, I modified the testcase enough that, no swing widgets 
>> need to be created, and we can safely run the test in headless mode.
>>
>> Here is the new webrev: 
>> http://cr.openjdk.java.net/~kaddepalli/8197785/webrev01/ 
>> <http://cr.openjdk.java.net/%7Ekaddepalli/8197785/webrev01/>
>>
>> Thanks,
>>
>> Krishna
>>
>> *From:*Philip Race
>> *Sent:* Saturday, March 3, 2018 9:44 PM
>> *To:* Krishna Addepalli <krishna.addepalli at oracle.com>
>> *Cc:* swing-dev at openjdk.java.net
>> *Subject:* Re: <Swing Dev> 
>> [11][JDK-8197785]javax.accessibility.AccessibilityBundle will reload 
>> the ResourceBundle for every call to toDisplayString
>>
>> The fix is straightforward and I've seen this bug pattern before.
>> In fact there may even have been a sweep for uses of contains() to 
>> make sure it was as intended,
>> but if so it wasn't thorough enough.
>> But I'm wondering why the test extends Button and not JButton ?
>> I'm then further wondering if it could then be made headless .. ie no 
>> need to create or display a Frame ?
>>
>> -phil.
>>
>> On 3/3/18, 6:30 AM, Krishna Addepalli wrote:
>>
>>     Hi All,
>>
>>     Please review a simple fix for JDK-8197785:
>>     https://bugs.openjdk.java.net/browse/JDK-8197785
>>
>>     Webrev: http://cr.openjdk.java.net/~kaddepalli/8197785/webrev00/
>>     <http://cr.openjdk.java.net/%7Ekaddepalli/8197785/webrev00/>
>>
>>     As the bug description suggests,
>>     AccessibleBundle.loadResourceBundle has the line “table.contains”
>>     which causes it to reload the resource bundle for each call.
>>
>>     Changing it to “table.containsKey” fixes the problem.
>>
>>     Thanks,
>>
>>     Krishna
>>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/swing-dev/attachments/20180305/4dda35de/attachment.html>


More information about the swing-dev mailing list