mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-18 22:54:00 +00:00
extra/chromium build fixes
This commit is contained in:
parent
12edc6efdc
commit
ee5bbb2bf4
5 changed files with 58 additions and 600 deletions
|
@ -12,13 +12,13 @@
|
|||
# - removed NaCl, not for ARM
|
||||
# - adjusted gyp flags for v7h
|
||||
# - use system ffmpeg, added ffmpeg to depends
|
||||
# - patch to fix webrtc code for non-android ARM
|
||||
#
|
||||
# moonman <moonman [dot] ca [at] gmail [dot] com>
|
||||
# -added armv6 support
|
||||
|
||||
buildarch=20
|
||||
highmem=1
|
||||
noautobuild=1
|
||||
|
||||
pkgname=chromium
|
||||
pkgver=28.0.1500.52
|
||||
|
@ -43,13 +43,13 @@ source=(http://commondatastorage.googleapis.com/chromium-browser-official/$pkgna
|
|||
chromium.default
|
||||
chromium.sh
|
||||
chromium-system-harfbuzz-r0.patch
|
||||
die-sysroot-die.patch)
|
||||
arm-webrtc-fix.patch)
|
||||
sha256sums=('7b3cbfbb9e5b9d21ffab23d39173611ddb0ba49488795b6db46a62be354518b4'
|
||||
'09bfac44104f4ccda4c228053f689c947b3e97da9a4ab6fa34ce061ee83d0322'
|
||||
'478340d5760a9bd6c549e19b1b5d1c5b4933ebf5f8cfb2b3e2d70d07443fe232'
|
||||
'4999fded897af692f4974f0a3e3bbb215193519918a1fa9b31ed51e74a2dccb9'
|
||||
'2bc4cf17adac9864f4e832e57247984f28fce171d3699c0fc2c3596d1ab20386'
|
||||
'66705264d9e679a58ed522b4475a06c8a5a4fe52a709c537b1a7d5aa43fb6c84')
|
||||
'222ec0db5d40b02e4ebbde8a1f1c5de3f0579e51836be87be138c44f8487d0ce')
|
||||
|
||||
# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
|
||||
# Note: These are for Arch Linux use ONLY. For your own distribution, please
|
||||
|
@ -63,8 +63,8 @@ _google_default_client_secret=0ZChLK6AxeA3Isu96MkwqDR4
|
|||
prepare() {
|
||||
cd "$srcdir/$pkgname-$pkgver"
|
||||
|
||||
# Remove ARM sysroot garbage
|
||||
patch -Np1 -i "$srcdir/die-sysroot-die.patch"
|
||||
# Fix WebRTC for ARM
|
||||
patch -Np2 -i "$srcdir/arm-webrtc-fix.patch"
|
||||
|
||||
# Fix build with system harfbuzz (patch from Gentoo)
|
||||
patch -Np1 -i "$srcdir/chromium-system-harfbuzz-r0.patch"
|
||||
|
@ -150,7 +150,7 @@ fi
|
|||
-Ddisable_nacl=1
|
||||
-Dv8_use_arm_eabi_hardfloat=true
|
||||
-Darm_float_abi=hard
|
||||
-Denable_webrtc=0
|
||||
-Dsysroot=
|
||||
${arch_specific_flags})
|
||||
|
||||
build/linux/unbundle/replace_gyp_files.py "${_chromium_conf[@]}"
|
||||
|
@ -194,5 +194,3 @@ package() {
|
|||
|
||||
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/chromium/LICENSE"
|
||||
}
|
||||
|
||||
# vim:set ts=2 sw=2 et:
|
||||
|
|
52
extra/chromium/arm-webrtc-fix.patch
Normal file
52
extra/chromium/arm-webrtc-fix.patch
Normal file
|
@ -0,0 +1,52 @@
|
|||
Index: b/src/third_party/webrtc/system_wrappers/source/cpu_features.cc
|
||||
===================================================================
|
||||
--- a/src/third_party/webrtc/system_wrappers/source/cpu_features.cc
|
||||
+++ b/src/third_party/webrtc/system_wrappers/source/cpu_features.cc
|
||||
@@ -18,6 +18,47 @@
|
||||
|
||||
#include "typedefs.h"
|
||||
|
||||
+#include <elf.h>
|
||||
+#ifdef __arm__
|
||||
+#include <fcntl.h>
|
||||
+#include <unistd.h>
|
||||
+#include <linux/auxvec.h>
|
||||
+#include <asm/hwcap.h>
|
||||
+#endif
|
||||
+
|
||||
+#ifdef __arm__
|
||||
+uint64_t WebRtc_GetCPUFeaturesARM() {
|
||||
+ static bool detected = false;
|
||||
+ static uint64_t have_neon = 0;
|
||||
+
|
||||
+ int fd;
|
||||
+ Elf32_auxv_t auxv;
|
||||
+ unsigned int hwcaps;
|
||||
+
|
||||
+ if (!detected) {
|
||||
+ int fd;
|
||||
+ Elf32_auxv_t auxv;
|
||||
+ unsigned int hwcaps;
|
||||
+
|
||||
+ fd = open("/proc/self/auxv", O_RDONLY);
|
||||
+ if (fd >= 0) {
|
||||
+ while (read(fd, &auxv, sizeof(Elf32_auxv_t)) == sizeof(Elf32_auxv_t)) {
|
||||
+ if (auxv.a_type == AT_HWCAP) {
|
||||
+ have_neon = (auxv.a_un.a_val & HWCAP_NEON) ? kCPUFeatureNEON : 0;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+ close (fd);
|
||||
+ } else {
|
||||
+ have_neon = 0;
|
||||
+ }
|
||||
+ detected = true;
|
||||
+ }
|
||||
+
|
||||
+ return 0 | have_neon; // others here as we need them
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
// No CPU feature is available => straight C path.
|
||||
int GetCPUInfoNoASM(CPUFeature feature) {
|
||||
(void)feature;
|
|
@ -1,554 +0,0 @@
|
|||
diff --git a/Source/WebCore/css/CSSGrammar.y b/Source/WebCore/css/CSSGrammar.y
|
||||
index c7c10b541cd46ad4febc6efe289e81b2cfb0861e..1c604e76b4da4cc65f395bc4a73b112561bd5c84 100644
|
||||
--- a/Source/WebCore/css/CSSGrammar.y
|
||||
+++ b/Source/WebCore/css/CSSGrammar.y
|
||||
@@ -53,14 +53,13 @@ using namespace HTMLNames;
|
||||
#define YYMAXDEPTH 10000
|
||||
#define YYDEBUG 0
|
||||
|
||||
-// FIXME: Replace with %parse-param { CSSParser* parser } once we can depend on bison 2.x
|
||||
-#define YYPARSE_PARAM parser
|
||||
-#define YYLEX_PARAM parser
|
||||
-
|
||||
%}
|
||||
|
||||
%pure_parser
|
||||
|
||||
+%parse-param { CSSParser* parser }
|
||||
+%lex-param { CSSParser* parser }
|
||||
+
|
||||
%union {
|
||||
bool boolean;
|
||||
char character;
|
||||
@@ -89,7 +88,7 @@ using namespace HTMLNames;
|
||||
|
||||
%{
|
||||
|
||||
-static inline int cssyyerror(const char*)
|
||||
+static inline int cssyyerror(void*, const char*)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
diff --git a/Source/WebCore/css/CSSParser.cpp b/Source/WebCore/css/CSSParser.cpp
|
||||
index 650844060477cfc6ea6fdeaf11ec63b34ac646e7..8369549dbff25537cf93a11237a9bbbac4fe50f2 100644
|
||||
--- a/Source/WebCore/css/CSSParser.cpp
|
||||
+++ b/Source/WebCore/css/CSSParser.cpp
|
||||
@@ -114,7 +114,7 @@
|
||||
extern int cssyydebug;
|
||||
#endif
|
||||
|
||||
-extern int cssyyparse(void* parser);
|
||||
+extern int cssyyparse(WebCore::CSSParser*);
|
||||
|
||||
using namespace std;
|
||||
using namespace WTF;
|
||||
diff --git a/Source/WebCore/xml/XPathGrammar.y b/Source/WebCore/xml/XPathGrammar.y
|
||||
index 2eba5b35bd2338272a0f4ec756d137e47d2d59c8..d558211db2d89ea13716762a51397755560f66f3 100644
|
||||
--- a/Source/WebCore/xml/XPathGrammar.y
|
||||
+++ b/Source/WebCore/xml/XPathGrammar.y
|
||||
@@ -34,6 +34,7 @@
|
||||
#include "XPathParser.h"
|
||||
#include "XPathPath.h"
|
||||
#include "XPathPredicate.h"
|
||||
+#include "XPathStep.h"
|
||||
#include "XPathVariableReference.h"
|
||||
#include <wtf/FastMalloc.h>
|
||||
|
||||
@@ -44,8 +45,6 @@
|
||||
#define YYLTYPE_IS_TRIVIAL 1
|
||||
#define YYDEBUG 0
|
||||
#define YYMAXDEPTH 10000
|
||||
-#define YYPARSE_PARAM parserParameter
|
||||
-#define PARSER static_cast<Parser*>(parserParameter)
|
||||
|
||||
using namespace WebCore;
|
||||
using namespace XPath;
|
||||
@@ -53,6 +52,7 @@ using namespace XPath;
|
||||
%}
|
||||
|
||||
%pure_parser
|
||||
+%parse-param { WebCore::XPath::Parser* parser }
|
||||
|
||||
%union
|
||||
{
|
||||
@@ -71,7 +71,7 @@ using namespace XPath;
|
||||
%{
|
||||
|
||||
static int xpathyylex(YYSTYPE* yylval) { return Parser::current()->lex(yylval); }
|
||||
-static void xpathyyerror(const char*) { }
|
||||
+static void xpathyyerror(void*, const char*) { }
|
||||
|
||||
%}
|
||||
|
||||
@@ -118,7 +118,7 @@ static void xpathyyerror(const char*) { }
|
||||
Expr:
|
||||
OrExpr
|
||||
{
|
||||
- PARSER->m_topExpr = $1;
|
||||
+ parser->m_topExpr = $1;
|
||||
}
|
||||
;
|
||||
|
||||
@@ -138,7 +138,7 @@ AbsoluteLocationPath:
|
||||
'/'
|
||||
{
|
||||
$$ = new LocationPath;
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
'/' RelativeLocationPath
|
||||
@@ -150,7 +150,7 @@ AbsoluteLocationPath:
|
||||
{
|
||||
$$ = $2;
|
||||
$$->insertFirstStep($1);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
+ parser->unregisterParseNode($1);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -159,22 +159,22 @@ RelativeLocationPath:
|
||||
{
|
||||
$$ = new LocationPath;
|
||||
$$->appendStep($1);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
RelativeLocationPath '/' Step
|
||||
{
|
||||
$$->appendStep($3);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
+ parser->unregisterParseNode($3);
|
||||
}
|
||||
|
|
||||
RelativeLocationPath DescendantOrSelf Step
|
||||
{
|
||||
$$->appendStep($2);
|
||||
$$->appendStep($3);
|
||||
- PARSER->unregisterParseNode($2);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
+ parser->unregisterParseNode($2);
|
||||
+ parser->unregisterParseNode($3);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -183,58 +183,58 @@ Step:
|
||||
{
|
||||
if ($2) {
|
||||
$$ = new Step(Step::ChildAxis, *$1, *$2);
|
||||
- PARSER->deletePredicateVector($2);
|
||||
+ parser->deletePredicateVector($2);
|
||||
} else
|
||||
$$ = new Step(Step::ChildAxis, *$1);
|
||||
- PARSER->deleteNodeTest($1);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->deleteNodeTest($1);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
NAMETEST OptionalPredicateList
|
||||
{
|
||||
String localName;
|
||||
String namespaceURI;
|
||||
- if (!PARSER->expandQName(*$1, localName, namespaceURI)) {
|
||||
- PARSER->m_gotNamespaceError = true;
|
||||
+ if (!parser->expandQName(*$1, localName, namespaceURI)) {
|
||||
+ parser->m_gotNamespaceError = true;
|
||||
YYABORT;
|
||||
}
|
||||
|
||||
if ($2) {
|
||||
$$ = new Step(Step::ChildAxis, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI), *$2);
|
||||
- PARSER->deletePredicateVector($2);
|
||||
+ parser->deletePredicateVector($2);
|
||||
} else
|
||||
$$ = new Step(Step::ChildAxis, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI));
|
||||
- PARSER->deleteString($1);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->deleteString($1);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
AxisSpecifier NodeTest OptionalPredicateList
|
||||
{
|
||||
if ($3) {
|
||||
$$ = new Step($1, *$2, *$3);
|
||||
- PARSER->deletePredicateVector($3);
|
||||
+ parser->deletePredicateVector($3);
|
||||
} else
|
||||
$$ = new Step($1, *$2);
|
||||
- PARSER->deleteNodeTest($2);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->deleteNodeTest($2);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
AxisSpecifier NAMETEST OptionalPredicateList
|
||||
{
|
||||
String localName;
|
||||
String namespaceURI;
|
||||
- if (!PARSER->expandQName(*$2, localName, namespaceURI)) {
|
||||
- PARSER->m_gotNamespaceError = true;
|
||||
+ if (!parser->expandQName(*$2, localName, namespaceURI)) {
|
||||
+ parser->m_gotNamespaceError = true;
|
||||
YYABORT;
|
||||
}
|
||||
|
||||
if ($3) {
|
||||
$$ = new Step($1, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI), *$3);
|
||||
- PARSER->deletePredicateVector($3);
|
||||
+ parser->deletePredicateVector($3);
|
||||
} else
|
||||
$$ = new Step($1, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI));
|
||||
- PARSER->deleteString($2);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->deleteString($2);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
AbbreviatedStep
|
||||
@@ -259,23 +259,23 @@ NodeTest:
|
||||
else if (*$1 == "comment")
|
||||
$$ = new Step::NodeTest(Step::NodeTest::CommentNodeTest);
|
||||
|
||||
- PARSER->deleteString($1);
|
||||
- PARSER->registerNodeTest($$);
|
||||
+ parser->deleteString($1);
|
||||
+ parser->registerNodeTest($$);
|
||||
}
|
||||
|
|
||||
PI '(' ')'
|
||||
{
|
||||
$$ = new Step::NodeTest(Step::NodeTest::ProcessingInstructionNodeTest);
|
||||
- PARSER->deleteString($1);
|
||||
- PARSER->registerNodeTest($$);
|
||||
+ parser->deleteString($1);
|
||||
+ parser->registerNodeTest($$);
|
||||
}
|
||||
|
|
||||
PI '(' LITERAL ')'
|
||||
{
|
||||
$$ = new Step::NodeTest(Step::NodeTest::ProcessingInstructionNodeTest, $3->stripWhiteSpace());
|
||||
- PARSER->deleteString($1);
|
||||
- PARSER->deleteString($3);
|
||||
- PARSER->registerNodeTest($$);
|
||||
+ parser->deleteString($1);
|
||||
+ parser->deleteString($3);
|
||||
+ parser->registerNodeTest($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -293,14 +293,14 @@ PredicateList:
|
||||
{
|
||||
$$ = new Vector<Predicate*>;
|
||||
$$->append(new Predicate($1));
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->registerPredicateVector($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->registerPredicateVector($$);
|
||||
}
|
||||
|
|
||||
PredicateList Predicate
|
||||
{
|
||||
$$->append(new Predicate($2));
|
||||
- PARSER->unregisterParseNode($2);
|
||||
+ parser->unregisterParseNode($2);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -315,7 +315,7 @@ DescendantOrSelf:
|
||||
SLASHSLASH
|
||||
{
|
||||
$$ = new Step(Step::DescendantOrSelfAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest));
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -323,13 +323,13 @@ AbbreviatedStep:
|
||||
'.'
|
||||
{
|
||||
$$ = new Step(Step::SelfAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest));
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
DOTDOT
|
||||
{
|
||||
$$ = new Step(Step::ParentAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest));
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -337,8 +337,8 @@ PrimaryExpr:
|
||||
VARIABLEREFERENCE
|
||||
{
|
||||
$$ = new VariableReference(*$1);
|
||||
- PARSER->deleteString($1);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->deleteString($1);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
'(' Expr ')'
|
||||
@@ -349,15 +349,15 @@ PrimaryExpr:
|
||||
LITERAL
|
||||
{
|
||||
$$ = new StringExpression(*$1);
|
||||
- PARSER->deleteString($1);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->deleteString($1);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
NUMBER
|
||||
{
|
||||
$$ = new Number($1->toDouble());
|
||||
- PARSER->deleteString($1);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->deleteString($1);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
FunctionCall
|
||||
@@ -369,8 +369,8 @@ FunctionCall:
|
||||
$$ = createFunction(*$1);
|
||||
if (!$$)
|
||||
YYABORT;
|
||||
- PARSER->deleteString($1);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->deleteString($1);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
FUNCTIONNAME '(' ArgumentList ')'
|
||||
@@ -378,9 +378,9 @@ FunctionCall:
|
||||
$$ = createFunction(*$1, *$3);
|
||||
if (!$$)
|
||||
YYABORT;
|
||||
- PARSER->deleteString($1);
|
||||
- PARSER->deleteExpressionVector($3);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->deleteString($1);
|
||||
+ parser->deleteExpressionVector($3);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -389,14 +389,14 @@ ArgumentList:
|
||||
{
|
||||
$$ = new Vector<Expression*>;
|
||||
$$->append($1);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->registerExpressionVector($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->registerExpressionVector($$);
|
||||
}
|
||||
|
|
||||
ArgumentList ',' Argument
|
||||
{
|
||||
$$->append($3);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
+ parser->unregisterParseNode($3);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -412,9 +412,9 @@ UnionExpr:
|
||||
$$ = new Union;
|
||||
$$->addSubExpression($1);
|
||||
$$->addSubExpression($3);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->unregisterParseNode($3);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -430,9 +430,9 @@ PathExpr:
|
||||
{
|
||||
$3->setAbsolute(true);
|
||||
$$ = new Path(static_cast<Filter*>($1), $3);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->unregisterParseNode($3);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
FilterExpr DescendantOrSelf RelativeLocationPath
|
||||
@@ -440,10 +440,10 @@ PathExpr:
|
||||
$3->insertFirstStep($2);
|
||||
$3->setAbsolute(true);
|
||||
$$ = new Path(static_cast<Filter*>($1), $3);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->unregisterParseNode($2);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->unregisterParseNode($2);
|
||||
+ parser->unregisterParseNode($3);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -453,9 +453,9 @@ FilterExpr:
|
||||
PrimaryExpr PredicateList
|
||||
{
|
||||
$$ = new Filter($1, *$2);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->deletePredicateVector($2);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->deletePredicateVector($2);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -465,9 +465,9 @@ OrExpr:
|
||||
OrExpr OR AndExpr
|
||||
{
|
||||
$$ = new LogicalOp(LogicalOp::OP_Or, $1, $3);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->unregisterParseNode($3);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -477,9 +477,9 @@ AndExpr:
|
||||
AndExpr AND EqualityExpr
|
||||
{
|
||||
$$ = new LogicalOp(LogicalOp::OP_And, $1, $3);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->unregisterParseNode($3);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -489,9 +489,9 @@ EqualityExpr:
|
||||
EqualityExpr EQOP RelationalExpr
|
||||
{
|
||||
$$ = new EqTestOp($2, $1, $3);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->unregisterParseNode($3);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -501,9 +501,9 @@ RelationalExpr:
|
||||
RelationalExpr RELOP AdditiveExpr
|
||||
{
|
||||
$$ = new EqTestOp($2, $1, $3);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->unregisterParseNode($3);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -513,17 +513,17 @@ AdditiveExpr:
|
||||
AdditiveExpr PLUS MultiplicativeExpr
|
||||
{
|
||||
$$ = new NumericOp(NumericOp::OP_Add, $1, $3);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->unregisterParseNode($3);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
|
|
||||
AdditiveExpr MINUS MultiplicativeExpr
|
||||
{
|
||||
$$ = new NumericOp(NumericOp::OP_Sub, $1, $3);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->unregisterParseNode($3);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -533,9 +533,9 @@ MultiplicativeExpr:
|
||||
MultiplicativeExpr MULOP UnaryExpr
|
||||
{
|
||||
$$ = new NumericOp($2, $1, $3);
|
||||
- PARSER->unregisterParseNode($1);
|
||||
- PARSER->unregisterParseNode($3);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($1);
|
||||
+ parser->unregisterParseNode($3);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
@@ -546,8 +546,8 @@ UnaryExpr:
|
||||
{
|
||||
$$ = new Negative;
|
||||
$$->addSubExpression($2);
|
||||
- PARSER->unregisterParseNode($2);
|
||||
- PARSER->registerParseNode($$);
|
||||
+ parser->unregisterParseNode($2);
|
||||
+ parser->registerParseNode($$);
|
||||
}
|
||||
;
|
||||
|
||||
diff --git a/Source/WebCore/xml/XPathParser.cpp b/Source/WebCore/xml/XPathParser.cpp
|
||||
index 62d8ee37fd6ebb74a580a00c59beb6cd40c5a8b7..b5e6a9237593b4aaa2a243f2ff9d86e57f930a97 100644
|
||||
--- a/Source/WebCore/xml/XPathParser.cpp
|
||||
+++ b/Source/WebCore/xml/XPathParser.cpp
|
||||
@@ -32,24 +32,21 @@
|
||||
#include "XPathEvaluator.h"
|
||||
#include "XPathException.h"
|
||||
#include "XPathNSResolver.h"
|
||||
+#include "XPathPath.h"
|
||||
#include "XPathStep.h"
|
||||
#include <wtf/StdLibExtras.h>
|
||||
#include <wtf/text/StringHash.h>
|
||||
|
||||
-int xpathyyparse(void*);
|
||||
-
|
||||
+using namespace WebCore;
|
||||
using namespace WTF;
|
||||
using namespace Unicode;
|
||||
+using namespace XPath;
|
||||
|
||||
-namespace WebCore {
|
||||
-namespace XPath {
|
||||
-
|
||||
-class LocationPath;
|
||||
-
|
||||
-#include "XPathGrammar.h"
|
||||
+extern int xpathyyparse(WebCore::XPath::Parser*);
|
||||
+#include "XPathGrammar.h"
|
||||
|
||||
Parser* Parser::currentParser = 0;
|
||||
-
|
||||
+
|
||||
enum XMLCat { NameStart, NameCont, NotPartOfName };
|
||||
|
||||
typedef HashMap<String, Step::Axis> AxisNamesMap;
|
||||
@@ -630,5 +627,3 @@ void Parser::deleteNodeTest(Step::NodeTest* t)
|
||||
delete t;
|
||||
}
|
||||
|
||||
-}
|
||||
-}
|
|
@ -1,27 +0,0 @@
|
|||
Index: chrome/browser/extensions/lazy_background_task_queue.cc
|
||||
diff --git a/chrome/browser/extensions/lazy_background_task_queue.cc b/chrome/browser/extensions/lazy_background_task_queue.cc
|
||||
index b98d44626be848a3a2db04c60ac4cb11ea981243..49bc2229325ce5ba975de4d76347a388a598e86d 100644
|
||||
--- a/chrome/browser/extensions/lazy_background_task_queue.cc
|
||||
+++ b/chrome/browser/extensions/lazy_background_task_queue.cc
|
||||
@@ -115,14 +115,16 @@ void LazyBackgroundTaskQueue::ProcessPendingTasks(
|
||||
return;
|
||||
}
|
||||
|
||||
- PendingTasksList* tasks = map_it->second.get();
|
||||
- for (PendingTasksList::const_iterator it = tasks->begin();
|
||||
- it != tasks->end(); ++it) {
|
||||
+ // Swap the pending tasks to a temporary, to avoid problems if the task
|
||||
+ // list is modified during processing.
|
||||
+ PendingTasksList tasks;
|
||||
+ tasks.swap(*map_it->second);
|
||||
+ for (PendingTasksList::const_iterator it = tasks.begin();
|
||||
+ it != tasks.end(); ++it) {
|
||||
it->Run(host);
|
||||
}
|
||||
|
||||
- tasks->clear();
|
||||
- pending_tasks_.erase(map_it);
|
||||
+ pending_tasks_.erase(key);
|
||||
|
||||
// Balance the keepalive in AddPendingTask. Note we don't do this on a
|
||||
// failure to load, because the keepalive count is reset in that case.
|
|
@ -1,11 +0,0 @@
|
|||
--- a/build/common.gypi 2013-01-09 07:02:00.000000000 -0700
|
||||
+++ b/build/common.gypi 2013-01-11 20:09:13.380197474 -0700
|
||||
@@ -594,7 +594,7 @@
|
||||
'linux_use_gold_flags%': 0,
|
||||
# sysroot needs to be an absolute path otherwise it generates
|
||||
# incorrect results when passed to pkg-config
|
||||
- 'sysroot%': '<!(cd <(DEPTH) && pwd -P)/arm-sysroot',
|
||||
+ #'sysroot%': '<!(cd <(DEPTH) && pwd -P)/arm-sysroot',
|
||||
}], # OS=="linux" and target_arch=="arm" and chromeos==0
|
||||
],
|
||||
|
Loading…
Reference in a new issue