// Copyright 2012 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CONTENT_PUBLIC_COMMON_RESULT_CODES_H_ #define CONTENT_PUBLIC_COMMON_RESULT_CODES_H_ namespace content { // This file consolidates all the return codes for the browser and renderer // process. The return code is the value that: // a) is returned by main() or winmain(), or // b) specified in the call for ExitProcess() or TerminateProcess(), or // c) the exception value that causes a process to terminate. // // It is advisable to not use negative numbers because the Windows API returns // it as an unsigned long and the exception values have high numbers. For // example EXCEPTION_ACCESS_VIOLATION value is 0xC0000005. // // A Java counterpart will be generated for this enum. // GENERATED_JAVA_ENUM_PACKAGE: org.chromium.content_public.common // // IMPORTANT: This needs to stay in sync with <enum name="CrashExitCodes"> and // <enum name="WindowsExitCode"> in tools/metrics/histograms/enums.xml. Due to // chrome::ResultCode's dependency on the enum values, do not add any new values // here, and mark obsolete values are unused instead of removing them. See // https://crrev.com/c/885090 for context. // TODO(wfh): Break the dependency so it is possible to add more values. enum ResultCode { … }; static_assert …; static_assert …; } // namespace content #endif // CONTENT_PUBLIC_COMMON_RESULT_CODES_H_