EVALUATION
This problem was introduced in 6u10 b07 via the fix for 6533331.
There's an extra lstrcat(szMozDir, "plugins") in the IsDefaultInBrowser() function of RegCommon.cpp. The extra lstrcat makes the szMozDir incorrect and resulting in the IsNPFileVersionMatch() always returns FALSE.
When the user clicks on the "Ok" button in the Java Control Panel even though without making any browsers related changes, the code goes through the Java_com_sun_deploy_panel_PlatformSpecificUtils_applyBrowserSettings function of RegJControl.cpp. If IsNPFileVersionMatch() always returns FALSE, the following check will always be TRUE when the user opens Java Control Panel without making any changes:
if (isMozillaDefault != IsDefaultInBrowser(PLUGIN_MAJOR_VERSION, PLUGIN_MINOR_VERSION, PLUGIN_MICRO_VERSION, PLUGIN_UPDATE_VERSION, MOZILLA))
As a result, the bChange flag is always set to TRUE. By default, the following flags are also set to TRUE: bIExplorerResult, bNetscape6Result, bMozillaResult, bFirefoxResult. So further down in the same function, the "showSuccessDialog" java method, which displays the "Browser settings changed" dialog, will always be called.
|