Bug 1918864 - Update mingw to upstream revision c0313ec3381521db6c5e3aca746ff1e3e29208d7. r=tjr

Differential Revision: https://phabricator.services.mozilla.com/D222208
This commit is contained in:
Ryan VanderMeulen
2024-11-25 16:53:23 +00:00
parent 82948d6d24
commit acfa409c24
12 changed files with 243 additions and 227 deletions

View File

@@ -12,52 +12,6 @@
#ifndef mozilla_a11y_supplementalMinGWDefinitions_h__ #ifndef mozilla_a11y_supplementalMinGWDefinitions_h__
#define mozilla_a11y_supplementalMinGWDefinitions_h__ #define mozilla_a11y_supplementalMinGWDefinitions_h__
// UIA Text Attribute Identifiers
const long UIA_AnimationStyleAttributeId = 40000;
const long UIA_BackgroundColorAttributeId = 40001;
const long UIA_BulletStyleAttributeId = 40002;
const long UIA_CapStyleAttributeId = 40003;
const long UIA_CultureAttributeId = 40004;
const long UIA_FontNameAttributeId = 40005;
const long UIA_FontSizeAttributeId = 40006;
const long UIA_FontWeightAttributeId = 40007;
const long UIA_ForegroundColorAttributeId = 40008;
const long UIA_HorizontalTextAlignmentAttributeId = 40009;
const long UIA_IndentationFirstLineAttributeId = 40010;
const long UIA_IndentationLeadingAttributeId = 40011;
const long UIA_IndentationTrailingAttributeId = 40012;
const long UIA_IsHiddenAttributeId = 40013;
const long UIA_IsItalicAttributeId = 40014;
const long UIA_IsReadOnlyAttributeId = 40015;
const long UIA_IsSubscriptAttributeId = 40016;
const long UIA_IsSuperscriptAttributeId = 40017;
const long UIA_MarginBottomAttributeId = 40018;
const long UIA_MarginLeadingAttributeId = 40019;
const long UIA_MarginTopAttributeId = 40020;
const long UIA_MarginTrailingAttributeId = 40021;
const long UIA_OutlineStylesAttributeId = 40022;
const long UIA_OverlineColorAttributeId = 40023;
const long UIA_OverlineStyleAttributeId = 40024;
const long UIA_StrikethroughColorAttributeId = 40025;
const long UIA_StrikethroughStyleAttributeId = 40026;
const long UIA_TabsAttributeId = 40027;
const long UIA_TextFlowDirectionsAttributeId = 40028;
const long UIA_UnderlineColorAttributeId = 40029;
const long UIA_UnderlineStyleAttributeId = 40030;
const long UIA_AnnotationTypesAttributeId = 40031;
const long UIA_AnnotationObjectsAttributeId = 40032;
const long UIA_StyleNameAttributeId = 40033;
const long UIA_StyleIdAttributeId = 40034;
const long UIA_LinkAttributeId = 40035;
const long UIA_IsActiveAttributeId = 40036;
const long UIA_SelectionActiveEndAttributeId = 40037;
const long UIA_CaretPositionAttributeId = 40038;
const long UIA_CaretBidiModeAttributeId = 40039;
const long UIA_LineSpacingAttributeId = 40040;
const long UIA_BeforeParagraphSpacingAttributeId = 40041;
const long UIA_AfterParagraphSpacingAttributeId = 40042;
const long UIA_SayAsInterpretAsAttributeId = 40043;
// UIA Annotation Type Identifiers // UIA Annotation Type Identifiers
const long AnnotationType_Unknown = 60000; const long AnnotationType_Unknown = 60000;
const long AnnotationType_SpellingError = 60001; const long AnnotationType_SpellingError = 60001;

View File

@@ -32,16 +32,6 @@
using namespace mozilla; using namespace mozilla;
using namespace mozilla::a11y; using namespace mozilla::a11y;
#ifdef __MINGW32__
// These constants are missing in mingw-w64. This code should be removed once
// we update to a version which includes them.
const long UIA_CustomLandmarkTypeId = 80000;
const long UIA_FormLandmarkTypeId = 80001;
const long UIA_MainLandmarkTypeId = 80002;
const long UIA_NavigationLandmarkTypeId = 80003;
const long UIA_SearchLandmarkTypeId = 80004;
#endif // __MINGW32__
// Helper functions // Helper functions
static ToggleState ToToggleState(uint64_t aState) { static ToggleState ToToggleState(uint64_t aState) {

View File

@@ -23,6 +23,4 @@ struct DWRITE_COLOR_GLYPH_RUN1_WORKAROUND : DWRITE_COLOR_GLYPH_RUN
typedef DWRITE_COLOR_GLYPH_RUN1 DWRITE_COLOR_GLYPH_RUN1_WORKAROUND; typedef DWRITE_COLOR_GLYPH_RUN1 DWRITE_COLOR_GLYPH_RUN1_WORKAROUND;
#endif #endif
DEFINE_ENUM_FLAG_OPERATORS(DWRITE_GLYPH_IMAGE_FORMATS);
#endif /* DWRITE_EXTRA_H */ #endif /* DWRITE_EXTRA_H */

View File

@@ -37,14 +37,6 @@
// - // -
#if defined(__MINGW32__) // 64 defines both 32 and 64
// We need to fake some things, while we wait on updates to mingw's dcomp.h
// header. Just enough that we can successfully fail to work there.
# define MOZ_MINGW_DCOMP_H_INCOMPLETE
struct IDCompositionColorMatrixEffect : public IDCompositionFilterEffect {};
struct IDCompositionTableTransferEffect : public IDCompositionFilterEffect {};
#endif // defined(__MINGW32__)
namespace mozilla { namespace mozilla {
namespace wr { namespace wr {
@@ -2295,8 +2287,6 @@ ColorManagementChain ColorManagementChain::From(
const color::ColorProfileConversionDesc& conv) { const color::ColorProfileConversionDesc& conv) {
auto ret = ColorManagementChain{}; auto ret = ColorManagementChain{};
#if !defined(MOZ_MINGW_DCOMP_H_INCOMPLETE)
const auto Append = [&](const RefPtr<IDCompositionFilterEffect>& afterLast) { const auto Append = [&](const RefPtr<IDCompositionFilterEffect>& afterLast) {
if (ret.last) { if (ret.last) {
afterLast->SetInput(0, ret.last, 0); afterLast->SetInput(0, ret.last, 0);
@@ -2333,8 +2323,6 @@ ColorManagementChain ColorManagementChain::From(
MaybeAppendColorMatrix(color::mat4(conv.dstLinearFromSrcLinear)); MaybeAppendColorMatrix(color::mat4(conv.dstLinearFromSrcLinear));
ret.dstTfFromDstLinear = MaybeAppendTableTransfer(conv.dstTfFromDstLinear); ret.dstTfFromDstLinear = MaybeAppendTableTransfer(conv.dstTfFromDstLinear);
#endif // !defined(MOZ_MINGW_DCOMP_H_INCOMPLETE)
return ret; return ret;
} }

View File

@@ -311,7 +311,7 @@ mingw-w64:
fetch: fetch:
type: git type: git
repo: https://git.code.sf.net/p/mingw-w64/mingw-w64 repo: https://git.code.sf.net/p/mingw-w64/mingw-w64
revision: cd4cf9b279f8fb0815f8b9665d3cea60a30290bc revision: c0313ec3381521db6c5e3aca746ff1e3e29208d7
mingw-w64-trunk: mingw-w64-trunk:
description: mingw-w64 master branch source code description: mingw-w64 master branch source code

View File

@@ -37,25 +37,21 @@ default_win32_winnt=0x601
cd $GECKO_PATH cd $GECKO_PATH
patch_file2="$(pwd)/taskcluster/scripts/misc/mingw-dwrite_3.patch" patch_file1="$(pwd)/taskcluster/scripts/misc/mingw-dwrite_3.patch"
patch_file3="$(pwd)/taskcluster/scripts/misc/mingw-unknown.patch" patch_file2="$(pwd)/taskcluster/scripts/misc/mingw-enum.patch"
patch_file4="$(pwd)/taskcluster/scripts/misc/mingw-enum.patch" patch_file3="$(pwd)/taskcluster/scripts/misc/mingw-widl.patch"
patch_file5="$(pwd)/taskcluster/scripts/misc/mingw-widl.patch" patch_file4="$(pwd)/taskcluster/scripts/misc/mingw-dispatchqueue.patch"
patch_file6="$(pwd)/taskcluster/scripts/misc/mingw-dispatchqueue.patch" patch_file5="$(pwd)/taskcluster/scripts/misc/mingw-ts_sd.patch"
patch_file10="$(pwd)/taskcluster/scripts/misc/mingw-ts_sd.patch" patch_file6="$(pwd)/taskcluster/scripts/misc/mingw-foundation_redef.patch"
patch_file11="$(pwd)/taskcluster/scripts/misc/mingw-composition.patch"
patch_file12="$(pwd)/taskcluster/scripts/misc/mingw-wintrust.patch"
prepare() { prepare() {
pushd $MOZ_FETCHES_DIR/mingw-w64 pushd $MOZ_FETCHES_DIR/mingw-w64
patch -p1 <$patch_file1
patch -p1 <$patch_file2 patch -p1 <$patch_file2
patch -p1 <$patch_file3 patch -p1 <$patch_file3
patch -p1 <$patch_file4 patch -p1 <$patch_file4
patch -p1 <$patch_file5 patch -p1 <$patch_file5
patch -p1 <$patch_file6 patch -p1 <$patch_file6
patch -p1 <$patch_file10
patch -p1 <$patch_file11
patch -p1 <$patch_file12
popd popd
} }

View File

@@ -1,50 +0,0 @@
diff --git a/mingw-w64-headers/include/windows.ui.composition.h b/mingw-w64-headers/include/windows.ui.composition.h
index 9dac0f1..58872d5 100644
--- a/mingw-w64-headers/include/windows.ui.composition.h
+++ b/mingw-w64-headers/include/windows.ui.composition.h
@@ -4916,13 +4916,13 @@ namespace ABI {
ICompositionDrawingSurface : public IInspectable
{
virtual HRESULT STDMETHODCALLTYPE get_AlphaMode(
- enum DirectXAlphaMode *value) = 0;
+ ABI::Windows::Graphics::DirectX::DirectXAlphaMode *value) = 0;
virtual HRESULT STDMETHODCALLTYPE get_PixelFormat(
- enum DirectXPixelFormat *value) = 0;
+ ABI::Windows::Graphics::DirectX::DirectXPixelFormat *value) = 0;
virtual HRESULT STDMETHODCALLTYPE get_Size(
- struct Size *value) = 0;
+ ABI::Windows::Foundation::Size *value) = 0;
};
}
@@ -5704,8 +5704,8 @@ namespace ABI {
{
virtual HRESULT STDMETHODCALLTYPE CreateDrawingSurface(
struct Size pixels,
- enum DirectXPixelFormat format,
- enum DirectXAlphaMode mode,
+ ABI::Windows::Graphics::DirectX::DirectXPixelFormat format,
+ ABI::Windows::Graphics::DirectX::DirectXAlphaMode mode,
ABI::Windows::UI::Composition::ICompositionDrawingSurface **result) = 0;
virtual HRESULT STDMETHODCALLTYPE add_RenderingDeviceReplaced(
@@ -9338,7 +9338,7 @@ namespace ABI {
boolean value) = 0;
virtual HRESULT STDMETHODCALLTYPE get_Offset(
- struct Vector3 *value) = 0;
+ ABI::Windows::Foundation::Numerics::Vector3 *value) = 0;
virtual HRESULT STDMETHODCALLTYPE put_Offset(
struct Vector3 value) = 0;
@@ -9383,7 +9383,7 @@ namespace ABI {
struct Vector3 value) = 0;
virtual HRESULT STDMETHODCALLTYPE get_Size(
- struct Vector2 *value) = 0;
+ ABI::Windows::Foundation::Numerics::Vector2 *value) = 0;
virtual HRESULT STDMETHODCALLTYPE put_Size(
struct Vector2 value) = 0;

View File

@@ -12,10 +12,10 @@ GetGlyphImageFormats.
1 file changed, 9 insertions(+), 9 deletions(-) 1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/mingw-w64-headers/include/dwrite_3.h b/mingw-w64-headers/include/dwrite_3.h diff --git a/mingw-w64-headers/include/dwrite_3.h b/mingw-w64-headers/include/dwrite_3.h
index 205c47f04..352731bf1 100644 index 0cd8ad6..e22513c 100644
--- a/mingw-w64-headers/include/dwrite_3.h --- a/mingw-w64-headers/include/dwrite_3.h
+++ b/mingw-w64-headers/include/dwrite_3.h +++ b/mingw-w64-headers/include/dwrite_3.h
@@ -8181,7 +8181,7 @@ DEFINE_GUID(IID_IDWriteFontFace4, 0x27f2a904, 0x4eb8, 0x441d, 0x96,0x78, 0x05,0x @@ -8697,7 +8697,7 @@ DEFINE_GUID(IID_IDWriteFontFace4, 0x27f2a904, 0x4eb8, 0x441d, 0x96,0x78, 0x05,0x
MIDL_INTERFACE("27f2a904-4eb8-441d-9678-0563f53e3e2f") MIDL_INTERFACE("27f2a904-4eb8-441d-9678-0563f53e3e2f")
IDWriteFontFace4 : public IDWriteFontFace3 IDWriteFontFace4 : public IDWriteFontFace3
{ {
@@ -24,7 +24,7 @@ index 205c47f04..352731bf1 100644
UINT16 glyph, UINT16 glyph,
UINT32 ppem_first, UINT32 ppem_first,
UINT32 ppem_last, UINT32 ppem_last,
@@ -8481,7 +8481,7 @@ typedef struct IDWriteFontFace4Vtbl { @@ -8997,7 +8997,7 @@ typedef struct IDWriteFontFace4Vtbl {
WINBOOL *are_local); WINBOOL *are_local);
/*** IDWriteFontFace4 methods ***/ /*** IDWriteFontFace4 methods ***/
@@ -33,7 +33,7 @@ index 205c47f04..352731bf1 100644
IDWriteFontFace4 *This, IDWriteFontFace4 *This,
UINT16 glyph, UINT16 glyph,
UINT32 ppem_first, UINT32 ppem_first,
@@ -8562,7 +8562,7 @@ interface IDWriteFontFace4 { @@ -9078,7 +9078,7 @@ interface IDWriteFontFace4 {
#define IDWriteFontFace4_AreCharactersLocal(This,characters,count,enqueue_if_not,are_local) (This)->lpVtbl->AreCharactersLocal(This,characters,count,enqueue_if_not,are_local) #define IDWriteFontFace4_AreCharactersLocal(This,characters,count,enqueue_if_not,are_local) (This)->lpVtbl->AreCharactersLocal(This,characters,count,enqueue_if_not,are_local)
#define IDWriteFontFace4_AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local) (This)->lpVtbl->AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local) #define IDWriteFontFace4_AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local) (This)->lpVtbl->AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local)
/*** IDWriteFontFace4 methods ***/ /*** IDWriteFontFace4 methods ***/
@@ -42,18 +42,18 @@ index 205c47f04..352731bf1 100644
#define IDWriteFontFace4_GetGlyphImageFormats(This) (This)->lpVtbl->GetGlyphImageFormats(This) #define IDWriteFontFace4_GetGlyphImageFormats(This) (This)->lpVtbl->GetGlyphImageFormats(This)
#define IDWriteFontFace4_GetGlyphImageData(This,glyph,ppem,format,data,context) (This)->lpVtbl->GetGlyphImageData(This,glyph,ppem,format,data,context) #define IDWriteFontFace4_GetGlyphImageData(This,glyph,ppem,format,data,context) (This)->lpVtbl->GetGlyphImageData(This,glyph,ppem,format,data,context)
#define IDWriteFontFace4_ReleaseGlyphImageData(This,context) (This)->lpVtbl->ReleaseGlyphImageData(This,context) #define IDWriteFontFace4_ReleaseGlyphImageData(This,context) (This)->lpVtbl->ReleaseGlyphImageData(This,context)
@@ -8705,8 +8705,8 @@ static __WIDL_INLINE HRESULT IDWriteFontFace4_AreGlyphsLocal(IDWriteFontFace4* T @@ -9221,8 +9221,8 @@ static inline HRESULT IDWriteFontFace4_AreGlyphsLocal(IDWriteFontFace4* T
return This->lpVtbl->AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local); return This->lpVtbl->AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local);
} }
/*** IDWriteFontFace4 methods ***/ /*** IDWriteFontFace4 methods ***/
-static __WIDL_INLINE HRESULT IDWriteFontFace4_GetGlyphImageFormats_(IDWriteFontFace4* This,UINT16 glyph,UINT32 ppem_first,UINT32 ppem_last,DWRITE_GLYPH_IMAGE_FORMATS *formats) { -static inline HRESULT IDWriteFontFace4_GetGlyphImageFormats_(IDWriteFontFace4* This,UINT16 glyph,UINT32 ppem_first,UINT32 ppem_last,DWRITE_GLYPH_IMAGE_FORMATS *formats) {
- return This->lpVtbl->GetGlyphImageFormats_(This,glyph,ppem_first,ppem_last,formats); - return This->lpVtbl->GetGlyphImageFormats_(This,glyph,ppem_first,ppem_last,formats);
+static __WIDL_INLINE HRESULT IDWriteFontFace4_GetGlyphImageFormats(IDWriteFontFace4* This,UINT16 glyph,UINT32 ppem_first,UINT32 ppem_last,DWRITE_GLYPH_IMAGE_FORMATS *formats) { +static inline HRESULT IDWriteFontFace4_GetGlyphImageFormats(IDWriteFontFace4* This,UINT16 glyph,UINT32 ppem_first,UINT32 ppem_last,DWRITE_GLYPH_IMAGE_FORMATS *formats) {
+ return This->lpVtbl->GetGlyphImageFormats(This,glyph,ppem_first,ppem_last,formats); + return This->lpVtbl->GetGlyphImageFormats(This,glyph,ppem_first,ppem_last,formats);
} }
static __WIDL_INLINE DWRITE_GLYPH_IMAGE_FORMATS IDWriteFontFace4_GetGlyphImageFormats(IDWriteFontFace4* This) { static inline DWRITE_GLYPH_IMAGE_FORMATS IDWriteFontFace4_GetGlyphImageFormats(IDWriteFontFace4* This) {
return This->lpVtbl->GetGlyphImageFormats(This); return This->lpVtbl->GetGlyphImageFormats(This);
@@ -9033,7 +9033,7 @@ typedef struct IDWriteFontFace5Vtbl { @@ -9549,7 +9549,7 @@ typedef struct IDWriteFontFace5Vtbl {
WINBOOL *are_local); WINBOOL *are_local);
/*** IDWriteFontFace4 methods ***/ /*** IDWriteFontFace4 methods ***/
@@ -62,7 +62,7 @@ index 205c47f04..352731bf1 100644
IDWriteFontFace5 *This, IDWriteFontFace5 *This,
UINT16 glyph, UINT16 glyph,
UINT32 ppem_first, UINT32 ppem_first,
@@ -9134,7 +9134,7 @@ interface IDWriteFontFace5 { @@ -9650,7 +9650,7 @@ interface IDWriteFontFace5 {
#define IDWriteFontFace5_AreCharactersLocal(This,characters,count,enqueue_if_not,are_local) (This)->lpVtbl->AreCharactersLocal(This,characters,count,enqueue_if_not,are_local) #define IDWriteFontFace5_AreCharactersLocal(This,characters,count,enqueue_if_not,are_local) (This)->lpVtbl->AreCharactersLocal(This,characters,count,enqueue_if_not,are_local)
#define IDWriteFontFace5_AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local) (This)->lpVtbl->AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local) #define IDWriteFontFace5_AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local) (This)->lpVtbl->AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local)
/*** IDWriteFontFace4 methods ***/ /*** IDWriteFontFace4 methods ***/
@@ -71,17 +71,54 @@ index 205c47f04..352731bf1 100644
#define IDWriteFontFace5_GetGlyphImageFormats(This) (This)->lpVtbl->GetGlyphImageFormats(This) #define IDWriteFontFace5_GetGlyphImageFormats(This) (This)->lpVtbl->GetGlyphImageFormats(This)
#define IDWriteFontFace5_GetGlyphImageData(This,glyph,ppem,format,data,context) (This)->lpVtbl->GetGlyphImageData(This,glyph,ppem,format,data,context) #define IDWriteFontFace5_GetGlyphImageData(This,glyph,ppem,format,data,context) (This)->lpVtbl->GetGlyphImageData(This,glyph,ppem,format,data,context)
#define IDWriteFontFace5_ReleaseGlyphImageData(This,context) (This)->lpVtbl->ReleaseGlyphImageData(This,context) #define IDWriteFontFace5_ReleaseGlyphImageData(This,context) (This)->lpVtbl->ReleaseGlyphImageData(This,context)
@@ -9283,8 +9283,8 @@ static __WIDL_INLINE HRESULT IDWriteFontFace5_AreGlyphsLocal(IDWriteFontFace5* T @@ -9799,8 +9799,8 @@ static inline HRESULT IDWriteFontFace5_AreGlyphsLocal(IDWriteFontFace5* T
return This->lpVtbl->AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local); return This->lpVtbl->AreGlyphsLocal(This,glyphs,count,enqueue_if_not,are_local);
} }
/*** IDWriteFontFace4 methods ***/ /*** IDWriteFontFace4 methods ***/
-static __WIDL_INLINE HRESULT IDWriteFontFace5_GetGlyphImageFormats_(IDWriteFontFace5* This,UINT16 glyph,UINT32 ppem_first,UINT32 ppem_last,DWRITE_GLYPH_IMAGE_FORMATS *formats) { -static inline HRESULT IDWriteFontFace5_GetGlyphImageFormats_(IDWriteFontFace5* This,UINT16 glyph,UINT32 ppem_first,UINT32 ppem_last,DWRITE_GLYPH_IMAGE_FORMATS *formats) {
- return This->lpVtbl->GetGlyphImageFormats_(This,glyph,ppem_first,ppem_last,formats); - return This->lpVtbl->GetGlyphImageFormats_(This,glyph,ppem_first,ppem_last,formats);
+static __WIDL_INLINE HRESULT IDWriteFontFace5_GetGlyphImageFormats(IDWriteFontFace5* This,UINT16 glyph,UINT32 ppem_first,UINT32 ppem_last,DWRITE_GLYPH_IMAGE_FORMATS *formats) { +static inline HRESULT IDWriteFontFace5_GetGlyphImageFormats(IDWriteFontFace5* This,UINT16 glyph,UINT32 ppem_first,UINT32 ppem_last,DWRITE_GLYPH_IMAGE_FORMATS *formats) {
+ return This->lpVtbl->GetGlyphImageFormats(This,glyph,ppem_first,ppem_last,formats); + return This->lpVtbl->GetGlyphImageFormats(This,glyph,ppem_first,ppem_last,formats);
} }
static __WIDL_INLINE DWRITE_GLYPH_IMAGE_FORMATS IDWriteFontFace5_GetGlyphImageFormats(IDWriteFontFace5* This) { static inline DWRITE_GLYPH_IMAGE_FORMATS IDWriteFontFace5_GetGlyphImageFormats(IDWriteFontFace5* This) {
return This->lpVtbl->GetGlyphImageFormats(This); return This->lpVtbl->GetGlyphImageFormats(This);
-- @@ -10452,8 +10452,24 @@ IDWritePaintReader : public IUnknown
2.25.1 D2D_RECT_F *clip_box,
DWRITE_PAINT_ATTRIBUTES *glyph_attributes = 0) = 0;
+ HRESULT SetCurrentGlyph(
+ UINT32 glyph_index,
+ DWRITE_PAINT_ELEMENT* paint_element,
+ D2D_RECT_F* clip_box,
+ DWRITE_PAINT_ATTRIBUTES* glyph_attributes = nullptr
+ )
+ {
+ return SetCurrentGlyph(
+ glyph_index,
+ paint_element,
+ sizeof(DWRITE_PAINT_ELEMENT),
+ clip_box,
+ glyph_attributes
+ );
+ }
+
virtual HRESULT STDMETHODCALLTYPE SetTextColor(
- const DWRITE_COLOR_F *text_color) = 0;
+ DWRITE_COLOR_F const& text_color) = 0;
virtual HRESULT STDMETHODCALLTYPE SetColorPaletteIndex(
UINT32 color_palette_index) = 0;
@@ -10464,11 +10480,11 @@ IDWritePaintReader : public IUnknown
virtual HRESULT STDMETHODCALLTYPE MoveToFirstChild(
DWRITE_PAINT_ELEMENT *paint_element,
- UINT32 struct_size) = 0;
+ UINT32 struct_size = sizeof(DWRITE_PAINT_ELEMENT)) = 0;
virtual HRESULT STDMETHODCALLTYPE MoveToNextSibling(
DWRITE_PAINT_ELEMENT *paint_element,
- UINT32 struct_size) = 0;
+ UINT32 struct_size = sizeof(DWRITE_PAINT_ELEMENT)) = 0;
virtual HRESULT STDMETHODCALLTYPE MoveToParent(
) = 0;

View File

@@ -0,0 +1,181 @@
From c8a7600f9bee5d605b5559dda16b7ae09a17beba Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath <nathbappai@gmail.com>
Date: Tue, 5 Nov 2024 06:33:12 +0000
Subject: [PATCH] headers-git: Workaround redefinition error in
windows.foundation.h
diff --git a/mingw-w64-headers/include/windows.foundation.h b/mingw-w64-headers/include/windows.foundation.h
index 8be88e4..95aa62d 100644
--- a/mingw-w64-headers/include/windows.foundation.h
+++ b/mingw-w64-headers/include/windows.foundation.h
@@ -898,14 +898,6 @@ typedef interface __FIReference_1_TimeSpan __FIReference_1_TimeSpan;
#endif /* __cplusplus */
#endif
-#ifndef ____FIReference_1_boolean_FWD_DEFINED__
-#define ____FIReference_1_boolean_FWD_DEFINED__
-typedef interface __FIReference_1_boolean __FIReference_1_boolean;
-#ifdef __cplusplus
-#define __FIReference_1_boolean ABI::Windows::Foundation::IReference<boolean >
-#endif /* __cplusplus */
-#endif
-
#ifndef ____FITypedEventHandler_2_IInspectable_IInspectable_FWD_DEFINED__
#define ____FITypedEventHandler_2_IInspectable_IInspectable_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_IInspectable_IInspectable __FITypedEventHandler_2_IInspectable_IInspectable;
@@ -1798,14 +1790,6 @@ typedef interface __FIReference_1_TimeSpan __FIReference_1_TimeSpan;
#endif /* __cplusplus */
#endif
-#ifndef ____FIReference_1_boolean_FWD_DEFINED__
-#define ____FIReference_1_boolean_FWD_DEFINED__
-typedef interface __FIReference_1_boolean __FIReference_1_boolean;
-#ifdef __cplusplus
-#define __FIReference_1_boolean ABI::Windows::Foundation::IReference<boolean >
-#endif /* __cplusplus */
-#endif
-
/*****************************************************************************
* IAsyncActionCompletedHandler interface
*/
@@ -13624,128 +13608,6 @@ static inline HRESULT __FIReference_1_TimeSpan_get_Value(__FIReference_1_TimeSpa
#endif /* ____FIReference_1_TimeSpan_INTERFACE_DEFINED__ */
-/*****************************************************************************
- * IReference<boolean > interface
- */
-#ifndef ____FIReference_1_boolean_INTERFACE_DEFINED__
-#define ____FIReference_1_boolean_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID___FIReference_1_boolean, 0x3c00fd60, 0x2950, 0x5939, 0xa2,0x1a, 0x2d,0x12,0xc5,0xa0,0x1b,0x8a);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-} /* extern "C" */
-namespace ABI {
- namespace Windows {
- namespace Foundation {
- template<>
- MIDL_INTERFACE("3c00fd60-2950-5939-a21a-2d12c5a01b8a")
- IReference<boolean > : IReference_impl<boolean >
- {
- };
- }
- }
-}
-extern "C" {
-#ifdef __CRT_UUID_DECL
-__CRT_UUID_DECL(__FIReference_1_boolean, 0x3c00fd60, 0x2950, 0x5939, 0xa2,0x1a, 0x2d,0x12,0xc5,0xa0,0x1b,0x8a)
-#endif
-#else
-typedef struct __FIReference_1_booleanVtbl {
- BEGIN_INTERFACE
-
- /*** IUnknown methods ***/
- HRESULT (STDMETHODCALLTYPE *QueryInterface)(
- __FIReference_1_boolean *This,
- REFIID riid,
- void **ppvObject);
-
- ULONG (STDMETHODCALLTYPE *AddRef)(
- __FIReference_1_boolean *This);
-
- ULONG (STDMETHODCALLTYPE *Release)(
- __FIReference_1_boolean *This);
-
- /*** IInspectable methods ***/
- HRESULT (STDMETHODCALLTYPE *GetIids)(
- __FIReference_1_boolean *This,
- ULONG *iidCount,
- IID **iids);
-
- HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
- __FIReference_1_boolean *This,
- HSTRING *className);
-
- HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
- __FIReference_1_boolean *This,
- TrustLevel *trustLevel);
-
- /*** IReference<boolean > methods ***/
- HRESULT (STDMETHODCALLTYPE *get_Value)(
- __FIReference_1_boolean *This,
- boolean *value);
-
- END_INTERFACE
-} __FIReference_1_booleanVtbl;
-
-interface __FIReference_1_boolean {
- CONST_VTBL __FIReference_1_booleanVtbl* lpVtbl;
-};
-
-#ifdef COBJMACROS
-#ifndef WIDL_C_INLINE_WRAPPERS
-/*** IUnknown methods ***/
-#define __FIReference_1_boolean_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
-#define __FIReference_1_boolean_AddRef(This) (This)->lpVtbl->AddRef(This)
-#define __FIReference_1_boolean_Release(This) (This)->lpVtbl->Release(This)
-/*** IInspectable methods ***/
-#define __FIReference_1_boolean_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
-#define __FIReference_1_boolean_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
-#define __FIReference_1_boolean_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
-/*** IReference<boolean > methods ***/
-#define __FIReference_1_boolean_get_Value(This,value) (This)->lpVtbl->get_Value(This,value)
-#else
-/*** IUnknown methods ***/
-static inline HRESULT __FIReference_1_boolean_QueryInterface(__FIReference_1_boolean* This,REFIID riid,void **ppvObject) {
- return This->lpVtbl->QueryInterface(This,riid,ppvObject);
-}
-static inline ULONG __FIReference_1_boolean_AddRef(__FIReference_1_boolean* This) {
- return This->lpVtbl->AddRef(This);
-}
-static inline ULONG __FIReference_1_boolean_Release(__FIReference_1_boolean* This) {
- return This->lpVtbl->Release(This);
-}
-/*** IInspectable methods ***/
-static inline HRESULT __FIReference_1_boolean_GetIids(__FIReference_1_boolean* This,ULONG *iidCount,IID **iids) {
- return This->lpVtbl->GetIids(This,iidCount,iids);
-}
-static inline HRESULT __FIReference_1_boolean_GetRuntimeClassName(__FIReference_1_boolean* This,HSTRING *className) {
- return This->lpVtbl->GetRuntimeClassName(This,className);
-}
-static inline HRESULT __FIReference_1_boolean_GetTrustLevel(__FIReference_1_boolean* This,TrustLevel *trustLevel) {
- return This->lpVtbl->GetTrustLevel(This,trustLevel);
-}
-/*** IReference<boolean > methods ***/
-static inline HRESULT __FIReference_1_boolean_get_Value(__FIReference_1_boolean* This,boolean *value) {
- return This->lpVtbl->get_Value(This,value);
-}
-#endif
-#ifdef WIDL_using_Windows_Foundation
-#define IID_IReference_boolean IID___FIReference_1_boolean
-#define IReference_booleanVtbl __FIReference_1_booleanVtbl
-#define IReference_boolean __FIReference_1_boolean
-#define IReference_boolean_QueryInterface __FIReference_1_boolean_QueryInterface
-#define IReference_boolean_AddRef __FIReference_1_boolean_AddRef
-#define IReference_boolean_Release __FIReference_1_boolean_Release
-#define IReference_boolean_GetIids __FIReference_1_boolean_GetIids
-#define IReference_boolean_GetRuntimeClassName __FIReference_1_boolean_GetRuntimeClassName
-#define IReference_boolean_GetTrustLevel __FIReference_1_boolean_GetTrustLevel
-#define IReference_boolean_get_Value __FIReference_1_boolean_get_Value
-#endif /* WIDL_using_Windows_Foundation */
-#endif
-
-#endif
-
-#endif /* ____FIReference_1_boolean_INTERFACE_DEFINED__ */
-
/*****************************************************************************
* ITypedEventHandler<IInspectable*,IInspectable* > interface
*/
diff --git a/mingw-w64-headers/include/windows.foundation.idl b/mingw-w64-headers/include/windows.foundation.idl
index 88a9f57..7a64459 100644
--- a/mingw-w64-headers/include/windows.foundation.idl
+++ b/mingw-w64-headers/include/windows.foundation.idl
@@ -150,7 +150,6 @@ namespace Windows.Foundation {
interface Windows.Foundation.IReference<Windows.Foundation.Rect>;
interface Windows.Foundation.IReference<Windows.Foundation.Size>;
interface Windows.Foundation.IReference<Windows.Foundation.TimeSpan>;
- interface Windows.Foundation.IReference<boolean>;
interface Windows.Foundation.TypedEventHandler<IInspectable *, IInspectable *>;
interface Windows.Foundation.TypedEventHandler<Windows.Foundation.IMemoryBufferReference *, IInspectable *>;
}

View File

@@ -1,46 +0,0 @@
From 753c3ad7018936ef9a9d2af8b75efbfa14c149b7 Mon Sep 17 00:00:00 2001
From: Tom Ritter <tom@ritter.vg>
Date: Thu, 2 Feb 2023 12:26:22 -0500
Subject: [PATCH 2/7] Add back the IUnknown_QI functions
---
mingw-w64-headers/include/unknwn.h | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/mingw-w64-headers/include/unknwn.h b/mingw-w64-headers/include/unknwn.h
index f3ada04a2..f33e8f270 100644
--- a/mingw-w64-headers/include/unknwn.h
+++ b/mingw-w64-headers/include/unknwn.h
@@ -169,6 +169,29 @@ static __WIDL_INLINE ULONG IUnknown_Release(IUnknown* This) {
#endif
+HRESULT STDMETHODCALLTYPE IUnknown_QueryInterface_Proxy(
+ IUnknown* This,
+ REFIID riid,
+ void **ppvObject);
+void __RPC_STUB IUnknown_QueryInterface_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+ULONG STDMETHODCALLTYPE IUnknown_AddRef_Proxy(
+ IUnknown* This);
+void __RPC_STUB IUnknown_AddRef_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+ULONG STDMETHODCALLTYPE IUnknown_Release_Proxy(
+ IUnknown* This);
+void __RPC_STUB IUnknown_Release_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
#endif /* __IUnknown_INTERFACE_DEFINED__ */
--
2.25.1

View File

@@ -1,30 +0,0 @@
diff --git a/mingw-w64-crt/lib32/wintrust.def b/mingw-w64-crt/lib32/wintrust.def
index fbff4e75d..8ed58036b 100644
--- a/mingw-w64-crt/lib32/wintrust.def
+++ b/mingw-w64-crt/lib32/wintrust.def
@@ -18,8 +18,10 @@ WTHelperCertFindIssuerCertificate@28
AddPersonalTrustDBPages@12
CatalogCompactHashDatabase@16
CryptCATAdminAcquireContext@12
+CryptCATAdminAcquireContext2@20
CryptCATAdminAddCatalog@16
CryptCATAdminCalcHashFromFileHandle@16
+CryptCATAdminCalcHashFromFileHandle2@20
CryptCATAdminEnumCatalogFromHash@20
CryptCATAdminPauseServiceForBackup@8
CryptCATAdminReleaseCatalogContext@12
diff --git a/mingw-w64-crt/lib64/wintrust.def b/mingw-w64-crt/lib64/wintrust.def
index c2d68ffee..9df52ad22 100644
--- a/mingw-w64-crt/lib64/wintrust.def
+++ b/mingw-w64-crt/lib64/wintrust.def
@@ -19,8 +19,10 @@ WTHelperCertFindIssuerCertificate
AddPersonalTrustDBPages
CatalogCompactHashDatabase
CryptCATAdminAcquireContext
+CryptCATAdminAcquireContext2
CryptCATAdminAddCatalog
CryptCATAdminCalcHashFromFileHandle
+CryptCATAdminCalcHashFromFileHandle2
CryptCATAdminEnumCatalogFromHash
CryptCATAdminPauseServiceForBackup
CryptCATAdminReleaseCatalogContext

View File

@@ -40,8 +40,6 @@ namespace {
static const HEAP_INFORMATION_CLASS HeapOptimizeResources = static const HEAP_INFORMATION_CLASS HeapOptimizeResources =
static_cast<HEAP_INFORMATION_CLASS>(3); static_cast<HEAP_INFORMATION_CLASS>(3);
static const DWORD HEAP_OPTIMIZE_RESOURCES_CURRENT_VERSION = 1;
typedef struct _HEAP_OPTIMIZE_RESOURCES_INFORMATION { typedef struct _HEAP_OPTIMIZE_RESOURCES_INFORMATION {
DWORD Version; DWORD Version;
DWORD Flags; DWORD Flags;