Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 *
3 * This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7 #include "mozilla/ModuleUtils.h"
8 #include "nsServiceManagerUtils.h"
10 #include "nsIconProtocolHandler.h"
11 #include "nsIconURI.h"
12 #include "nsIconChannel.h"
14 // objects that just require generic constructors
15 /******************************************************************************
16 * Protocol CIDs
17 */
18 #define NS_ICONPROTOCOL_CID { 0xd0f9db12, 0x249c, 0x11d5, { 0x99, 0x5, 0x0, 0x10, 0x83, 0x1, 0xe, 0x9b } }
20 NS_GENERIC_FACTORY_CONSTRUCTOR(nsIconProtocolHandler)
22 NS_DEFINE_NAMED_CID(NS_ICONPROTOCOL_CID);
24 static const mozilla::Module::CIDEntry kIconCIDs[] = {
25 { &kNS_ICONPROTOCOL_CID, false, nullptr, nsIconProtocolHandlerConstructor },
26 { nullptr }
27 };
29 static const mozilla::Module::ContractIDEntry kIconContracts[] = {
30 { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "moz-icon", &kNS_ICONPROTOCOL_CID },
31 { nullptr }
32 };
34 static const mozilla::Module::CategoryEntry kIconCategories[] = {
35 { nullptr }
36 };
38 static void
39 IconDecoderModuleDtor()
40 {
41 #if (MOZ_WIDGET_GTK == 2)
42 nsIconChannel::Shutdown();
43 #endif
44 }
46 static const mozilla::Module kIconModule = {
47 mozilla::Module::kVersion,
48 kIconCIDs,
49 kIconContracts,
50 kIconCategories,
51 nullptr,
52 nullptr,
53 IconDecoderModuleDtor
54 };
56 NSMODULE_DEFN(nsIconDecoderModule) = &kIconModule;