summaryrefslogtreecommitdiff
path: root/mozilla-1726515.patch
blob: 91605d5751af0b8a3c0b09db1bbf14a9239b574f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
diff --git a/gfx/thebes/gfxTypes.h b/gfx/thebes/gfxTypes.h
--- a/gfx/thebes/gfxTypes.h
+++ b/gfx/thebes/gfxTypes.h
@@ -10,7 +10,7 @@
 #include "mozilla/TypedEnumBits.h"
 
 namespace mozilla {
-enum class StyleGenericFontFamily : uint8_t;
+enum class StyleGenericFontFamily : uint32_t;
 }
 
 typedef struct _cairo_surface cairo_surface_t;
diff --git a/servo/components/style/values/computed/font.rs b/servo/components/style/values/computed/font.rs
--- a/servo/components/style/values/computed/font.rs
+++ b/servo/components/style/values/computed/font.rs
@@ -382,6 +382,10 @@
 /// The order here is important, if you change it make sure that
 /// `gfxPlatformFontList.h`s ranged array and `gfxFontFamilyList`'s
 /// sSingleGenerics are updated as well.
+///
+/// NOTE(emilio): Should be u8, but it's a u32 because of ABI issues between GCC
+/// and LLVM see https://bugs.llvm.org/show_bug.cgi?id=44228 / bug 1600735 /
+/// bug 1726515.
 #[derive(
     Clone,
     Copy,
@@ -397,7 +401,7 @@
     ToShmem,
 )]
 #[cfg_attr(feature = "servo", derive(Deserialize, Serialize))]
-#[repr(u8)]
+#[repr(u32)]
 #[allow(missing_docs)]
 pub enum GenericFontFamily {
     /// No generic family specified, only for internal usage.

bgstack15