OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * | 10 * |
(...skipping 11 matching lines...) Expand all Loading... |
22 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 22 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
26 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 26 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
27 */ | 27 */ |
28 | 28 |
29 #include "config.h" | 29 #include "config.h" |
30 #include "core/xml/parser/XMLErrors.h" | 30 #include "core/xml/parser/XMLErrors.h" |
31 | 31 |
| 32 #include "bindings/core/v8/V8Document.h" |
32 #include "core/HTMLNames.h" | 33 #include "core/HTMLNames.h" |
33 #include "core/SVGNames.h" | 34 #include "core/SVGNames.h" |
34 #include "core/dom/Document.h" | 35 #include "core/dom/Document.h" |
35 #include "core/dom/Element.h" | 36 #include "core/dom/Element.h" |
36 #include "core/dom/Text.h" | 37 #include "core/dom/Text.h" |
37 #include "wtf/text/WTFString.h" | 38 #include "wtf/text/WTFString.h" |
38 | 39 |
39 namespace blink { | 40 namespace blink { |
40 | 41 |
41 using namespace HTMLNames; | 42 using namespace HTMLNames; |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
144 | 145 |
145 body->parserAppendChild(documentElement); | 146 body->parserAppendChild(documentElement); |
146 m_document->parserAppendChild(rootElement); | 147 m_document->parserAppendChild(rootElement); |
147 | 148 |
148 documentElement = body.get(); | 149 documentElement = body.get(); |
149 } | 150 } |
150 | 151 |
151 String errorMessages = m_errorMessages.toString(); | 152 String errorMessages = m_errorMessages.toString(); |
152 RefPtrWillBeRawPtr<Element> reportElement = createXHTMLParserErrorHeader(m_d
ocument, errorMessages); | 153 RefPtrWillBeRawPtr<Element> reportElement = createXHTMLParserErrorHeader(m_d
ocument, errorMessages); |
153 | 154 |
154 if (m_document->transformSourceDocument()) { | 155 bool xsltTransformed = false; |
| 156 V8Document::PrivateScript::xsltTransformedMethod(m_document->frame(), m_docu
ment, &xsltTransformed); |
| 157 if (xsltTransformed) { |
155 Vector<Attribute> attributes; | 158 Vector<Attribute> attributes; |
156 attributes.append(Attribute(styleAttr, "white-space: normal")); | 159 attributes.append(Attribute(styleAttr, "white-space: normal")); |
157 RefPtrWillBeRawPtr<Element> paragraph = m_document->createElement(pTag,
true); | 160 RefPtrWillBeRawPtr<Element> paragraph = m_document->createElement(pTag,
true); |
158 paragraph->parserSetAttributes(attributes); | 161 paragraph->parserSetAttributes(attributes); |
159 paragraph->parserAppendChild(m_document->createTextNode("This document w
as created as the result of an XSL transformation. The line and column numbers g
iven are from the transformed result.")); | 162 paragraph->parserAppendChild(m_document->createTextNode("This document w
as created as the result of an XSL transformation. The line and column numbers g
iven are from the transformed result.")); |
160 reportElement->parserAppendChild(paragraph.release()); | 163 reportElement->parserAppendChild(paragraph.release()); |
161 } | 164 } |
162 | 165 |
163 Node* firstChild = documentElement->firstChild(); | 166 Node* firstChild = documentElement->firstChild(); |
164 if (firstChild) | 167 if (firstChild) |
165 documentElement->parserInsertBefore(reportElement, *firstChild); | 168 documentElement->parserInsertBefore(reportElement, *firstChild); |
166 else | 169 else |
167 documentElement->parserAppendChild(reportElement); | 170 documentElement->parserAppendChild(reportElement); |
168 | 171 |
169 // FIXME: Why do we need to call this manually? | 172 // FIXME: Why do we need to call this manually? |
170 m_document->updateRenderTreeIfNeeded(); | 173 m_document->updateRenderTreeIfNeeded(); |
171 } | 174 } |
172 | 175 |
173 } // namespace blink | 176 } // namespace blink |
OLD | NEW |