Commit 0699458 1 parent 46097bf commit 0699458 Copy full SHA for 0699458
File tree 4 files changed +14
-9
lines changed
4 files changed +14
-9
lines changed Original file line number Diff line number Diff line change @@ -85,7 +85,7 @@ func render1(w writer, n *Node) error {
85
85
if _ , err := w .WriteString ("<!--" ); err != nil {
86
86
return err
87
87
}
88
- if _ , err := w . WriteString ( n .Data ); err != nil {
88
+ if err := escape ( w , n .Data ); err != nil {
89
89
return err
90
90
}
91
91
if _ , err := w .WriteString ("-->" ); err != nil {
@@ -96,7 +96,7 @@ func render1(w writer, n *Node) error {
96
96
if _ , err := w .WriteString ("<!DOCTYPE " ); err != nil {
97
97
return err
98
98
}
99
- if _ , err := w . WriteString ( n .Data ); err != nil {
99
+ if err := escape ( w , n .Data ); err != nil {
100
100
return err
101
101
}
102
102
if n .Attr != nil {
Original file line number Diff line number Diff line change @@ -94,6 +94,10 @@ func TestRenderer(t *testing.T) {
94
94
Data : "comm" ,
95
95
},
96
96
15 : {
97
+ Type : CommentNode ,
98
+ Data : "x-->y" , // Needs escaping.
99
+ },
100
+ 16 : {
97
101
Type : RawNode ,
98
102
Data : "7<pre>8</pre>9" ,
99
103
},
@@ -119,7 +123,8 @@ func TestRenderer(t *testing.T) {
119
123
12 : `. . <br>` ,
120
124
13 : `. . "6"` ,
121
125
14 : `. . "<!--comm-->"` ,
122
- 15 : `. . "7<pre>8</pre>9"` ,
126
+ 15 : `. . "<!--x-->y-->"` ,
127
+ 16 : `. . "7<pre>8</pre>9"` ,
123
128
}
124
129
if len (nodes ) != len (treeAsText ) {
125
130
t .Fatal ("len(nodes) != len(treeAsText)" )
@@ -155,7 +160,7 @@ func TestRenderer(t *testing.T) {
155
160
156
161
want := `<html><head></head><body>0<1<p id="A" foo="abc"def">` +
157
162
`2<b empty="">3</b><i backslash="\">&4</i></p>` +
158
- `5<blockquote></blockquote><br/>6<!--comm-->7<pre>8</pre>9</body></html>`
163
+ `5<blockquote></blockquote><br/>6<!--comm--><!--x-->y--> 7<pre>8</pre>9</body></html>`
159
164
b := new (bytes.Buffer )
160
165
if err := Render (b , nodes [0 ]); err != nil {
161
166
t .Fatal (err )
Original file line number Diff line number Diff line change @@ -110,9 +110,9 @@ func (t Token) String() string {
110
110
case SelfClosingTagToken :
111
111
return "<" + t .tagString () + "/>"
112
112
case CommentToken :
113
- return "<!--" + t .Data + "-->"
113
+ return "<!--" + EscapeString ( t .Data ) + "-->"
114
114
case DoctypeToken :
115
- return "<!DOCTYPE " + t .Data + ">"
115
+ return "<!DOCTYPE " + EscapeString ( t .Data ) + ">"
116
116
}
117
117
return "Invalid(" + strconv .Itoa (int (t .Type )) + ")"
118
118
}
Original file line number Diff line number Diff line change @@ -314,12 +314,12 @@ var tokenTests = []tokenTest{
314
314
{
315
315
"comment3" ,
316
316
"a<!--x>-->z" ,
317
- "a$<!--x> -->$z" ,
317
+ "a$<!--x> -->$z" ,
318
318
},
319
319
{
320
320
"comment4" ,
321
321
"a<!--x->-->z" ,
322
- "a$<!--x-> -->$z" ,
322
+ "a$<!--x-> -->$z" ,
323
323
},
324
324
{
325
325
"comment5" ,
@@ -334,7 +334,7 @@ var tokenTests = []tokenTest{
334
334
{
335
335
"comment7" ,
336
336
"a<!---<>z" ,
337
- "a$<!---<> z-->" ,
337
+ "a$<!---<> z-->" ,
338
338
},
339
339
{
340
340
"comment8" ,
You can’t perform that action at this time.
0 commit comments