linux: disable cfi for pthread_create start_routine
Bug: chromium:1200488
Change-Id: I9578b6b6ed2cc060b50dbf292777372142762050
Reviewed-on: https://chromium-review.googlesource.com/c/crashpad/crashpad/+/2837602
Reviewed-by: Mark Mentovai <mark@chromium.org>
Commit-Queue: Joshua Peraza <jperaza@chromium.org>
GitOrigin-RevId: 66eb800996ec4f20048959efb0ecfb6bc67a2e7a
diff --git a/client/pthread_create_linux.cc b/client/pthread_create_linux.cc
index df7aac4..d4a255c 100644
--- a/client/pthread_create_linux.cc
+++ b/client/pthread_create_linux.cc
@@ -31,10 +31,11 @@
void* InitializeSignalStackAndStart(StartParams* params) {
crashpad::CrashpadClient::InitializeSignalStackForThread();
- StartParams local_params = *params;
+ crashpad::NoCfiIcall<StartRoutineType> start_routine(params->start_routine);
+ void* arg = params->arg;
delete params;
- return local_params.start_routine(local_params.arg);
+ return start_routine(arg);
}
} // namespace