[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
commit-queue at webkit.org
commit-queue at webkit.org
Wed Dec 22 14:56:02 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit 07bfede5c18ecaaa7beca4af718febf778b4bff5
Author: commit-queue at webkit.org <commit-queue at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Oct 25 17:44:32 2010 +0000
2010-10-25 Sheriff Bot <webkit.review.bot at gmail.com>
Unreviewed, rolling out r70451.
http://trac.webkit.org/changeset/70451
https://bugs.webkit.org/show_bug.cgi?id=48249
Broke set-unloaded-frame-location.html under Qt (Requested by
caseq on #webkit).
* GNUmakefile.am:
* JavaScriptCore.gypi:
* JavaScriptCore.xcodeproj/project.pbxproj:
* wtf/text/TextPosition.h: Removed.
2010-10-25 Sheriff Bot <webkit.review.bot at gmail.com>
Unreviewed, rolling out r70451.
http://trac.webkit.org/changeset/70451
https://bugs.webkit.org/show_bug.cgi?id=48249
Broke set-unloaded-frame-location.html under Qt (Requested by
caseq on #webkit).
* ForwardingHeaders/wtf/text/TextPosition.h: Removed.
2010-10-25 Sheriff Bot <webkit.review.bot at gmail.com>
Unreviewed, rolling out r70451.
http://trac.webkit.org/changeset/70451
https://bugs.webkit.org/show_bug.cgi?id=48249
Broke set-unloaded-frame-location.html under Qt (Requested by
caseq on #webkit).
* ForwardingHeaders/wtf/text/TextPosition.h: Removed.
* bindings/js/ScriptSourceCode.h:
(WebCore::ScriptSourceCode::ScriptSourceCode):
* bindings/v8/ScheduledAction.cpp:
(WebCore::ScheduledAction::ScheduledAction):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::eventHandlerLineNumber):
(WebCore::ScriptController::eventHandlerColumnNumber):
* bindings/v8/ScriptController.h:
* bindings/v8/ScriptEventListener.cpp:
(WebCore::createAttributeEventListener):
* bindings/v8/ScriptSourceCode.h:
(WebCore::ScriptSourceCode::ScriptSourceCode):
(WebCore::ScriptSourceCode::startLine):
* bindings/v8/V8LazyEventListener.cpp:
(WebCore::V8LazyEventListener::V8LazyEventListener):
(WebCore::V8LazyEventListener::prepareListenerObject):
* bindings/v8/V8LazyEventListener.h:
(WebCore::V8LazyEventListener::create):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::compileScript):
(WebCore::V8Proxy::evaluate):
(WebCore::V8Proxy::runScript):
* bindings/v8/V8Proxy.h:
* bindings/v8/WorkerContextExecutionProxy.cpp:
(WebCore::WorkerContextExecutionProxy::evaluate):
(WebCore::WorkerContextExecutionProxy::runScript):
* bindings/v8/WorkerContextExecutionProxy.h:
* bindings/v8/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::evaluate):
* dom/PendingScript.cpp:
(WebCore::PendingScript::releaseElementAndClear):
* dom/PendingScript.h:
(WebCore::PendingScript::PendingScript):
(WebCore::PendingScript::operator=):
(WebCore::PendingScript::startingLineNumber):
* dom/ScriptableDocumentParser.h:
* dom/XMLDocumentParser.h:
* dom/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser):
(WebCore::XMLDocumentParser::startElementNs):
(WebCore::XMLDocumentParser::endElementNs):
(WebCore::XMLDocumentParser::lineNumber):
(WebCore::XMLDocumentParser::columnNumber):
* dom/XMLDocumentParserQt.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser):
(WebCore::XMLDocumentParser::parseStartElement):
(WebCore::XMLDocumentParser::parseEndElement):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
(WebCore::HTMLDocumentParser::columnNumber):
* html/parser/HTMLDocumentParser.h:
* html/parser/HTMLScriptRunner.cpp:
(WebCore::HTMLScriptRunner::sourceFromPendingScript):
(WebCore::HTMLScriptRunner::execute):
(WebCore::HTMLScriptRunner::runScript):
* html/parser/HTMLScriptRunner.h:
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
(WebCore::HTMLTreeBuilder::takeScriptToProcess):
(WebCore::HTMLTreeBuilder::processEndTag):
(WebCore::HTMLTreeBuilder::processScriptStartTag):
* html/parser/HTMLTreeBuilder.h:
2010-10-25 Sheriff Bot <webkit.review.bot at gmail.com>
Unreviewed, rolling out r70451.
http://trac.webkit.org/changeset/70451
https://bugs.webkit.org/show_bug.cgi?id=48249
Broke set-unloaded-frame-location.html under Qt (Requested by
caseq on #webkit).
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::executeScript):
(WebKit::WebFrameImpl::executeScriptInIsolatedWorld):
(WebKit::WebFrameImpl::executeScriptAndReturnValue):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@70463 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/JavaScriptCore/ChangeLog b/JavaScriptCore/ChangeLog
index e42c7dd..1cb5c99 100644
--- a/JavaScriptCore/ChangeLog
+++ b/JavaScriptCore/ChangeLog
@@ -1,3 +1,17 @@
+2010-10-25 Sheriff Bot <webkit.review.bot at gmail.com>
+
+ Unreviewed, rolling out r70451.
+ http://trac.webkit.org/changeset/70451
+ https://bugs.webkit.org/show_bug.cgi?id=48249
+
+ Broke set-unloaded-frame-location.html under Qt (Requested by
+ caseq on #webkit).
+
+ * GNUmakefile.am:
+ * JavaScriptCore.gypi:
+ * JavaScriptCore.xcodeproj/project.pbxproj:
+ * wtf/text/TextPosition.h: Removed.
+
2010-10-25 Patrick Gansterer <paroga at webkit.org>
Reviewed by David Kilzer.
diff --git a/JavaScriptCore/GNUmakefile.am b/JavaScriptCore/GNUmakefile.am
index f7806b4..c507f5d 100644
--- a/JavaScriptCore/GNUmakefile.am
+++ b/JavaScriptCore/GNUmakefile.am
@@ -518,7 +518,6 @@ javascriptcore_sources += \
JavaScriptCore/wtf/text/StringImpl.cpp \
JavaScriptCore/wtf/text/StringImpl.h \
JavaScriptCore/wtf/text/StringStatics.cpp \
- JavaScriptCore/wtf/text/TextPosition.h \
JavaScriptCore/wtf/text/WTFString.cpp \
JavaScriptCore/wtf/text/WTFString.h \
JavaScriptCore/wtf/ThreadIdentifierDataPthreads.cpp \
diff --git a/JavaScriptCore/JavaScriptCore.gypi b/JavaScriptCore/JavaScriptCore.gypi
index deb36fb..6252d07 100644
--- a/JavaScriptCore/JavaScriptCore.gypi
+++ b/JavaScriptCore/JavaScriptCore.gypi
@@ -461,7 +461,6 @@
'wtf/text/StringImpl.cpp',
'wtf/text/StringImpl.h',
'wtf/text/StringStatics.cpp',
- 'wtf/text/TextPosition.h',
'wtf/text/WTFString.cpp',
'wtf/text/WTFString.h',
'wtf/unicode/Collator.h',
diff --git a/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj b/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
index b40d74e..d134a73 100644
--- a/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
+++ b/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
@@ -555,7 +555,6 @@
E1EE793D0D6C9B9200FEA3BA /* ThreadingPthreads.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E1EE793C0D6C9B9200FEA3BA /* ThreadingPthreads.cpp */; };
E1EF79AA0CE97BA60088D500 /* UTF8.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E1EF79A80CE97BA60088D500 /* UTF8.cpp */; };
E48E0F2D0F82151700A8CA37 /* FastAllocBase.h in Headers */ = {isa = PBXBuildFile; fileRef = E48E0F2C0F82151700A8CA37 /* FastAllocBase.h */; settings = {ATTRIBUTES = (Private, ); }; };
- F3BD31ED126735770065467F /* TextPosition.h in Headers */ = {isa = PBXBuildFile; fileRef = F3BD31D0126730180065467F /* TextPosition.h */; settings = {ATTRIBUTES = (Private, ); }; };
FE1B447A0ECCD73B004F4DD1 /* StdLibExtras.h in Headers */ = {isa = PBXBuildFile; fileRef = FE1B44790ECCD73B004F4DD1 /* StdLibExtras.h */; settings = {ATTRIBUTES = (Private, ); }; };
/* End PBXBuildFile section */
@@ -1145,7 +1144,6 @@
E1EF79A80CE97BA60088D500 /* UTF8.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UTF8.cpp; sourceTree = "<group>"; };
E1EF79A90CE97BA60088D500 /* UTF8.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UTF8.h; sourceTree = "<group>"; };
E48E0F2C0F82151700A8CA37 /* FastAllocBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FastAllocBase.h; sourceTree = "<group>"; };
- F3BD31D0126730180065467F /* TextPosition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TextPosition.h; path = text/TextPosition.h; sourceTree = "<group>"; };
F5BB2BC5030F772101FCFE1D /* Completion.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = Completion.h; sourceTree = "<group>"; tabWidth = 8; };
F5C290E60284F98E018635CA /* JavaScriptCorePrefix.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = JavaScriptCorePrefix.h; sourceTree = "<group>"; tabWidth = 8; };
F68EBB8C0255D4C601FF60F7 /* config.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = config.h; sourceTree = "<group>"; tabWidth = 8; };
@@ -1862,7 +1860,6 @@
868BFA07117CEFD100B908B1 /* StringImpl.h */,
86B99AE2117E578100DF5A90 /* StringImplBase.h */,
8626BECE11928E3900782FAB /* StringStatics.cpp */,
- F3BD31D0126730180065467F /* TextPosition.h */,
868BFA15117CF19900B908B1 /* WTFString.cpp */,
868BFA16117CF19900B908B1 /* WTFString.h */,
);
@@ -2352,7 +2349,6 @@
90213E3E123A40C200D422F3 /* MemoryStatistics.h in Headers */,
A730B6121250068F009D25B1 /* StrictEvalActivation.h in Headers */,
933F5CDC1269229B0049191E /* NullPtr.h in Headers */,
- F3BD31ED126735770065467F /* TextPosition.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
diff --git a/JavaScriptCore/wtf/text/TextPosition.h b/JavaScriptCore/wtf/text/TextPosition.h
deleted file mode 100644
index 63dc594..0000000
--- a/JavaScriptCore/wtf/text/TextPosition.h
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Copyright (C) 2010, Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
- * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef TextPosition_h
-#define TextPosition_h
-
-#include <wtf/Assertions.h>
-
-namespace WTF {
-
-/*
- * Text Position
- *
- * TextPosition structure specifies coordinates within an text resource. It is used mostly
- * for saving script source position.
- *
- * Later TextPosition0 and TextPosition1 and both number types can be merged together quite easily.
- *
- * 0-based and 1-based
- *
- * Line and column numbers could be interpreted as zero-based or 1-based. Since
- * both practices coexist in WebKit source base, 'int' type should be replaced with
- * a dedicated wrapper types, so that compiler helped us with this ambiguity.
- *
- * Here we introduce 2 types of numbers: ZeroBasedNumber and OneBasedNumber and
- * 2 corresponding types of TextPosition structure. While only one type ought to be enough,
- * this is done to keep transition to the new types as transparent as possible:
- * e.g. in areas where 0-based integers are used, TextPosition0 should be introduced. This
- * way all changes will remain trackable.
- *
- * Later both number types can be merged in one type quite easily.
- *
- * For type safety and for the future type merge it is important that all operations in API
- * that accept or return integer have a name explicitly defining base of integer. For this reason
- * int-receiving constructors are hidden from API.
- */
-
-template<typename NUMBER>
-class TextPosition {
-public:
- TextPosition(NUMBER line, NUMBER column)
- : m_line(line)
- , m_column(column)
- {
- }
- TextPosition() {}
-
- // A 'minimum' value of position, used as a default value.
- static TextPosition<NUMBER> minimumPosition() { return TextPosition<NUMBER>(NUMBER::base(), NUMBER::base()); }
-
- // A value with line value less than a minimum; used as an impossible position.
- static TextPosition<NUMBER> belowRangePosition() { return TextPosition<NUMBER>(NUMBER::belowBase(), NUMBER::base()); }
-
- NUMBER m_line;
- NUMBER m_column;
-};
-
-class OneBasedNumber;
-
-// An int wrapper that always reminds you that the number should be 0-based
-class ZeroBasedNumber {
-public:
- static ZeroBasedNumber fromZeroBasedInt(int zeroBasedInt) { return ZeroBasedNumber(zeroBasedInt); }
-
- ZeroBasedNumber() {}
-
- int zeroBasedInt() const { return m_value; }
-
- OneBasedNumber convertToOneBased() const;
-
- static ZeroBasedNumber base() { return 0; }
- static ZeroBasedNumber belowBase() { return -1; }
-
-private:
- ZeroBasedNumber(int value) : m_value(value) {}
- int m_value;
-};
-
-// An int wrapper that always reminds you that the number should be 1-based
-class OneBasedNumber {
-public:
- static OneBasedNumber fromOneBasedInt(int oneBasedInt) { return OneBasedNumber(oneBasedInt); }
- OneBasedNumber() {}
-
- int oneBasedInt() const { return m_value; }
- int convertAsZeroBasedInt() const { return m_value - 1; }
- ZeroBasedNumber convertToZeroBased() const { return ZeroBasedNumber::fromZeroBasedInt(m_value - 1); }
-
- static OneBasedNumber base() { return 1; }
- static OneBasedNumber belowBase() { return 0; }
-
-private:
- OneBasedNumber(int value) : m_value(value) {}
- int m_value;
-};
-
-typedef TextPosition<ZeroBasedNumber> TextPosition0;
-typedef TextPosition<OneBasedNumber> TextPosition1;
-
-inline TextPosition0 toZeroBasedTextPosition(const TextPosition1& position)
-{
- return TextPosition0(position.m_line.convertToZeroBased(), position.m_column.convertToZeroBased());
-}
-
-inline TextPosition1 toOneBasedTextPosition(const TextPosition0& position)
-{
- return TextPosition1(position.m_line.convertToOneBased(), position.m_column.convertToOneBased());
-}
-
-inline OneBasedNumber ZeroBasedNumber::convertToOneBased() const
-{
- return OneBasedNumber::fromOneBasedInt(m_value + 1);
-}
-
-}
-
-using WTF::TextPosition0;
-using WTF::TextPosition1;
-
-#endif // TextPosition_h
diff --git a/JavaScriptGlue/ChangeLog b/JavaScriptGlue/ChangeLog
index 4da0a9b..977baa4 100644
--- a/JavaScriptGlue/ChangeLog
+++ b/JavaScriptGlue/ChangeLog
@@ -1,3 +1,14 @@
+2010-10-25 Sheriff Bot <webkit.review.bot at gmail.com>
+
+ Unreviewed, rolling out r70451.
+ http://trac.webkit.org/changeset/70451
+ https://bugs.webkit.org/show_bug.cgi?id=48249
+
+ Broke set-unloaded-frame-location.html under Qt (Requested by
+ caseq on #webkit).
+
+ * ForwardingHeaders/wtf/text/TextPosition.h: Removed.
+
2010-10-16 Patrick Gansterer <paroga at webkit.org>
Reviewed by Adam Barth.
diff --git a/JavaScriptGlue/ForwardingHeaders/wtf/text/TextPosition.h b/JavaScriptGlue/ForwardingHeaders/wtf/text/TextPosition.h
deleted file mode 100644
index bd4f09b..0000000
--- a/JavaScriptGlue/ForwardingHeaders/wtf/text/TextPosition.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <JavaScriptCore/TextPosition.h>
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index dc66ebb..e3efb77 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,76 @@
+2010-10-25 Sheriff Bot <webkit.review.bot at gmail.com>
+
+ Unreviewed, rolling out r70451.
+ http://trac.webkit.org/changeset/70451
+ https://bugs.webkit.org/show_bug.cgi?id=48249
+
+ Broke set-unloaded-frame-location.html under Qt (Requested by
+ caseq on #webkit).
+
+ * ForwardingHeaders/wtf/text/TextPosition.h: Removed.
+ * bindings/js/ScriptSourceCode.h:
+ (WebCore::ScriptSourceCode::ScriptSourceCode):
+ * bindings/v8/ScheduledAction.cpp:
+ (WebCore::ScheduledAction::ScheduledAction):
+ * bindings/v8/ScriptController.cpp:
+ (WebCore::ScriptController::eventHandlerLineNumber):
+ (WebCore::ScriptController::eventHandlerColumnNumber):
+ * bindings/v8/ScriptController.h:
+ * bindings/v8/ScriptEventListener.cpp:
+ (WebCore::createAttributeEventListener):
+ * bindings/v8/ScriptSourceCode.h:
+ (WebCore::ScriptSourceCode::ScriptSourceCode):
+ (WebCore::ScriptSourceCode::startLine):
+ * bindings/v8/V8LazyEventListener.cpp:
+ (WebCore::V8LazyEventListener::V8LazyEventListener):
+ (WebCore::V8LazyEventListener::prepareListenerObject):
+ * bindings/v8/V8LazyEventListener.h:
+ (WebCore::V8LazyEventListener::create):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::compileScript):
+ (WebCore::V8Proxy::evaluate):
+ (WebCore::V8Proxy::runScript):
+ * bindings/v8/V8Proxy.h:
+ * bindings/v8/WorkerContextExecutionProxy.cpp:
+ (WebCore::WorkerContextExecutionProxy::evaluate):
+ (WebCore::WorkerContextExecutionProxy::runScript):
+ * bindings/v8/WorkerContextExecutionProxy.h:
+ * bindings/v8/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::evaluate):
+ * dom/PendingScript.cpp:
+ (WebCore::PendingScript::releaseElementAndClear):
+ * dom/PendingScript.h:
+ (WebCore::PendingScript::PendingScript):
+ (WebCore::PendingScript::operator=):
+ (WebCore::PendingScript::startingLineNumber):
+ * dom/ScriptableDocumentParser.h:
+ * dom/XMLDocumentParser.h:
+ * dom/XMLDocumentParserLibxml2.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::startElementNs):
+ (WebCore::XMLDocumentParser::endElementNs):
+ (WebCore::XMLDocumentParser::lineNumber):
+ (WebCore::XMLDocumentParser::columnNumber):
+ * dom/XMLDocumentParserQt.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::parseStartElement):
+ (WebCore::XMLDocumentParser::parseEndElement):
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
+ (WebCore::HTMLDocumentParser::columnNumber):
+ * html/parser/HTMLDocumentParser.h:
+ * html/parser/HTMLScriptRunner.cpp:
+ (WebCore::HTMLScriptRunner::sourceFromPendingScript):
+ (WebCore::HTMLScriptRunner::execute):
+ (WebCore::HTMLScriptRunner::runScript):
+ * html/parser/HTMLScriptRunner.h:
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
+ (WebCore::HTMLTreeBuilder::takeScriptToProcess):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processScriptStartTag):
+ * html/parser/HTMLTreeBuilder.h:
+
2010-10-25 Kwang Yul Seo <skyul at company100.net>
Unreviewed build fix for r70095.
diff --git a/WebCore/ForwardingHeaders/wtf/text/TextPosition.h b/WebCore/ForwardingHeaders/wtf/text/TextPosition.h
deleted file mode 100644
index 1600984..0000000
--- a/WebCore/ForwardingHeaders/wtf/text/TextPosition.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#ifndef WebCore_FWD_TextPosition_h
-#define WebCore_FWD_TextPosition_h
-#include <JavaScriptCore/TextPosition.h>
-#endif
diff --git a/WebCore/bindings/js/ScriptSourceCode.h b/WebCore/bindings/js/ScriptSourceCode.h
index 092eeb8..32d6298 100644
--- a/WebCore/bindings/js/ScriptSourceCode.h
+++ b/WebCore/bindings/js/ScriptSourceCode.h
@@ -35,16 +35,15 @@
#include "ScriptSourceProvider.h"
#include "StringSourceProvider.h"
#include "KURL.h"
-#include <wtf/text/TextPosition.h>
#include <wtf/RefPtr.h>
namespace WebCore {
class ScriptSourceCode {
public:
- ScriptSourceCode(const String& source, const KURL& url = KURL(), const TextPosition1& startPosition = TextPosition1::minimumPosition())
+ ScriptSourceCode(const String& source, const KURL& url = KURL(), int startLine = 1)
: m_provider(StringSourceProvider::create(source, url.isNull() ? String() : url.string()))
- , m_code(m_provider, startPosition.m_line.oneBasedInt())
+ , m_code(m_provider, startLine)
, m_url(url)
{
}
diff --git a/WebCore/bindings/v8/ScheduledAction.cpp b/WebCore/bindings/v8/ScheduledAction.cpp
index 708fbe6..dcd0bb3 100644
--- a/WebCore/bindings/v8/ScheduledAction.cpp
+++ b/WebCore/bindings/v8/ScheduledAction.cpp
@@ -45,7 +45,7 @@ namespace WebCore {
ScheduledAction::ScheduledAction(v8::Handle<v8::Context> context, v8::Handle<v8::Function> func, int argc, v8::Handle<v8::Value> argv[])
: m_context(context)
- , m_code(String(), KURL(), TextPosition1::belowRangePosition())
+ , m_code(String(), KURL(), 0)
{
m_function = v8::Persistent<v8::Function>::New(func);
diff --git a/WebCore/bindings/v8/ScriptController.cpp b/WebCore/bindings/v8/ScriptController.cpp
index b9d1075..4904a4e 100644
--- a/WebCore/bindings/v8/ScriptController.cpp
+++ b/WebCore/bindings/v8/ScriptController.cpp
@@ -262,12 +262,20 @@ ScriptValue ScriptController::evaluate(const ScriptSourceCode& sourceCode, Shoul
return ScriptValue(object);
}
-TextPosition0 ScriptController::eventHandlerPosition() const
+int ScriptController::eventHandlerLineNumber() const
{
ScriptableDocumentParser* parser = m_frame->document()->scriptableDocumentParser();
if (parser)
- return parser->textPosition();
- return TextPosition0::minimumPosition();
+ return parser->lineNumber();
+ return 0;
+}
+
+int ScriptController::eventHandlerColumnNumber() const
+{
+ ScriptableDocumentParser* parser = m_frame->document()->scriptableDocumentParser();
+ if (parser)
+ return parser->columnNumber();
+ return 0;
}
void ScriptController::finishedWithEvent(Event* event)
diff --git a/WebCore/bindings/v8/ScriptController.h b/WebCore/bindings/v8/ScriptController.h
index d093f39..63f1c17 100644
--- a/WebCore/bindings/v8/ScriptController.h
+++ b/WebCore/bindings/v8/ScriptController.h
@@ -155,7 +155,8 @@ public:
void finishedWithEvent(Event*);
- TextPosition0 eventHandlerPosition() const;
+ int eventHandlerLineNumber() const;
+ int eventHandlerColumnNumber() const;
void setProcessingTimerCallback(bool processingTimerCallback) { m_processingTimerCallback = processingTimerCallback; }
// FIXME: Currently we don't use the parameter world at all.
diff --git a/WebCore/bindings/v8/ScriptEventListener.cpp b/WebCore/bindings/v8/ScriptEventListener.cpp
index b46fc5a..72df79d 100644
--- a/WebCore/bindings/v8/ScriptEventListener.cpp
+++ b/WebCore/bindings/v8/ScriptEventListener.cpp
@@ -50,8 +50,8 @@ PassRefPtr<V8LazyEventListener> createAttributeEventListener(Node* node, Attribu
if (attr->isNull())
return 0;
- // FIXME: Very strange: we initialize zero-based number with '1'.
- TextPosition0 position(WTF::ZeroBasedNumber::fromZeroBasedInt(1), WTF::ZeroBasedNumber::base());
+ int lineNumber = 1;
+ int columnNumber = 0;
String sourceURL;
if (Frame* frame = node->document()->frame()) {
@@ -64,11 +64,12 @@ PassRefPtr<V8LazyEventListener> createAttributeEventListener(Node* node, Attribu
return 0;
}
- position = scriptController->eventHandlerPosition();
+ lineNumber = scriptController->eventHandlerLineNumber();
+ columnNumber = scriptController->eventHandlerColumnNumber();
sourceURL = node->document()->url().string();
}
- return V8LazyEventListener::create(attr->localName().string(), node->isSVGElement(), attr->value(), sourceURL, position, WorldContextHandle(UseMainWorld));
+ return V8LazyEventListener::create(attr->localName().string(), node->isSVGElement(), attr->value(), sourceURL, lineNumber, columnNumber, WorldContextHandle(UseMainWorld));
}
PassRefPtr<V8LazyEventListener> createAttributeEventListener(Frame* frame, Attribute* attr)
@@ -80,6 +81,10 @@ PassRefPtr<V8LazyEventListener> createAttributeEventListener(Frame* frame, Attri
if (attr->isNull())
return 0;
+ int lineNumber = 1;
+ int columnNumber = 0;
+ String sourceURL;
+
ScriptController* scriptController = frame->script();
if (!scriptController->canExecuteScripts(AboutToExecuteScript))
return 0;
@@ -89,9 +94,10 @@ PassRefPtr<V8LazyEventListener> createAttributeEventListener(Frame* frame, Attri
return 0;
}
- TextPosition0 position = scriptController->eventHandlerPosition();
- String sourceURL = frame->document()->url().string();
- return V8LazyEventListener::create(attr->localName().string(), frame->document()->isSVGDocument(), attr->value(), sourceURL, position, WorldContextHandle(UseMainWorld));
+ lineNumber = scriptController->eventHandlerLineNumber();
+ columnNumber = scriptController->eventHandlerColumnNumber();
+ sourceURL = frame->document()->url().string();
+ return V8LazyEventListener::create(attr->localName().string(), frame->document()->isSVGDocument(), attr->value(), sourceURL, lineNumber, columnNumber, WorldContextHandle(UseMainWorld));
}
String eventListenerHandlerBody(Document* document, EventListener* listener)
diff --git a/WebCore/bindings/v8/ScriptSourceCode.h b/WebCore/bindings/v8/ScriptSourceCode.h
index 2478151..dbc9d5e 100644
--- a/WebCore/bindings/v8/ScriptSourceCode.h
+++ b/WebCore/bindings/v8/ScriptSourceCode.h
@@ -35,17 +35,16 @@
#include "CachedScript.h"
#include "KURL.h"
#include "PlatformString.h"
-#include <wtf/text/TextPosition.h>
namespace WebCore {
class ScriptSourceCode {
public:
- ScriptSourceCode(const String& source, const KURL& url = KURL(), const TextPosition1& startPosition = TextPosition1::minimumPosition())
+ ScriptSourceCode(const String& source, const KURL& url = KURL(), int startLine = 1)
: m_source(source)
, m_cachedScript(0)
, m_url(url)
- , m_startPosition(startPosition)
+ , m_startLine(startLine)
{
}
@@ -55,7 +54,7 @@ public:
: m_source(cs->script())
, m_cachedScript(cs)
, m_url(ParsedURLString, cs->url())
- , m_startPosition(TextPosition1::minimumPosition())
+ , m_startLine(1)
{
}
@@ -64,14 +63,13 @@ public:
const String& source() const { return m_source; }
CachedScript* cachedScript() const { return m_cachedScript.get(); }
const KURL& url() const { return m_url; }
- int startLine() const { return m_startPosition.m_line.oneBasedInt(); }
- const TextPosition1& startPosition() const { return m_startPosition; }
+ int startLine() const { return m_startLine; }
private:
String m_source;
CachedResourceHandle<CachedScript> m_cachedScript;
KURL m_url;
- TextPosition1 m_startPosition;
+ int m_startLine;
};
} // namespace WebCore
diff --git a/WebCore/bindings/v8/V8LazyEventListener.cpp b/WebCore/bindings/v8/V8LazyEventListener.cpp
index 7f46333..7f13c5a 100644
--- a/WebCore/bindings/v8/V8LazyEventListener.cpp
+++ b/WebCore/bindings/v8/V8LazyEventListener.cpp
@@ -41,13 +41,14 @@
namespace WebCore {
-V8LazyEventListener::V8LazyEventListener(const String& functionName, bool isSVGEvent, const String& code, const String sourceURL, const TextPosition0& position, const WorldContextHandle& worldContext)
+V8LazyEventListener::V8LazyEventListener(const String& functionName, bool isSVGEvent, const String& code, const String sourceURL, int lineNumber, int columnNumber, const WorldContextHandle& worldContext)
: V8AbstractEventListener(true, worldContext)
, m_functionName(functionName)
, m_isSVGEvent(isSVGEvent)
, m_code(code)
, m_sourceURL(sourceURL)
- , m_position(position)
+ , m_lineNumber(lineNumber)
+ , m_columnNumber(columnNumber)
{
}
@@ -113,7 +114,7 @@ void V8LazyEventListener::prepareListenerObject(ScriptExecutionContext* context)
// Insert '\n' otherwise //-style comments could break the handler.
code.append( "\n}).call(this, evt);}}}})");
v8::Handle<v8::String> codeExternalString = v8ExternalString(code);
- v8::Handle<v8::Script> script = V8Proxy::compileScript(codeExternalString, m_sourceURL, m_position);
+ v8::Handle<v8::Script> script = V8Proxy::compileScript(codeExternalString, m_sourceURL, m_lineNumber);
if (!script.IsEmpty()) {
v8::Local<v8::Value> value = proxy->runScript(script, false);
if (!value.IsEmpty()) {
diff --git a/WebCore/bindings/v8/V8LazyEventListener.h b/WebCore/bindings/v8/V8LazyEventListener.h
index 08467fe..f174d23 100644
--- a/WebCore/bindings/v8/V8LazyEventListener.h
+++ b/WebCore/bindings/v8/V8LazyEventListener.h
@@ -34,7 +34,6 @@
#include "PlatformString.h"
#include "V8AbstractEventListener.h"
#include <v8.h>
-#include <wtf/text/TextPosition.h>
#include <wtf/PassRefPtr.h>
namespace WebCore {
@@ -46,9 +45,9 @@ namespace WebCore {
// A V8LazyEventListener is always a HTML event handler.
class V8LazyEventListener : public V8AbstractEventListener {
public:
- static PassRefPtr<V8LazyEventListener> create(const String& functionName, bool isSVGEvent, const String& code, const String& sourceURL, const TextPosition0& position, const WorldContextHandle& worldContext)
+ static PassRefPtr<V8LazyEventListener> create(const String& functionName, bool isSVGEvent, const String& code, const String& sourceURL, int lineNumber, int columnNumber, const WorldContextHandle& worldContext)
{
- return adoptRef(new V8LazyEventListener(functionName, isSVGEvent, code, sourceURL, position, worldContext));
+ return adoptRef(new V8LazyEventListener(functionName, isSVGEvent, code, sourceURL, lineNumber, columnNumber, worldContext));
}
virtual bool isLazy() const { return true; }
@@ -57,7 +56,7 @@ namespace WebCore {
virtual void prepareListenerObject(ScriptExecutionContext*);
private:
- V8LazyEventListener(const String& functionName, bool isSVGEvent, const String& code, const String sourceURL, const TextPosition0& position, const WorldContextHandle& worldContext);
+ V8LazyEventListener(const String& functionName, bool isSVGEvent, const String& code, const String sourceURL, int lineNumber, int columnNumber, const WorldContextHandle& worldContext);
virtual v8::Local<v8::Value> callListenerFunction(ScriptExecutionContext*, v8::Handle<v8::Value> jsEvent, Event*);
@@ -71,7 +70,8 @@ namespace WebCore {
bool m_isSVGEvent;
String m_code;
String m_sourceURL;
- TextPosition0 m_position;
+ int m_lineNumber;
+ int m_columnNumber;
};
} // namespace WebCore
diff --git a/WebCore/bindings/v8/V8Proxy.cpp b/WebCore/bindings/v8/V8Proxy.cpp
index 7b596c8..e7d6bf6 100644
--- a/WebCore/bindings/v8/V8Proxy.cpp
+++ b/WebCore/bindings/v8/V8Proxy.cpp
@@ -236,13 +236,12 @@ V8Proxy::~V8Proxy()
windowShell()->destroyGlobal();
}
-v8::Handle<v8::Script> V8Proxy::compileScript(v8::Handle<v8::String> code, const String& fileName, const TextPosition0& scriptStartPosition, v8::ScriptData* scriptData)
+v8::Handle<v8::Script> V8Proxy::compileScript(v8::Handle<v8::String> code, const String& fileName, int baseLine, v8::ScriptData* scriptData)
{
const uint16_t* fileNameString = fromWebCoreString(fileName);
v8::Handle<v8::String> name = v8::String::New(fileNameString, fileName.length());
- v8::Handle<v8::Integer> line = v8::Integer::New(scriptStartPosition.m_line.zeroBasedInt());
- v8::Handle<v8::Integer> column = v8::Integer::New(scriptStartPosition.m_column.zeroBasedInt());
- v8::ScriptOrigin origin(name, line, column);
+ v8::Handle<v8::Integer> line = v8::Integer::New(baseLine);
+ v8::ScriptOrigin origin(name, line);
v8::Handle<v8::Script> script = v8::Script::Compile(code, &origin, scriptData);
return script;
}
@@ -395,7 +394,7 @@ v8::Local<v8::Value> V8Proxy::evaluate(const ScriptSourceCode& source, Node* nod
// NOTE: For compatibility with WebCore, ScriptSourceCode's line starts at
// 1, whereas v8 starts at 0.
- v8::Handle<v8::Script> script = compileScript(code, source.url(), WTF::toZeroBasedTextPosition(source.startPosition()), scriptData.get());
+ v8::Handle<v8::Script> script = compileScript(code, source.url(), source.startLine() - 1, scriptData.get());
#if PLATFORM(CHROMIUM)
PlatformBridge::traceEventEnd("v8.compile", node, "");
@@ -427,7 +426,7 @@ v8::Local<v8::Value> V8Proxy::runScript(v8::Handle<v8::Script> script, bool isIn
// FIXME: Ideally, we should be able to re-use the origin of the
// script passed to us as the argument instead of using an empty string
// and 0 baseLine.
- script = compileScript(code, "", TextPosition0::minimumPosition());
+ script = compileScript(code, "", 0);
}
if (handleOutOfMemory())
diff --git a/WebCore/bindings/v8/V8Proxy.h b/WebCore/bindings/v8/V8Proxy.h
index 80d4691..8a0da72 100644
--- a/WebCore/bindings/v8/V8Proxy.h
+++ b/WebCore/bindings/v8/V8Proxy.h
@@ -279,7 +279,7 @@ namespace WebCore {
static v8::Handle<v8::Value> checkNewLegal(const v8::Arguments&);
- static v8::Handle<v8::Script> compileScript(v8::Handle<v8::String> code, const String& fileName, const TextPosition0& scriptStartPosition, v8::ScriptData* = 0);
+ static v8::Handle<v8::Script> compileScript(v8::Handle<v8::String> code, const String& fileName, int baseLine, v8::ScriptData* = 0);
// If the exception code is different from zero, a DOM exception is
// schedule to be thrown.
diff --git a/WebCore/bindings/v8/WorkerContextExecutionProxy.cpp b/WebCore/bindings/v8/WorkerContextExecutionProxy.cpp
index cefb2fa..16e0b41 100644
--- a/WebCore/bindings/v8/WorkerContextExecutionProxy.cpp
+++ b/WebCore/bindings/v8/WorkerContextExecutionProxy.cpp
@@ -184,7 +184,7 @@ bool WorkerContextExecutionProxy::forgetV8EventObject(Event* event)
return false;
}
-ScriptValue WorkerContextExecutionProxy::evaluate(const String& script, const String& fileName, const TextPosition0& scriptStartPosition, WorkerContextExecutionState* state)
+ScriptValue WorkerContextExecutionProxy::evaluate(const String& script, const String& fileName, int baseLine, WorkerContextExecutionState* state)
{
v8::HandleScope hs;
@@ -196,7 +196,7 @@ ScriptValue WorkerContextExecutionProxy::evaluate(const String& script, const St
v8::TryCatch exceptionCatcher;
v8::Local<v8::String> scriptString = v8ExternalString(script);
- v8::Handle<v8::Script> compiledScript = V8Proxy::compileScript(scriptString, fileName, scriptStartPosition);
+ v8::Handle<v8::Script> compiledScript = V8Proxy::compileScript(scriptString, fileName, baseLine);
v8::Local<v8::Value> result = runScript(compiledScript);
if (!exceptionCatcher.CanContinue())
@@ -227,7 +227,7 @@ v8::Local<v8::Value> WorkerContextExecutionProxy::runScript(v8::Handle<v8::Scrip
// Compute the source string and prevent against infinite recursion.
if (m_recursion >= kMaxRecursionDepth) {
v8::Local<v8::String> code = v8ExternalString("throw RangeError('Recursion too deep')");
- script = V8Proxy::compileScript(code, "", TextPosition0::minimumPosition());
+ script = V8Proxy::compileScript(code, "", 0);
}
if (V8Proxy::handleOutOfMemory())
diff --git a/WebCore/bindings/v8/WorkerContextExecutionProxy.h b/WebCore/bindings/v8/WorkerContextExecutionProxy.h
index e70c3d2..58824b9 100644
--- a/WebCore/bindings/v8/WorkerContextExecutionProxy.h
+++ b/WebCore/bindings/v8/WorkerContextExecutionProxy.h
@@ -36,7 +36,6 @@
#include "ScriptValue.h"
#include <v8.h>
-#include <wtf/text/TextPosition.h>
#include <wtf/OwnPtr.h>
#include <wtf/Vector.h>
@@ -67,7 +66,7 @@ namespace WebCore {
void trackEvent(Event*);
// Evaluate a script file in the current execution environment.
- ScriptValue evaluate(const String& script, const String& fileName, const TextPosition0& scriptStartPosition, WorkerContextExecutionState*);
+ ScriptValue evaluate(const String& script, const String& fileName, int baseLine, WorkerContextExecutionState*);
// Returns a local handle of the context.
v8::Local<v8::Context> context() { return v8::Local<v8::Context>::New(m_context); }
diff --git a/WebCore/bindings/v8/WorkerScriptController.cpp b/WebCore/bindings/v8/WorkerScriptController.cpp
index b56d383..7db0d8d 100644
--- a/WebCore/bindings/v8/WorkerScriptController.cpp
+++ b/WebCore/bindings/v8/WorkerScriptController.cpp
@@ -75,7 +75,7 @@ ScriptValue WorkerScriptController::evaluate(const ScriptSourceCode& sourceCode,
}
WorkerContextExecutionState state;
- ScriptValue result = m_proxy->evaluate(sourceCode.source(), sourceCode.url().string(), WTF::toZeroBasedTextPosition(sourceCode.startPosition()), &state);
+ ScriptValue result = m_proxy->evaluate(sourceCode.source(), sourceCode.url().string(), sourceCode.startLine() - 1, &state);
if (state.hadException) {
if (exception)
*exception = state.exception;
diff --git a/WebCore/dom/PendingScript.cpp b/WebCore/dom/PendingScript.cpp
index 18f6071..42e225a 100644
--- a/WebCore/dom/PendingScript.cpp
+++ b/WebCore/dom/PendingScript.cpp
@@ -40,7 +40,7 @@ PendingScript::~PendingScript()
PassRefPtr<Element> PendingScript::releaseElementAndClear()
{
setCachedScript(0);
- m_startingPosition = TextPosition1::belowRangePosition();
+ m_startingLineNumber = 0;
m_watchingForLoad = false;
return m_element.release();
}
diff --git a/WebCore/dom/PendingScript.h b/WebCore/dom/PendingScript.h
index 083507a..44e1e49 100644
--- a/WebCore/dom/PendingScript.h
+++ b/WebCore/dom/PendingScript.h
@@ -28,7 +28,6 @@
#include "CachedResourceClient.h"
#include "CachedResourceHandle.h"
-#include <wtf/text/TextPosition.h>
#include <wtf/PassRefPtr.h>
namespace WebCore {
@@ -44,14 +43,14 @@ class Element;
class PendingScript : public CachedResourceClient {
public:
PendingScript()
- : m_startingPosition(TextPosition1::belowRangePosition())
+ : m_startingLineNumber(0)
, m_watchingForLoad(false)
{
}
PendingScript(const PendingScript& other)
: CachedResourceClient(other)
- , m_startingPosition(other.m_startingPosition)
+ , m_startingLineNumber(other.m_startingLineNumber)
, m_watchingForLoad(other.m_watchingForLoad)
, m_element(other.m_element)
{
@@ -65,7 +64,7 @@ public:
if (this == &other)
return *this;
- m_startingPosition = other.m_startingPosition;
+ m_startingLineNumber = other.m_startingLineNumber;
m_watchingForLoad = other.m_watchingForLoad;
m_element = other.m_element;
setCachedScript(other.cachedScript());
@@ -75,7 +74,7 @@ public:
// FIXME: No setter means this is never set to anything other than 0.
// This is either unnecessary or incorrect.
- TextPosition1 startingPosition() const { return m_startingPosition; }
+ int startingLineNumber() const { return m_startingLineNumber; }
bool watchingForLoad() const { return m_watchingForLoad; }
void setWatchingForLoad(bool b) { m_watchingForLoad = b; }
@@ -90,7 +89,7 @@ public:
virtual void notifyFinished(CachedResource*);
private:
- TextPosition1 m_startingPosition; // Only used for inline script tags.
+ int m_startingLineNumber; // Only used for inline script tags.
bool m_watchingForLoad;
RefPtr<Element> m_element;
CachedResourceHandle<CachedScript> m_cachedScript;
diff --git a/WebCore/dom/ScriptableDocumentParser.h b/WebCore/dom/ScriptableDocumentParser.h
index d9bf85c..8b16304 100644
--- a/WebCore/dom/ScriptableDocumentParser.h
+++ b/WebCore/dom/ScriptableDocumentParser.h
@@ -27,10 +27,10 @@
#define ScriptableDocumentParser_h
#include "DecodedDataDocumentParser.h"
-#include <wtf/text/TextPosition.h>
namespace WebCore {
+class SegmentedString;
class XSSAuditor;
class ScriptableDocumentParser : public DecodedDataDocumentParser {
@@ -47,7 +47,7 @@ public:
// These are used to expose the current line/column to the scripting system.
virtual int lineNumber() const = 0;
- virtual TextPosition0 textPosition() const = 0;
+ virtual int columnNumber() const = 0;
XSSAuditor* xssAuditor() const { return m_xssAuditor; }
void setXSSAuditor(XSSAuditor* auditor) { m_xssAuditor = auditor; }
diff --git a/WebCore/dom/XMLDocumentParser.h b/WebCore/dom/XMLDocumentParser.h
index e3d3cc2..e0770ba 100644
--- a/WebCore/dom/XMLDocumentParser.h
+++ b/WebCore/dom/XMLDocumentParser.h
@@ -102,7 +102,7 @@ namespace WebCore {
// WMLErrorHandling uses these functions.
virtual bool wellFormed() const { return !m_sawError; }
virtual int lineNumber() const;
- TextPosition0 textPosition() const;
+ virtual int columnNumber() const;
static bool supportsXMLVersion(const String&);
@@ -129,14 +129,6 @@ namespace WebCore {
bool appendFragmentSource(const String&);
- int columnNumber() const;
-
- // This method is introduced to temporary legalize existing line/column
- // coordinate bug: it is believed that numbers that originally were zero-based
- // eventually becomes one-based.
- // FIXME: Investigate and get rid of this method.
- TextPosition1 textPositionOneBased() const;
-
#if USE(QXMLSTREAM)
private:
void parse();
@@ -216,7 +208,7 @@ public:
CachedResourceHandle<CachedScript> m_pendingScript;
RefPtr<Element> m_scriptElement;
- TextPosition1 m_scriptStartPosition;
+ int m_scriptStartLine;
bool m_parsingFragment;
AtomicString m_defaultNamespaceURI;
diff --git a/WebCore/dom/XMLDocumentParserLibxml2.cpp b/WebCore/dom/XMLDocumentParserLibxml2.cpp
index dce8fef..5b5ac89 100644
--- a/WebCore/dom/XMLDocumentParserLibxml2.cpp
+++ b/WebCore/dom/XMLDocumentParserLibxml2.cpp
@@ -560,7 +560,7 @@ XMLDocumentParser::XMLDocumentParser(Document* document, FrameView* frameView)
, m_lastErrorLine(0)
, m_lastErrorColumn(0)
, m_pendingScript(0)
- , m_scriptStartPosition(TextPosition1::belowRangePosition())
+ , m_scriptStartLine(0)
, m_parsingFragment(false)
, m_scriptingPermission(FragmentScriptingAllowed)
{
@@ -587,7 +587,7 @@ XMLDocumentParser::XMLDocumentParser(DocumentFragment* fragment, Element* parent
, m_lastErrorLine(0)
, m_lastErrorColumn(0)
, m_pendingScript(0)
- , m_scriptStartPosition(TextPosition1::belowRangePosition())
+ , m_scriptStartLine(0)
, m_parsingFragment(true)
, m_scriptingPermission(scriptingPermission)
{
@@ -819,7 +819,7 @@ void XMLDocumentParser::startElementNs(const xmlChar* xmlLocalName, const xmlCha
ScriptElement* scriptElement = toScriptElement(newElement.get());
if (scriptElement)
- m_scriptStartPosition = textPositionOneBased();
+ m_scriptStartLine = lineNumber();
m_currentNode->deprecatedParserAddChild(newElement.get());
@@ -910,7 +910,7 @@ void XMLDocumentParser::endElementNs()
} else
m_scriptElement = 0;
} else
- m_view->frame()->script()->executeScript(ScriptSourceCode(scriptElement->scriptContent(), document()->url(), m_scriptStartPosition));
+ m_view->frame()->script()->executeScript(ScriptSourceCode(scriptElement->scriptContent(), document()->url(), m_scriptStartLine));
// JavaScript may have detached the parser
if (isDetached())
@@ -1376,39 +1376,14 @@ void* xmlDocPtrForString(CachedResourceLoader* cachedResourceLoader, const Strin
int XMLDocumentParser::lineNumber() const
{
- // FIXME: The implementation probably returns 1-based int, but method should return 0-based.
return context() ? context()->input->line : 1;
}
int XMLDocumentParser::columnNumber() const
{
- // FIXME: The implementation probably returns 1-based int, but method should return 0-based.
return context() ? context()->input->col : 1;
}
-TextPosition0 XMLDocumentParser::textPosition() const
-{
- xmlParserCtxtPtr context = this->context();
- if (!context)
- return TextPosition0::minimumPosition();
- // FIXME: The context probably contains 1-based numbers, but we treat them as 0-based,
- // to be consistent with fixme's in lineNumber() and columnNumber
- // methods.
- return TextPosition0(WTF::ZeroBasedNumber::fromZeroBasedInt(context->input->line),
- WTF::ZeroBasedNumber::fromZeroBasedInt(context->input->col));
-}
-
-// This method has a correct implementation, in contrast to textPosition() method.
-// It should replace textPosition().
-TextPosition1 XMLDocumentParser::textPositionOneBased() const
-{
- xmlParserCtxtPtr context = this->context();
- if (!context)
- return TextPosition1::minimumPosition();
- return TextPosition1(WTF::OneBasedNumber::fromOneBasedInt(context->input->line),
- WTF::OneBasedNumber::fromOneBasedInt(context->input->col));
-}
-
void XMLDocumentParser::stopParsing()
{
DocumentParser::stopParsing();
diff --git a/WebCore/dom/XMLDocumentParserQt.cpp b/WebCore/dom/XMLDocumentParserQt.cpp
index f1afe34..03b083e 100644
--- a/WebCore/dom/XMLDocumentParserQt.cpp
+++ b/WebCore/dom/XMLDocumentParserQt.cpp
@@ -105,7 +105,7 @@ XMLDocumentParser::XMLDocumentParser(Document* document, FrameView* frameView)
, m_lastErrorLine(0)
, m_lastErrorColumn(0)
, m_pendingScript(0)
- , m_scriptStartPosition(TextPosition1::belowRangePosition())
+ , m_scriptStartLine(0)
, m_parsingFragment(false)
, m_scriptingPermission(FragmentScriptingAllowed)
{
@@ -132,7 +132,7 @@ XMLDocumentParser::XMLDocumentParser(DocumentFragment* fragment, Element* parent
, m_lastErrorLine(0)
, m_lastErrorColumn(0)
, m_pendingScript(0)
- , m_scriptStartPosition(TextPosition1::belowRangePosition())
+ , m_scriptStartLine(0)
, m_parsingFragment(true)
, m_scriptingPermission(permission)
{
@@ -234,18 +234,6 @@ int XMLDocumentParser::columnNumber() const
return m_stream.columnNumber();
}
-TextPosition0 XMLDocumentParser::textPosition() const
-{
- return TextPosition0(WTF::ZeroBasedNumber::fromZeroBasedInt(lineNumber()), WTF::ZeroBasedNumber::fromZeroBasedInt(columnNumber()));
-}
-
-// This method incorrectly reinterprets zero-base lineNumber method as one-based number.
-// FIXME: This error is kept for compatibility. We should fix it eventually.
-TextPosition1 XMLDocumentParser::textPositionOneBased() const
-{
- return TextPosition1(WTF::OneBasedNumber::fromOneBasedInt(lineNumber()), WTF::OneBasedNumber::fromOneBasedInt(columnNumber()));
-}
-
void XMLDocumentParser::stopParsing()
{
ScriptableDocumentParser::stopParsing();
@@ -530,7 +518,7 @@ void XMLDocumentParser::parseStartElement()
ScriptElement* scriptElement = toScriptElement(newElement.get());
if (scriptElement)
- m_scriptStartPosition = textPositionOneBased();
+ m_scriptStartLine = lineNumber();
m_currentNode->deprecatedParserAddChild(newElement.get());
@@ -607,7 +595,7 @@ void XMLDocumentParser::parseEndElement()
} else
m_scriptElement = 0;
} else
- m_view->frame()->script()->executeScript(ScriptSourceCode(scriptElement->scriptContent(), document()->url(), m_scriptStartPosition));
+ m_view->frame()->script()->executeScript(ScriptSourceCode(scriptElement->scriptContent(), document()->url(), m_scriptStartLine));
}
m_requestingScript = false;
popCurrentNode();
@@ -728,3 +716,4 @@ void XMLDocumentParser::parseDtd()
}
}
+
diff --git a/WebCore/html/parser/HTMLDocumentParser.cpp b/WebCore/html/parser/HTMLDocumentParser.cpp
index d169417..94cc2aa 100644
--- a/WebCore/html/parser/HTMLDocumentParser.cpp
+++ b/WebCore/html/parser/HTMLDocumentParser.cpp
@@ -191,12 +191,12 @@ bool HTMLDocumentParser::runScriptsForPausedTreeBuilder()
{
ASSERT(m_treeBuilder->isPaused());
- TextPosition1 scriptStartPosition = TextPosition1::belowRangePosition();
- RefPtr<Element> scriptElement = m_treeBuilder->takeScriptToProcess(scriptStartPosition);
+ int scriptStartLine = 0;
+ RefPtr<Element> scriptElement = m_treeBuilder->takeScriptToProcess(scriptStartLine);
// We will not have a scriptRunner when parsing a DocumentFragment.
if (!m_scriptRunner)
return true;
- return m_scriptRunner->execute(scriptElement.release(), scriptStartPosition);
+ return m_scriptRunner->execute(scriptElement.release(), scriptStartLine);
}
void HTMLDocumentParser::pumpTokenizer(SynchronousMode mode)
@@ -396,13 +396,9 @@ int HTMLDocumentParser::lineNumber() const
return m_tokenizer->lineNumber();
}
-TextPosition0 HTMLDocumentParser::textPosition() const
+int HTMLDocumentParser::columnNumber() const
{
- int lineZeroBased = m_tokenizer->lineNumber();
- int columnOneBased = m_tokenizer->columnNumber();
-
- return TextPosition0(WTF::ZeroBasedNumber::fromZeroBasedInt(lineZeroBased),
- WTF::OneBasedNumber::fromOneBasedInt(columnOneBased).convertToZeroBased());
+ return m_tokenizer->columnNumber();
}
bool HTMLDocumentParser::isWaitingForScripts() const
diff --git a/WebCore/html/parser/HTMLDocumentParser.h b/WebCore/html/parser/HTMLDocumentParser.h
index 05053df..d9625f1 100644
--- a/WebCore/html/parser/HTMLDocumentParser.h
+++ b/WebCore/html/parser/HTMLDocumentParser.h
@@ -92,7 +92,7 @@ private:
virtual bool isExecutingScript() const;
virtual void executeScriptsWaitingForStylesheets();
virtual int lineNumber() const;
- virtual TextPosition0 textPosition() const;
+ virtual int columnNumber() const;
// HTMLScriptRunnerHost
virtual void watchForLoad(CachedResource*);
diff --git a/WebCore/html/parser/HTMLScriptRunner.cpp b/WebCore/html/parser/HTMLScriptRunner.cpp
index 61f673a..75db644 100644
--- a/WebCore/html/parser/HTMLScriptRunner.cpp
+++ b/WebCore/html/parser/HTMLScriptRunner.cpp
@@ -99,7 +99,7 @@ ScriptSourceCode HTMLScriptRunner::sourceFromPendingScript(const PendingScript&
return ScriptSourceCode(script.cachedScript());
}
errorOccurred = false;
- return ScriptSourceCode(script.element()->textContent(), documentURLForScriptExecution(m_document), script.startingPosition());
+ return ScriptSourceCode(script.element()->textContent(), documentURLForScriptExecution(m_document), script.startingLineNumber());
}
bool HTMLScriptRunner::isPendingScriptReady(const PendingScript& script)
@@ -172,13 +172,13 @@ void HTMLScriptRunner::stopWatchingForLoad(PendingScript& pendingScript)
// This function should match 10.2.5.11 "An end tag whose tag name is 'script'"
// Script handling lives outside the tree builder to keep the each class simple.
-bool HTMLScriptRunner::execute(PassRefPtr<Element> scriptElement, const TextPosition1& scriptStartPosition)
+bool HTMLScriptRunner::execute(PassRefPtr<Element> scriptElement, int startLine)
{
ASSERT(scriptElement);
// FIXME: If scripting is disabled, always just return true;
// Try to execute the script given to us.
- runScript(scriptElement.get(), scriptStartPosition);
+ runScript(scriptElement.get(), startLine);
if (haveParsingBlockingScript()) {
if (m_scriptNestingLevel)
@@ -290,7 +290,7 @@ bool HTMLScriptRunner::requestPendingScript(PendingScript& pendingScript, Elemen
// This method is meant to match the HTML5 definition of "running a script"
// http://www.whatwg.org/specs/web-apps/current-work/multipage/scripting-1.html#running-a-script
-void HTMLScriptRunner::runScript(Element* script, const TextPosition1& scriptStartPosition)
+void HTMLScriptRunner::runScript(Element* script, int startingLineNumber)
{
ASSERT(m_document);
ASSERT(!haveParsingBlockingScript());
@@ -317,7 +317,7 @@ void HTMLScriptRunner::runScript(Element* script, const TextPosition1& scriptSta
// See https://bugs.webkit.org/show_bug.cgi?id=40047
// ASSERT(document()->haveStylesheetsLoaded());
ASSERT(isExecutingScript());
- ScriptSourceCode sourceCode(script->textContent(), documentURLForScriptExecution(m_document), scriptStartPosition);
+ ScriptSourceCode sourceCode(script->textContent(), documentURLForScriptExecution(m_document), startingLineNumber);
executeScript(sourceCode);
}
}
diff --git a/WebCore/html/parser/HTMLScriptRunner.h b/WebCore/html/parser/HTMLScriptRunner.h
index 2df295f..be21dd2 100644
--- a/WebCore/html/parser/HTMLScriptRunner.h
+++ b/WebCore/html/parser/HTMLScriptRunner.h
@@ -28,7 +28,6 @@
#include "PendingScript.h"
#include <wtf/Deque.h>
-#include <wtf/text/TextPosition.h>
#include <wtf/Noncopyable.h>
#include <wtf/PassRefPtr.h>
@@ -53,7 +52,7 @@ public:
void detach();
// Processes the passed in script and any pending scripts if possible.
- bool execute(PassRefPtr<Element> scriptToProcess, const TextPosition1& scriptStartPosition);
+ bool execute(PassRefPtr<Element> scriptToProcess, int scriptStartLine);
bool executeScriptsWaitingForLoad(CachedResource*);
bool hasScriptsWaitingForStylesheets() const { return m_hasScriptsWaitingForStylesheets; }
@@ -77,7 +76,7 @@ private:
void requestDeferredScript(Element*);
bool requestPendingScript(PendingScript&, Element*) const;
- void runScript(Element*, const TextPosition1& scriptStartPosition);
+ void runScript(Element*, int startingLineNumber);
// Helpers for dealing with HTMLScriptRunnerHost
void watchForLoad(PendingScript&);
diff --git a/WebCore/html/parser/HTMLTreeBuilder.cpp b/WebCore/html/parser/HTMLTreeBuilder.cpp
index 264b654..310ff60 100644
--- a/WebCore/html/parser/HTMLTreeBuilder.cpp
+++ b/WebCore/html/parser/HTMLTreeBuilder.cpp
@@ -56,11 +56,6 @@ using namespace HTMLNames;
static const int uninitializedLineNumberValue = -1;
-static TextPosition1 uninitializedPositionValue1()
-{
- return TextPosition1(WTF::OneBasedNumber::fromOneBasedInt(-1), WTF::OneBasedNumber::base());
-}
-
namespace {
inline bool isHTMLSpaceOrReplacementCharacter(UChar character)
@@ -345,8 +340,8 @@ HTMLTreeBuilder::HTMLTreeBuilder(HTMLTokenizer* tokenizer, HTMLDocument* documen
, m_insertionMode(InitialMode)
, m_originalInsertionMode(InitialMode)
, m_tokenizer(tokenizer)
- , m_scriptToProcessStartPosition(uninitializedPositionValue1())
- , m_lastScriptElementStartPosition(TextPosition0::belowRangePosition())
+ , m_scriptToProcessStartLine(uninitializedLineNumberValue)
+ , m_lastScriptElementStartLine(uninitializedLineNumberValue)
, m_usePreHTML5ParserQuirks(usePreHTML5ParserQuirks)
, m_hasPendingForeignInsertionModeSteps(false)
{
@@ -364,8 +359,8 @@ HTMLTreeBuilder::HTMLTreeBuilder(HTMLTokenizer* tokenizer, DocumentFragment* fra
, m_insertionMode(InitialMode)
, m_originalInsertionMode(InitialMode)
, m_tokenizer(tokenizer)
- , m_scriptToProcessStartPosition(uninitializedPositionValue1())
- , m_lastScriptElementStartPosition(TextPosition0::belowRangePosition())
+ , m_scriptToProcessStartLine(uninitializedLineNumberValue)
+ , m_lastScriptElementStartLine(uninitializedLineNumberValue)
, m_usePreHTML5ParserQuirks(usePreHTML5ParserQuirks)
, m_hasPendingForeignInsertionModeSteps(false)
{
@@ -428,15 +423,15 @@ HTMLTreeBuilder::FragmentParsingContext::~FragmentParsingContext()
{
}
-PassRefPtr<Element> HTMLTreeBuilder::takeScriptToProcess(TextPosition1& scriptStartPosition)
+PassRefPtr<Element> HTMLTreeBuilder::takeScriptToProcess(int& scriptStartLine)
{
// Unpause ourselves, callers may pause us again when processing the script.
// The HTML5 spec is written as though scripts are executed inside the tree
// builder. We pause the parser to exit the tree builder, and then resume
// before running scripts.
m_isPaused = false;
- scriptStartPosition = m_scriptToProcessStartPosition;
- m_scriptToProcessStartPosition = uninitializedPositionValue1();
+ scriptStartLine = m_scriptToProcessStartLine;
+ m_scriptToProcessStartLine = uninitializedLineNumberValue;
return m_scriptToProcess.release();
}
@@ -2195,7 +2190,7 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken& token)
m_isPaused = true;
ASSERT(m_tree.currentElement()->hasTagName(scriptTag));
m_scriptToProcess = m_tree.currentElement();
- m_scriptToProcessStartPosition = WTF::toOneBasedTextPosition(m_lastScriptElementStartPosition);
+ m_scriptToProcessStartLine = m_lastScriptElementStartLine + 1;
m_tree.openElements()->pop();
if (isParsingFragment() && m_fragmentContext.scriptingPermission() == FragmentScriptingNotAllowed)
m_scriptToProcess->removeAllChildren();
@@ -2774,10 +2769,7 @@ void HTMLTreeBuilder::processScriptStartTag(AtomicHTMLToken& token)
m_tree.insertScriptElement(token);
m_tokenizer->setState(HTMLTokenizer::ScriptDataState);
m_originalInsertionMode = m_insertionMode;
-
- TextPosition0 position = TextPosition0(WTF::ZeroBasedNumber::fromZeroBasedInt(m_tokenizer->lineNumber()), WTF::ZeroBasedNumber::base());
- m_lastScriptElementStartPosition = position;
-
+ m_lastScriptElementStartLine = m_tokenizer->lineNumber();
setInsertionMode(TextMode);
}
diff --git a/WebCore/html/parser/HTMLTreeBuilder.h b/WebCore/html/parser/HTMLTreeBuilder.h
index 0e7597c..c6fcdfd 100644
--- a/WebCore/html/parser/HTMLTreeBuilder.h
+++ b/WebCore/html/parser/HTMLTreeBuilder.h
@@ -32,7 +32,6 @@
#include "HTMLElementStack.h"
#include "HTMLFormattingElementList.h"
#include "HTMLTokenizer.h"
-#include <wtf/text/TextPosition.h>
#include <wtf/Noncopyable.h>
#include <wtf/OwnPtr.h>
#include <wtf/PassOwnPtr.h>
@@ -72,7 +71,7 @@ public:
void constructTreeFromAtomicToken(AtomicHTMLToken&);
// Must be called when parser is paused before calling the parser again.
- PassRefPtr<Element> takeScriptToProcess(TextPosition1& scriptStartPosition);
+ PassRefPtr<Element> takeScriptToProcess(int& scriptStartLine);
// Done, close any open tags, etc.
void finished();
@@ -249,12 +248,12 @@ private:
HTMLTokenizer* m_tokenizer;
RefPtr<Element> m_scriptToProcess; // <script> tag which needs processing before resuming the parser.
- TextPosition1 m_scriptToProcessStartPosition; // Starting line number of the script tag needing processing.
+ int m_scriptToProcessStartLine; // Starting line number of the script tag needing processing.
// FIXME: We probably want to remove this member. Originally, it was
// created to service the legacy tree builder, but it seems to be used for
// some other things now.
- TextPosition0 m_lastScriptElementStartPosition;
+ int m_lastScriptElementStartLine;
bool m_usePreHTML5ParserQuirks;
diff --git a/WebKit/chromium/ChangeLog b/WebKit/chromium/ChangeLog
index f8d92b0..6816ebb 100644
--- a/WebKit/chromium/ChangeLog
+++ b/WebKit/chromium/ChangeLog
@@ -1,3 +1,17 @@
+2010-10-25 Sheriff Bot <webkit.review.bot at gmail.com>
+
+ Unreviewed, rolling out r70451.
+ http://trac.webkit.org/changeset/70451
+ https://bugs.webkit.org/show_bug.cgi?id=48249
+
+ Broke set-unloaded-frame-location.html under Qt (Requested by
+ caseq on #webkit).
+
+ * src/WebFrameImpl.cpp:
+ (WebKit::WebFrameImpl::executeScript):
+ (WebKit::WebFrameImpl::executeScriptInIsolatedWorld):
+ (WebKit::WebFrameImpl::executeScriptAndReturnValue):
+
2010-10-25 Peter Rybin <peter.rybin at gmail.com>
Reviewed by Adam Barth.
diff --git a/WebKit/chromium/src/WebFrameImpl.cpp b/WebKit/chromium/src/WebFrameImpl.cpp
index 5280443..b4d23c0 100644
--- a/WebKit/chromium/src/WebFrameImpl.cpp
+++ b/WebKit/chromium/src/WebFrameImpl.cpp
@@ -753,9 +753,8 @@ void WebFrameImpl::bindToWindowObject(const WebString& name, NPObject* object)
void WebFrameImpl::executeScript(const WebScriptSource& source)
{
- TextPosition1 position(WTF::OneBasedNumber::fromOneBasedInt(source.startLine), WTF::OneBasedNumber::base());
m_frame->script()->executeScript(
- ScriptSourceCode(source.code, source.url, position));
+ ScriptSourceCode(source.code, source.url, source.startLine));
}
void WebFrameImpl::executeScriptInIsolatedWorld(
@@ -765,9 +764,8 @@ void WebFrameImpl::executeScriptInIsolatedWorld(
Vector<ScriptSourceCode> sources;
for (unsigned i = 0; i < numSources; ++i) {
- TextPosition1 position(WTF::OneBasedNumber::fromOneBasedInt(sourcesIn[i].startLine), WTF::OneBasedNumber::base());
sources.append(ScriptSourceCode(
- sourcesIn[i].code, sourcesIn[i].url, position));
+ sourcesIn[i].code, sourcesIn[i].url, sourcesIn[i].startLine));
}
m_frame->script()->evaluateInIsolatedWorld(worldId, sources, extensionGroup);
@@ -819,9 +817,8 @@ void WebFrameImpl::collectGarbage()
v8::Handle<v8::Value> WebFrameImpl::executeScriptAndReturnValue(
const WebScriptSource& source)
{
- TextPosition1 position(WTF::OneBasedNumber::fromOneBasedInt(source.startLine), WTF::OneBasedNumber::base());
return m_frame->script()->executeScript(
- ScriptSourceCode(source.code, source.url, position)).v8Value();
+ ScriptSourceCode(source.code, source.url, source.startLine)).v8Value();
}
// Returns the V8 context for this frame, or an empty handle if there is none.
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list