tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit d35bc543f528b91157c7bf5e1ce2b4906571aa87
parent acff600402b3fa38304d1420876d3a12be6cde7f
Author: Emilio Cobos Álvarez <emilio@crisal.io>
Date:   Fri,  7 Nov 2025 21:09:47 +0000

Bug 1998955 - Add missing includes to arm64 interceptor. r=win-reviewers,gstoll

When building with C++ for aarch64 windows, we get:

  /builds/worker/workspace/obj-build/dist/include/mozilla/interceptor/Arm64.h(200,45): error: expected ';' after expression
    200 |   Trampoline<typename TrampPoolT::MMPolicyT> veneer(
        |                                             ^
  /builds/worker/workspace/obj-build/dist/include/mozilla/interceptor/Arm64.h(200,3): error: use of undeclared identifier 'Trampoline'
    200 |   Trampoline<typename TrampPoolT::MMPolicyT> veneer(
        |   ^
  /builds/worker/workspace/obj-build/dist/include/mozilla/interceptor/Arm64.h(204,3): error: use of undeclared identifier 'veneer'
    204 |   veneer.WriteEncodedPointer(nullptr);
        |   ^
  /builds/worker/workspace/obj-build/dist/include/mozilla/interceptor/Arm64.h(205,3): error: use of undeclared identifier 'veneer'
    205 |   veneer.WriteEncodedPointer(aPrimaryTramp);
        |   ^
  /builds/worker/workspace/obj-build/dist/include/mozilla/interceptor/Arm64.h(207,3): error: use of undeclared identifier 'veneer'
    207 |   veneer.StartExecutableCode();
        |   ^

This seems like a missing include on a function that gets instantiated
or type-checked more eagerly with C++20.

Fix it by including the relevant file.

Differential Revision: https://phabricator.services.mozilla.com/D271777

Diffstat:
Mtoolkit/xre/dllservices/mozglue/interceptor/Arm64.h | 1+
Mtoolkit/xre/dllservices/mozglue/interceptor/MMPolicies.h | 1+
Mtoolkit/xre/dllservices/mozglue/interceptor/TargetFunction.h | 1+
Mtoolkit/xre/dllservices/mozglue/interceptor/Trampoline.h | 1+
4 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/toolkit/xre/dllservices/mozglue/interceptor/Arm64.h b/toolkit/xre/dllservices/mozglue/interceptor/Arm64.h @@ -16,6 +16,7 @@ #include "mozilla/Result.h" #include "mozilla/Saturate.h" #include "mozilla/Types.h" +#include "mozilla/interceptor/Trampoline.h" namespace mozilla { namespace interceptor { diff --git a/toolkit/xre/dllservices/mozglue/interceptor/MMPolicies.h b/toolkit/xre/dllservices/mozglue/interceptor/MMPolicies.h @@ -15,6 +15,7 @@ #include "mozilla/Span.h" #include "mozilla/WindowsMapRemoteView.h" #include "mozilla/WindowsUnwindInfo.h" +#include "mozilla/WinHeaderOnlyUtils.h" #include <windows.h> diff --git a/toolkit/xre/dllservices/mozglue/interceptor/TargetFunction.h b/toolkit/xre/dllservices/mozglue/interceptor/TargetFunction.h @@ -13,6 +13,7 @@ #include "mozilla/CheckedInt.h" #include "mozilla/DebugOnly.h" #include "mozilla/Maybe.h" +#include "mozilla/interceptor/MMPolicies.h" #include "mozilla/Vector.h" diff --git a/toolkit/xre/dllservices/mozglue/interceptor/Trampoline.h b/toolkit/xre/dllservices/mozglue/interceptor/Trampoline.h @@ -14,6 +14,7 @@ #include "mozilla/Maybe.h" #include "mozilla/WindowsProcessMitigations.h" #include "mozilla/WindowsUnwindInfo.h" +#include "mozilla/interceptor/TargetFunction.h" namespace mozilla { namespace interceptor {