Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(9175)

Unified Diff: chrome_elf/chrome_elf_main.cc

Issue 2422643002: Windows install_static refactor. (Closed)
Patch Set: sync to position 431863 Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome_elf/chrome_elf_main.cc
diff --git a/chrome_elf/chrome_elf_main.cc b/chrome_elf/chrome_elf_main.cc
index 95e0a415c41cb988fb256fe91ce2a12e9567d437..a0bf20a3e53f494ce8f15b2dbcd2bc6fbefc2521 100644
--- a/chrome_elf/chrome_elf_main.cc
+++ b/chrome_elf/chrome_elf_main.cc
@@ -7,7 +7,9 @@
#include <assert.h>
#include <windows.h>
+#include "chrome/install_static/install_details.h"
#include "chrome/install_static/install_util.h"
+#include "chrome/install_static/product_install_details.h"
#include "chrome_elf/blacklist/blacklist.h"
#include "chrome_elf/crash/crash_helper.h"
@@ -26,8 +28,17 @@ void SignalChromeElf() {
blacklist::ResetBeacon();
}
+// Returns the payload for the ELF's InstallDetails instance. For use by
+// install_static::InstallDetails::InitializeFromPrimaryModule.
+extern "C" const install_static::InstallDetails::Payload*
+GetInstallDetailsPayload() {
+ return install_static::InstallDetails::Get().GetPayload();
+}
+
BOOL APIENTRY DllMain(HMODULE module, DWORD reason, LPVOID reserved) {
if (reason == DLL_PROCESS_ATTACH) {
+ install_static::InitializeProductDetailsForPrimaryModule();
+
// CRT on initialization installs an exception filter which calls
// TerminateProcess. We need to hook CRT's attempt to set an exception.
// NOTE: Do not hook if ASan is present, or ASan will fail to install

Powered by Google App Engine
This is Rietveld 408576698