# 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 are the only allowable locations - ipc/mscom/ApartmentRegion.h - ipc/mscom/ProcessRuntime.cpp - ipc/mscom/EnsureMTA.cpp # These files are existing locations that must eventually be fixed. - browser/components/migration/nsIEHistoryEnumerator.cpp - browser/components/migration/tests/unit/insertIEHistory/InsertIEHistory.cpp - browser/components/shell/nsWindowsShellService.cpp - dom/media/ThreadPoolCOMListener.cpp - gfx/thebes/gfxWindowsPlatform.cpp - image/DecodePool.cpp - intl/locale/windows/OSPreferences_win.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/main.cpp - uriloader/exthandler/win/nsOSHelperAppService.cpp - widget/windows/AudioSession.cpp - widget/windows/InkCollector.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 - xpcom/threads/TaskController.cpp