win32ss / supermium

Chromium fork for Windows XP/2003 and up
https://win32subsystem.live/supermium/
BSD 3-Clause "New" or "Revised" License
2.47k stars 85 forks source link

Make Supermium build without Crashpad/Breakpad #915

Closed ellegance closed 1 month ago

ellegance commented 2 months ago

Is your feature request related to a problem? Please describe. Every time Supermium started, it launches extra process of type crashpad-handler without any possibility to disable it. While it might be useful for someone, for majority of users it is not needed, disabling Crashpad will save RAM, threads and disk space used for hundreds of useless reports

Describe the solution you'd like Make Supermium build without Crashpad

RamonUnch commented 2 months ago

Is not --disable-breakpad enough for you?

Vangelis66 commented 2 months ago

Is not --disable-breakpad enough for you?

This cmdline flag DOES NOT prevent Supermium from spawning the chrome.exe --type=crashpad-handler processes inside Windows Task Manager

https://codereview.chromium.org/1416133003

Crashpad Windows: Use the Crashpad client instead of Breakpad on Windows

Crashpad is always compiled into chrome and its handler is always
enabled. It only uploads in Official builds.

On Windows, the crash handler is chrome.exe run with a
--crashpad-handler argument. This is due to concern about
incompatibilities of shipping an additional new different binary for AV,
firewalls, etc

https://chromium.googlesource.com/chromium/src/+/a8151cabb1331736da3b76effbf2b153b76ae78c/components/crash/content/app/crashpad.h

// On Windows, use InitializeCrashpadWithEmbeddedHandler() when crashpad_handler
// is embedded into a binary that can be launched with --type=crashpad-handler.

I have tested this myself, i.e. I launched Supermium with --disable-breakpad, but still inside WTM:

TM

Also, please read this and this; even with --disable-crashpad-for-testing, I still get at least one crashpad-handler process spawned by Supermium :disappointed: ...

win32ss commented 2 months ago

Breakpad is the old exception handler for Chromium. It was replaced with Crashpad but Crashpad cannot be fully disabled in its current form (by the user).

But I can definitely disable the creation of Crashpad processes. Windows will handle the exceptions/errors on its own and Dr Watson (on XP) or WER (on Vista and up) can help provide the dumps as needed. Exception handling will not be as graceful, but it may better expose issues.

Zero3K commented 2 months ago

That would be nice.