layout/base/tests/enableTestPlugin.js

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 // this automatically sets the test plugin to be enabled (not e.g. click-to-play)
     2 // and resets this afterwards
     4 (function() {
     5   function getTestPlugin(aPluginName) {
     6     var ph = SpecialPowers.Cc["@mozilla.org/plugin/host;1"]
     7                           .getService(SpecialPowers.Ci.nsIPluginHost);
     8     var tags = ph.getPluginTags();
     9     for (var tag of tags) {
    10       if (tag.name == aPluginName) {
    11        return tag;
    12       }
    13     }
    15     ok(false, "Could not find plugin tag with plugin name '" + name + "'");
    16     return null;
    17   }
    19   var plugin = getTestPlugin("Test Plug-in");
    20   var oldEnabledState = plugin.enabledState;
    21   plugin.enabledState = SpecialPowers.Ci.nsIPluginTag.STATE_ENABLED;
    22   SimpleTest.registerCleanupFunction(function() {
    23     getTestPlugin("Test Plug-in").enabledState = oldEnabledState;
    24   });
    25 })();

mercurial