gecko-dev/toolkit/components/crashes/nsICrashService.idl
David Parks 6b176f5987 Bug 1682030 - Remove NPAPI plugin process from GeckoChildProcess r=jld,gsvelto
Eliminates the NPAPI plugin process type from the GeckoChildProcess enum as part of NPAPI removal.  In order to avoid altering enum values when updating the process list, the GECKO_PROCESS_TYPE macro has been updated to include the desired enum value.  We want to resist altering the values as they need to be consistent e.g. in telemetry reports.

We also remove plugins from adjacent spots that need to maintain consistency with GeckoChildProcess -- most notably the nsICrashService.

Differential Revision: https://phabricator.services.mozilla.com/D108689
2021-04-06 19:28:20 +00:00

39 lines
1.3 KiB
Text

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "nsISupports.idl"
[scriptable, uuid(70bd93ff-88fa-4600-8af8-57c8d002dbac)]
interface nsICrashService : nsISupports
{
/**
* Records the occurrence of a crash.
*
* @param processType
* One of the PROCESS_TYPE constants defined below.
* @param crashType
* One of the CRASH_TYPE constants defined below.
* @param id
* Crash ID. Likely a UUID.
*
* @return A promise that resolves after the crash has been stored
*/
Promise addCrash(in long processType, in long crashType, in AString id);
// This list should be kept in sync with GeckoProcessTypes.h
const long PROCESS_TYPE_MAIN = 0;
const long PROCESS_TYPE_CONTENT = 2;
const long PROCESS_TYPE_IPDLUNITTEST = 3;
const long PROCESS_TYPE_GMPLUGIN = 4;
const long PROCESS_TYPE_GPU = 5;
const long PROCESS_TYPE_VR = 6;
const long PROCESS_TYPE_RDD = 7;
const long PROCESS_TYPE_SOCKET = 8;
const long PROCESS_TYPE_SANDBOX_BROKER = 9;
const long PROCESS_TYPE_FORKSERVER = 10;
// New process types should be added at the end of the above list.
const long CRASH_TYPE_CRASH = 0;
const long CRASH_TYPE_HANG = 1;
};