#772923 "Update Now" link on about:addons -> Plugins points to bad URL

#772923#5
Date:
2014-12-12 08:54:54 UTC
From:
To:
A message is shown to me today in the "Plugins" tab on about:addons,
saying "Shockwave Flash is known to be vulnerable and should be
updated.  Update Now". By clicking "Update Now" I'm sent to
https://addons.mozilla.org/en-US/iceweasel/blocked/p796 , which does
not exist. The expected URL is
https://addons.mozilla.org/en-US/firefox/blocked/p796 .

#772923#10
Date:
2015-02-20 00:22:34 UTC
From:
To:
This happens on stable too, except I get
<https://addons.mozilla.org/en-US/firefox/iceweasel/blocked/p796>, not
reporter's <https://addons.mozilla.org/en-US/iceweasel/blocked/p796>,
when we should both be getting the content of
<https://addons.mozilla.org/en-US/firefox/blocked/p796>.

To summarize: I'm getting "firefox/iceweasel", he's getting
"iceweasel", and the actual working URL has "firefox".

(Now if only the actual page was more informative; the best part was
the bugzilla link...)

======

... and then I did something that made iceweasel notice I'd updated Flash,
so I realized this wasn't terribly easy to reproduce.

Thankfully, there is some information at
<http://benjamin.smedbergs.us/tests/ctptests/#single-outdated> that
should help; the steps are as follows:

1. set the pref "extensions.blocklist.url" to
<http://benjamin.smedbergs.us/tests/ctptests/block-java-outdated.xml>
(without the brackets)

2. evaluate the following JS in chrome context (supposedly
Ctrl-Shift-J will help):

  Components.classes["@mozilla.org/extensions/blocklist;1"].getService(Components.interfaces.nsITimerCallback).notify(null);

3. Now, install a Java plugin, e.g. icedtea-6-plugin or icedtea-7-plugin.

4. Then, go to <about:addons> and switch to the Plugins tab.

Your Java plugin should be marked as out-of-date, with an "Update Now"
link to the right; that link is the one you want to test, and I get:
<https://addons.mozilla.org/en-US/firefox/iceweasel/blocked/p-bug880735-test-outdated>
when I should get:
<https://addons.mozilla.org/en-US/firefox/blocked/p-bug880735-test-outdated>.

Unfortunately, with this test case, neither URL actually works.

I suspect that you will find that the preference
"extensions.blocklist.itemURL" is core to this issue; it's default value is
"https://addons.mozilla.org/%LOCALE%/%APP%/blocked/%blockID%".