Unlike in Firefox and Opera, a plugin's entry in navigator.plugins and its corresponding mimetype entries in navigator.mimeTypes are set even if plugins are disabled. Internet Explorer is of no concern because of its ActiveX plugin architecture; the aforementioned collections are always empty. Firefox (3.1b1), Flash enabled: --------------------------------------- navigator.plugins['Shockwave Flash'] -> Plugin navigator.mimeTypes['application/x-shockwave-flash'] -> MimeType navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin -> Plugin Firefox (3.1b1), Flash disabled: --------------------------------------- navigator.plugins['Shockwave Flash'] -> undefined navigator.mimeTypes['application/x-shockwave-flash'] -> undefined navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin -> throws TypeError Opera (9.62), Flash enabled: --------------------------------------- navigator.plugins['Shockwave Flash'] -> Plugin navigator.mimeTypes['application/x-shockwave-flash'] -> MimeType navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin -> Plugin Opera (9.62), Flash disabled: --------------------------------------- navigator.plugins['Shockwave Flash'] -> undefined navigator.mimeTypes['application/x-shockwave-flash'] -> undefined navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin -> throws TypeError WebKit r38699, Flash enabled: --------------------------------------- navigator.plugins['Shockwave Flash'] -> Plugin navigator.mimeTypes['application/x-shockwave-flash'] -> MimeType navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin -> Plugin INCONSISTENT: WebKit r38699, Flash disabled: --------------------------------------- navigator.plugins['Shockwave Flash'] -> Plugin navigator.mimeTypes['application/x-shockwave-flash'] -> MimeType navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin -> null
<rdar://problem/6396442>
*** Bug 23329 has been marked as a duplicate of this bug. ***
Created attachment 26758 [details] Patch to fix the problem Do not return pluginData if plugins are disabled.
Created attachment 26790 [details] patch to fix the problem Updated patch, with entry to ChangeLog.
Created attachment 26792 [details] updated patch, changelog addressing Simon's comment: safeguard some places where pluginData() might return NULL.
Comment on attachment 26792 [details] updated patch, changelog r=me
Landed in r39969.