Community
Participate
Working Groups
(Occurs in 3.3 M5) In LibraryInstallDelegate.setEnablementContextVariable(String, Object), a refresh is always called, even if the variable has not changed. (There is also no way to determine what the current variable value is, so that this could be avoided.) This causes a StackOverFlowError in my case because I'm responding to changes in the library provider delegate by setting the variable. Also, in refresh(), a property change is fired for available providers, even if the list of providers has not changed. An equality check could be made here, much like two lines later where the selected provider is checked before firing a property change.
Created attachment 191367 [details] Patch v1 This patch adds same value check to setEnablementContextVariable method. Making refresh method not trigger available providers changed event every time would require fairly extensive changes to the refresh method. It is not as simple as adding an equality check at the end. My hope is that this patch is sufficient to unblock Bug 340175, in which case we can refresh method separately if/when necessary.
Tested and released the patch into 3.3 M7 build.