Name Description Size
AssembleCmdLine.h Find out how large the command line buffer should be. 3629
AutoSQLiteLifetime.cpp 5665
AutoSQLiteLifetime.h 666
Bootstrap.cpp 3891
Bootstrap.h This file represents the only external interface exposed from libxul. It is used by the various stub binaries (nsBrowserApp, xpcshell, plugin-container) to initialize XPCOM and start their main loop. 4985
CmdLineAndEnvUtils.cpp 1184
CmdLineAndEnvUtils.h Check for a commandline flag. If the flag takes a parameter, the parameter is returned in aParam. Flags may be in the form -arg or --arg (or /arg on win32). @param aArgc The argc value. @param aArgv The original argv. @param aArg the parameter to check. Must be lowercase. @param aParam if non-null, the -arg <data> will be stored in this pointer. This is *not* allocated, but rather a pointer to the argv data. @param aFlags Flags @see CheckArgFlag 20945
components.conf 2718
CreateAppData.cpp 2778
detect_win32k_conflicts
detect_win32k_conflicts.h 650
DllPrefetchExperimentRegistryInfo.cpp 2997
DllPrefetchExperimentRegistryInfo.h This is a temporary file in order to conduct an experiment on the impact of startup time on retention (see Bug 1640087). This was generally adapted from LauncherRegistryInfo.h 1445
dllservices
GeckoArgs.cpp 4960
GeckoArgs.h 8948
glxtest
IOSBootstrap.h clang-format off 1195
IOSBootstrap.mm clang-format off 6626
LauncherRegistryInfo.cpp Reserved 21231
LauncherRegistryInfo.h We use std::wstring here because this code must be usable within both the launcher process and Gecko itself. 3424
MacApplicationDelegate.h 681
MacApplicationDelegate.mm 13518
MacAutoreleasePool.h 722
MacAutoreleasePool.mm 562
MacLaunchHelper.h Passing an aPid parameter to LaunchChildMac will wait for the launched process to terminate. When the process terminates, aPid will be set to the pid of the terminated process to confirm that it executed successfully. 1142
MacLaunchHelper.mm 7430
MacRunFromDmgUtils.h Returns true if the app is running from the read-only filesystem of a mounted .dmg. Returns false if not, or if we fail to determine whether it is. 1135
MacRunFromDmgUtils.mm Opens a dialog to ask the user whether the existing app in the Applications folder should be launched, or if the user wants to proceed with launching the app from the .dmg. Returns true if the dialog is successfully opened and the user chooses to launch the app from the Applications folder, otherwise returns false. 16327
MacUtils.h 482
MacUtils.mm Helper to launch macOS tasks via NSTask and wait for the launched task to terminate. 925
metrics.yaml 2431
moz.build 7361
MultiInstanceLock.cpp 10491
MultiInstanceLock.h nameToken should be a string very briefly naming the lock you are creating creating, and it should be unique except for across multiple instances of the same application. The vendor name is included in the generated path, so it doesn't need to be present in your supplied name. Try to keep this name sort of short, ideally under about 64 characters, because creating the lock will fail if the final path string (the token + the path hash + the vendor name) is longer than the platform's maximum path and/or path component length. installPath should be the path to the directory containing the application, which will be used to form a path specific to that installation. Returns MULTI_INSTANCE_LOCK_HANDLE_ERROR upon failure, or a handle which can later be passed to the other functions declared here upon success. 5246
nsAppRunner.cpp 204889
nsAppRunner.h Compares the provided compatibility versions. Returns 0 if they match, < 0 if the new version is considered an upgrade from the old version and > 0 if the new version is considered a downgrade from the old version. 5134
nsCommandLineServiceMac.h 558
nsCommandLineServiceMac.mm 4753
nsConsoleWriter.cpp 2026
nsEmbedFunctions.cpp 25076
nsGDKErrorHandler.cpp See https://bugzilla.gnome.org/show_bug.cgi?id=629608#c8 GDK implements X11 error traps to ignore X11 errors. Unfortunatelly We don't know which X11 events can be ignored so we have to utilize the Gdk error handler to avoid false alarms in Gtk3. 3437
nsGDKErrorHandler.h 347
nsINativeAppSupport.idl nsINativeAppSupport This "pseudo" (in the XPCOM sense) interface provides for platform-specific general application support Due to the nature of the beast, this interface is not a full-blown XPCOM component. The primary reason is that objects that implement this interface generally must be operational *before* XPCOM (or any of the rest of Mozilla) are initialized. As a result, this interface is instantiated by somewhat unconventional means. To create the implementor of this interface, you call the function NS_CreateNativeAppSupport. This is done in the startup code in nsAppRunner.cpp The interface provides these functions: start - You call this to inform the native app support that the application is starting. In addition, it serves as a query as to whether the application should continue to run. If the returned boolean result is PR_FALSE, then the application should exit without further processing. In such cases, the returned nsresult indicates whether the reason to exit is due to an error or not. Win32 Note: In the case of starting a second instance of this executable, this function will return PR_FALSE and nsresult==NS_OK. This means that the command line arguments have been successfully passed to the instance of the application acting as a remote server. quit - Informs the native app support that the application is stopping. The app support should disable any functionality enabled by start. onLastWindowClosing - Called when the last window is closed. Used as a "soft" shutdown, passwords are flushed. 2404
nsIWinAppHelper.idl A scriptable interface used on Windows only to do some work from a special process that gets created with elevated privileges. @status UNSTABLE - This interface is not frozen and will probably change in future releases. 644
nsIXREDirProvider.idl Only intended to be used from xpcshell tests. Allows setting the local and normal profile data directories. Calling this after something using them has started up will cause problems. 735
nsNativeAppSupportBase.cpp 849
nsNativeAppSupportBase.h 795
nsNativeAppSupportCocoa.mm 5169
nsNativeAppSupportDefault.cpp 486
nsNativeAppSupportUnix.cpp MOZ_X11 22278
nsNativeAppSupportWin.cpp This code attaches the process to the appropriate console. 2019
nsNativeAppSupportWin.h This file has *public* stuff needed for the Win32 implementation of the nsINativeAppSupport interface. It has to be broken out into a separate file in order to ensure that the generated .h file can be used in a Win32 .rc file. See /mozilla/xpfe/bootstrap/splash.rc. This file, and the generated .h, are only needed on Win32 platforms. 1099
nsSigHandlers.cpp This module is supposed to abstract signal handling away from the other platforms that do not support it. 14679
nsSigHandlers.h x87 FPU Control Word: 0 -> IM Invalid Operation 1 -> DM Denormalized Operand 2 -> ZM Zero Divide 3 -> OM Overflow 4 -> UM Underflow 5 -> PM Precision 1125
nsUpdateDriver.cpp Get the path to the installation directory. For Mac OS X this will be the bundle directory. @param appDir the application directory file object @param installDirPath the path to the installation directory 35642
nsUpdateDriver.h This function processes any available updates. As part of that process, it may exit the current process and relaunch it at a later time. Two directories are passed to this function: greDir (where the actual binary resides) and appDir (which contains application.ini for XULRunner apps). If this is not a XULRunner app then appDir is identical to greDir. The argc and argv passed to this function should be what is needed to relaunch the current process. The appVersion param passed to this function is the current application's version and is used to determine if an update's version is older than the current application version. If you want the update to be processed without restarting, set the restart parameter to false. This function does not modify appDir. 4363
nsUpdateMutex.cpp 2154
nsUpdateMutex.h A primitive object type suitable for acquiring the update mutex. It is composed of two parts: - a nsProfileLock taken on the update directory, to ensure that if two instances running from the same application path try to acquire the update mutex simultaneously, only one of them succeeds; - a StaticMutex, to ensure that even within the same instance of the application, it is never possible to successfully acquire two UpdateMutexImpl objects simultaneously. While the second part is not strictly required, it makes reasoning about these objects easier, and it helps us simulate an acquisition coming from another instance in tests. Contrary to a nsIUpdateMutex object, an UpdateMutexImpl object does not keep track of whether it is currently locked or unlocked. Therefore, it is the responsibility of the caller to guarantee the following: - a call to Unlock() must only occur after a matching successful call to TryLock(); - no second call to TryLock() should ever occur after a successful first call to TryLock(), unless a call to Unlock() occured in the middle. 2647
nsUpdateSyncManager.cpp = nullptr 3893
nsUpdateSyncManager.h 2005
nsWindowsRestart.cpp Convert UTF8 to UTF16 without using the normal XPCOM goop, which we can't link to updater.exe. 6272
nsWindowsWMain.cpp MingW currently does not implement a wide version of the startup routines. Workaround is to implement something like it ourselves. See bug 411826 5030
nsX11ErrorHandler.cpp 4920
nsX11ErrorHandler.h InstallX11ErrorHandler is not suitable for processes running with GTK3 as GDK3 will replace the handler. This is still used for the plugin process, which runs with GTK2. 737
nsXREDirProvider.cpp 42224
nsXREDirProvider.h make sure you clone it, if you need to do stuff to it 5384
platform.ini 482
PolicyChecks.h 1909
ProfileReset.cpp Spin up a thread to backup the old profile's main directory and delete the profile's local directory. Once complete have the profile service remove the old profile and if necessary make the new profile the default. 5423
ProfileReset.h Copy a root profile to a backup folder before deleting it. Then delete the local profile dir. 3025
SafeMode.h 2624
test
UIKitDirProvider.h 493
UIKitDirProvider.mm 729
updaterfileutils_osx.h 421
updaterfileutils_osx.mm 1609
WinTokenUtils.cpp 2586
WinTokenUtils.h Windows UAC can be disabled via the registry. This checks if the user has Administrator privileges and UAC has been disabled. @return `Ok(true)` when the current process has Administrator privileges *and* UAC has been disabled, otherwise `Ok(false)` or `Err(WindowsError)`. 1788