This file is indexed.

/usr/share/xul-ext/unity/bootstrap.js is in xul-ext-unity 3.0.0+14.04.20140416-0ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-

var Cu = Components.utils;
var Ci = Components.interfaces;
var Cc = Components.classes;
var Cr = Components.results;
var Cm = Components.manager;

Cu.import("resource://gre/modules/Services.jsm");

var resource = Services.io.getProtocolHandler("resource").QueryInterface(Ci.nsIResProtocolHandler);
var styleSheetService = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
var ios = Cc["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService);
var wm = Cc["@mozilla.org/appshell/window-mediator;1"].getService(Ci.nsIWindowMediator);

var observer = null;
var consoleService = Cc["@mozilla.org/consoleservice;1"].getService(Components.interfaces.nsIConsoleService);

var windowListener = {
    onOpenWindow: function(aWindow) {
        if (!(aWindow.chromeFlags & Ci.nsIWebBrowserChrome.CHROME_PERSONAL_TOOLBAR)) {
            let domWindow = aWindow.QueryInterface(Ci.nsIInterfaceRequestor).getInterface(Ci.nsIDOMWindowInternal || Ci.nsIDOMWindow);
            domWindow.addEventListener("load", function() {
                domWindow.removeEventListener("load", arguments.callee, false);

                new UnityPrefs(domWindow);
            }, false);
        }
    },

    onCloseWindow: function(aWindow) {},
    onWindowTitleChange: function(aWindow, aTitle) {}
};

function startup(params, reason) {
try {
    Cm.addBootstrappedManifestLocation(params.installPath);

    var uri = ios.newURI("chrome://unity/skin/browser.css", null, null);
    styleSheetService.loadAndRegisterSheet(uri, styleSheetService.USER_SHEET);

    var path = params.installPath.clone();
    path.append('content');
    let alias = Services.io.newFileURI(path);

    resource.setSubstitution("unity", alias);

    Cu.import("resource://unity/observer.js");

    observer = new Observer();
    observer.activate();

    Cu.import("resource://unity/prefs.js");

    wm.addListener(windowListener);
} catch (x) {dump(x);}
}

function shutdown(params, reason) {
    wm.removeListener(windowListener);

    Cu.unload("resource://unity/prefs.js");

    observer.deactivate();
    observer = null;

    Cu.unload("resource://unity/observer.js");

    resource.setSubstitution("unity", null);

    var uri = ios.newURI("chrome://unity/skin/browser.css", null, null);
    styleSheetService.unregisterSheet(uri, sss.USER_SHEET);
    Cm.removeBootstrappedManifestLocation(params.installPath);
}