4484 |
|
|
4485 |
## reprocess |
## reprocess |
4486 |
redo B; |
redo B; |
4487 |
|
} elsif ($token->{tag_name} eq 'input') { |
4488 |
|
if (not $open_tables->[-1]->[1]) { # tainted |
4489 |
|
if ($token->{attributes}->{type}) { ## TODO: case |
4490 |
|
my $type = lc $token->{attributes}->{type}->{value}; |
4491 |
|
if ($type eq 'hidden') { |
4492 |
|
!!!cp ('t227.3'); |
4493 |
|
!!!parse-error (type => 'in table:'.$token->{tag_name}); |
4494 |
|
|
4495 |
|
!!!insert-element ($token->{tag_name}, $token->{attributes}); |
4496 |
|
|
4497 |
|
## TODO: form element pointer |
4498 |
|
|
4499 |
|
pop @{$self->{open_elements}}; |
4500 |
|
|
4501 |
|
!!!next-token; |
4502 |
|
redo B; |
4503 |
|
} else { |
4504 |
|
!!!cp ('t227.2'); |
4505 |
|
# |
4506 |
|
} |
4507 |
|
} else { |
4508 |
|
!!!cp ('t227.1'); |
4509 |
|
# |
4510 |
|
} |
4511 |
|
} else { |
4512 |
|
!!!cp ('t227.4'); |
4513 |
|
# |
4514 |
|
} |
4515 |
} else { |
} else { |
4516 |
!!!cp ('t227'); |
!!!cp ('t227'); |
|
!!!parse-error (type => 'in table:'.$token->{tag_name}); |
|
|
|
|
|
$insert = $insert_to_foster; |
|
4517 |
# |
# |
4518 |
} |
} |
4519 |
|
|
4520 |
|
!!!parse-error (type => 'in table:'.$token->{tag_name}); |
4521 |
|
|
4522 |
|
$insert = $insert_to_foster; |
4523 |
|
# |
4524 |
} elsif ($token->{type} == END_TAG_TOKEN) { |
} elsif ($token->{type} == END_TAG_TOKEN) { |
4525 |
if ($token->{tag_name} eq 'tr' and |
if ($token->{tag_name} eq 'tr' and |
4526 |
$self->{insertion_mode} == IN_ROW_IM) { |
$self->{insertion_mode} == IN_ROW_IM) { |