Bug 464153 - External web browser parameters are not updated after change on preference page
Summary: External web browser parameters are not updated after change on preference page
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 4.5   Edit
Hardware: PC Windows 7
: P3 normal (vote)
Target Milestone: 4.6 M6   Edit
Assignee: Markus Keller CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 238452 247731
Blocks:
  Show dependency tree
 
Reported: 2015-04-08 08:48 EDT by Markus Keller CLA
Modified: 2016-02-08 08:34 EST (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Markus Keller CLA 2015-04-08 08:48:26 EDT
External web browser parameters are not updated after a change on the preference page. To test new parameters, a user would always have to restart Eclipse.

Steps:
- Preferences > Web Browser: Select Firefox as external web browser and set parameters to "www.google.com"
- double-click a *.html file
=> new browser windows opens with two tabs (Google, the opened file)

- now open prefs again and change the parameter to www.bing.com
- double-click a *.html file
=> new browser windows opens with two tabs (Google, the opened file)
=> the changed parameter is not used until after a restart
Comment 1 Brian de Alwis CLA 2016-02-05 13:56:01 EST
I can't reproduce this.  It may have been fixed by bug 486288, though I'm not sure how.  Marking as WORKSFORME.
Comment 2 Markus Keller CLA 2016-02-08 08:34:40 EST
The steps still reproduce the problem.

It's hard to find the actual issue in the obfuscated code, so I basically had to step through. The problem is not in the preference page but in org.eclipse.ui.internal.browser.browsers.MozillaFactory, which caches outdated state. A similar issue had already been hacked around in bug 247731 and soon after broken again in bug 238452.

Fixed with http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=6e6a9cc2133581331fc50ab64b66748807ba78d5