From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- tools/lint/mscom-init.yml | 74 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 tools/lint/mscom-init.yml (limited to 'tools/lint/mscom-init.yml') diff --git a/tools/lint/mscom-init.yml b/tools/lint/mscom-init.yml new file mode 100644 index 0000000000..d818aa4ab9 --- /dev/null +++ b/tools/lint/mscom-init.yml @@ -0,0 +1,74 @@ +# 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/. +--- +forbid-mscom-init: + description: >- + New calls to CoInitialize, CoInitializeEx, OleInitialize, RoInitialize, + CoUninitialize, OleUninitialize, or RoUninitialize are forbidden. If you + have questions, please consult a peer of the IPC: MSCOM module. + level: error + include: ['.'] + type: regex + payload: ([CR]o|Ole)(Uni|I)nitialize(Ex)? + ignore-case: false + extensions: + - h + - c + - cc + - cpp + exclude: + # These files contain utilities for using COM more safely. + - ipc/mscom/ApartmentRegion.h + - ipc/mscom/COMWrappers.cpp + - ipc/mscom/COMWrappers.h + - ipc/mscom/EnsureMTA.cpp + # These files have been reviewed by MSCOM peers, and the use of + # CoInitialize within them has been confirmed to be necessary and + # proper. + - ipc/mscom/ProcessRuntime.cpp + # These files are existing legacy uses of CoInitialize (and so forth) + # that must eventually be fixed -- probably by converting them to use + # ApartmentRegion and moving them to _that_ lint's exception-list. + - browser/components/migration/nsIEHistoryEnumerator.cpp + - browser/components/migration/tests/unit/insertIEHistory/InsertIEHistory.cpp + - browser/components/shell/nsWindowsShellService.cpp + - gfx/thebes/gfxWindowsPlatform.cpp + - image/DecodePool.cpp + - ipc/glue/BrowserProcessSubThread.cpp + - netwerk/system/win32/nsNotifyAddrListener.cpp + - toolkit/components/parentalcontrols/nsParentalControlsServiceWin.cpp + - toolkit/crashreporter/google-breakpad/src/common/windows/pdb_source_line_writer.cc + - toolkit/mozapps/defaultagent/proxy/main.cpp + - uriloader/exthandler/win/nsOSHelperAppService.cpp + - widget/windows/TaskbarPreview.cpp + - widget/windows/WinTaskbar.cpp + - widget/windows/nsAppShell.cpp + - widget/windows/nsWindow.cpp + - widget/windows/nsWindow.h + - widget/windows/tests/TestUriValidation.cpp + - xpcom/io/nsLocalFileWin.cpp + +forbid-apartment-region: + description: >- + New uses of ApartmentRegion, ApartmentRegionT, MTARegion, or STARegion + require approval by a peer of the IPC: MSCOM module. + level: error + include: ['.'] + type: regex + payload: ApartmentRegion(T)?|[MS]TARegion + ignore-case: false + extensions: + - h + - c + - cc + - cpp + exclude: + # ApartmentRegion's definition. + - ipc/mscom/ApartmentRegion.h + # These files have been reviewed and approved by MSCOM peers. + - ipc/mscom/ProcessRuntime.cpp + - ipc/mscom/ProcessRuntime.h + - widget/windows/filedialog/WinFileDialogCommands.cpp + # These files are existing uses that must eventually be fixed. + - widget/windows/LegacyJumpListBuilder.cpp -- cgit v1.2.3