1# This Source Code Form is subject to the terms of the Mozilla Public 2# License, v. 2.0. If a copy of the MPL was not distributed with this 3# file, You can obtain one at http://mozilla.org/MPL/2.0/. 4--- 5forbid-mscom-init: 6 description: >- 7 New calls to CoInitialize, CoInitializeEx, OleInitialize, RoInitialize, 8 CoUninitialize, OleUninitialize, or RoUninitialize are forbidden. If you 9 have questions, please consult a peer of the IPC: MSCOM module. 10 level: error 11 include: ['.'] 12 type: regex 13 payload: ([CR]o|Ole)(Uni|I)nitialize(Ex)? 14 ignore-case: false 15 extensions: 16 - h 17 - c 18 - cc 19 - cpp 20 exclude: 21 # These files are the only allowable locations 22 - ipc/mscom/ApartmentRegion.h 23 - ipc/mscom/COMWrappers.cpp 24 - ipc/mscom/COMWrappers.h 25 - ipc/mscom/ProcessRuntime.cpp 26 - ipc/mscom/EnsureMTA.cpp 27 # These files are existing locations that must eventually be fixed. 28 - browser/components/migration/nsIEHistoryEnumerator.cpp 29 - browser/components/migration/tests/unit/insertIEHistory/InsertIEHistory.cpp 30 - browser/components/shell/nsWindowsShellService.cpp 31 - gfx/thebes/gfxWindowsPlatform.cpp 32 - image/DecodePool.cpp 33 - intl/locale/windows/OSPreferences_win.cpp 34 - ipc/glue/BrowserProcessSubThread.cpp 35 - netwerk/system/win32/nsNotifyAddrListener.cpp 36 - toolkit/components/parentalcontrols/nsParentalControlsServiceWin.cpp 37 - toolkit/crashreporter/google-breakpad/src/common/windows/pdb_source_line_writer.cc 38 - toolkit/mozapps/defaultagent/main.cpp 39 - uriloader/exthandler/win/nsOSHelperAppService.cpp 40 - widget/windows/AudioSession.cpp 41 - widget/windows/InkCollector.cpp 42 - widget/windows/TaskbarPreview.cpp 43 - widget/windows/WinTaskbar.cpp 44 - widget/windows/nsAppShell.cpp 45 - widget/windows/nsWindow.cpp 46 - widget/windows/nsWindow.h 47 - widget/windows/tests/TestUriValidation.cpp 48 - xpcom/io/nsLocalFileWin.cpp 49