diff options
author | Baptiste Daroussin <bapt@FreeBSD.org> | 2014-08-04 09:11:25 +0000 |
---|---|---|
committer | Baptiste Daroussin <bapt@FreeBSD.org> | 2014-08-04 09:11:25 +0000 |
commit | f92079c61ea2516fd5b1514bae10c743ba63b699 (patch) | |
tree | 1e9acf477fa72cf7c888cc484c96bd4f207a487a /www/firefox/files/patch-bug1026499 | |
parent | Update to 3.16.3 (diff) |
Update mozilla ports:
- firefox 31.0
- firefox-esr 24.7.0
- libxul 24.7.0
- seamonkey 2.26.1
- thunderbird 31.0
Among changes:
- add workaround for crash with openldap on thunderbird and seamonkey [1]
- add crashfix for architectures with strict alignmentment
- backport crashfix with system sqlite/nss on firefox-esr and thunderbird
- restore hooking jemalloc in sqlite on freebsd 10+
- fix thunderbird build with -jN [2]
- respect MAKE_JOBS_NUMBER regardless of kern.smp.cpus [2]
- define CPE_URI for nspr/nss and firefox/thunderbird/seamonkey
- require recent gstreamer1-libav i386 crashfix
- add DTRACE option for use with DTraceToolkit (js_flowtime.d, js_who.d, etc)
PR: 165263 [1]
PR: 184630 [2]
Submitted by: Jan Beich
Notes
Notes:
svn path=/head/; revision=363978
Diffstat (limited to 'www/firefox/files/patch-bug1026499')
-rw-r--r-- | www/firefox/files/patch-bug1026499 | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/www/firefox/files/patch-bug1026499 b/www/firefox/files/patch-bug1026499 new file mode 100644 index 000000000000..e446f22c64cf --- /dev/null +++ b/www/firefox/files/patch-bug1026499 @@ -0,0 +1,68 @@ +commit 8d0efe4 +Author: Martin Husemann <martin@NetBSD.org> +Date: Wed Jun 18 18:12:22 2014 +0200 + + Bug 1026499 - Use MOZ_ALIGNED_DECL to declare union members in ipdl value declarations. r=bsmedberg +--- + ipc/ipdl/ipdl/cxx/ast.py | 7 ++++--- + ipc/ipdl/ipdl/cxx/cgen.py | 5 ++++- + ipc/ipdl/ipdl/lower.py | 2 +- + 4 files changed, 10 insertions(+), 5 deletions(-) + +diff --git ipc/ipdl/ipdl/cxx/ast.py ipc/ipdl/ipdl/cxx/ast.py +index 3180a65..c2d945b 100644 +--- ipc/ipdl/ipdl/cxx/ast.py ++++ ipc/ipdl/ipdl/cxx/ast.py +@@ -336,12 +336,13 @@ Type.VOID = Type('void') + Type.VOIDPTR = Type('void', ptr=1) + + class TypeArray(Node): +- def __init__(self, basetype, nmemb): +- '''the type |basetype DECLNAME[nmemb]|. |nmemb| is an Expr''' ++ def __init__(self, basetype, nmemb, alignType): ++ '''the type |basetype DECLNAME[nmemb]|. |nmemb| is an Expr, |alignType| is a type''' + self.basetype = basetype + self.nmemb = nmemb ++ self.alignType = alignType + def __deepcopy__(self, memo): +- return TypeArray(deepcopy(self.basetype, memo), nmemb) ++ return TypeArray(deepcopy(self.basetype, memo), nmemb, alignType) + + class TypeEnum(Node): + def __init__(self, name=None): +diff --git ipc/ipdl/ipdl/cxx/cgen.py ipc/ipdl/ipdl/cxx/cgen.py +index 48b0988..bc914cf 100644 +--- ipc/ipdl/ipdl/cxx/cgen.py ++++ ipc/ipdl/ipdl/cxx/cgen.py +@@ -101,6 +101,7 @@ class CxxCodeGen(CodePrinter, Visitor): + def visitDecl(self, d): + # C-syntax arrays make code generation much more annoying + if isinstance(d.type, TypeArray): ++ self.write('MOZ_ALIGNED_DECL(') + d.type.basetype.accept(self) + else: + d.type.accept(self) +@@ -111,7 +112,9 @@ class CxxCodeGen(CodePrinter, Visitor): + if isinstance(d.type, TypeArray): + self.write('[') + d.type.nmemb.accept(self) +- self.write(']') ++ self.write('], MOZ_ALIGNOF(') ++ d.type.alignType.accept(self) ++ self.write('))') + + def visitParam(self, p): + self.visitDecl(p) +diff --git ipc/ipdl/ipdl/lower.py ipc/ipdl/ipdl/lower.py +index e97a34c..9360f3c 100644 +--- ipc/ipdl/ipdl/lower.py ++++ ipc/ipdl/ipdl/lower.py +@@ -768,7 +768,7 @@ IPDL union type.""" + if self.recursive: + return self.ptrToType() + else: +- return TypeArray(Type('char'), ExprSizeof(self.internalType())) ++ return TypeArray(Type('char'), ExprSizeof(self.internalType()), self.internalType()) + + def unionValue(self): + # NB: knows that Union's storage C union is named |mValue| |