/[suikacvs]/markup/html/whatpm/Whatpm/HTML.pm.src
Suika

Diff of /markup/html/whatpm/Whatpm/HTML.pm.src

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.157 by wakaba, Sun Aug 31 09:12:30 2008 UTC revision 1.158 by wakaba, Sun Aug 31 12:11:42 2008 UTC
# Line 6301  sub _tree_construction_main ($) { Line 6301  sub _tree_construction_main ($) {
6301            } elsif ($self->{insertion_mode} == AFTER_FRAMESET_IM) {            } elsif ($self->{insertion_mode} == AFTER_FRAMESET_IM) {
6302              !!!cp ('t312');              !!!cp ('t312');
6303              !!!parse-error (type => 'after frameset:#text', token => $token);              !!!parse-error (type => 'after frameset:#text', token => $token);
6304            } else { # "after html frameset"            } else { # "after after frameset"
6305              !!!cp ('t313');              !!!cp ('t313');
6306              !!!parse-error (type => 'after html:#text', token => $token);              !!!parse-error (type => 'after html:#text', token => $token);
   
             $self->{insertion_mode} = AFTER_FRAMESET_IM;  
             ## Reprocess in the "after frameset" insertion mode.  
             !!!parse-error (type => 'after frameset:#text', token => $token);  
6307            }            }
6308                        
6309            ## Ignore the token.            ## Ignore the token.
# Line 6323  sub _tree_construction_main ($) { Line 6319  sub _tree_construction_main ($) {
6319                    
6320          die qq[$0: Character "$token->{data}"];          die qq[$0: Character "$token->{data}"];
6321        } elsif ($token->{type} == START_TAG_TOKEN) {        } elsif ($token->{type} == START_TAG_TOKEN) {
         if ($self->{insertion_mode} == AFTER_HTML_FRAMESET_IM) {  
           !!!cp ('t316');  
           !!!parse-error (type => 'after html',  
                           text => $token->{tag_name}, token => $token);  
   
           $self->{insertion_mode} = AFTER_FRAMESET_IM;  
           ## Process in the "after frameset" insertion mode.  
         } else {  
           !!!cp ('t317');  
         }  
   
6322          if ($token->{tag_name} eq 'frameset' and          if ($token->{tag_name} eq 'frameset' and
6323              $self->{insertion_mode} == IN_FRAMESET_IM) {              $self->{insertion_mode} == IN_FRAMESET_IM) {
6324            !!!cp ('t318');            !!!cp ('t318');
# Line 6354  sub _tree_construction_main ($) { Line 6339  sub _tree_construction_main ($) {
6339            ## NOTE: As if in head.            ## NOTE: As if in head.
6340            $parse_rcdata->(CDATA_CONTENT_MODEL);            $parse_rcdata->(CDATA_CONTENT_MODEL);
6341            next B;            next B;
6342    
6343              ## NOTE: |<!DOCTYPE HTML><frameset></frameset></html><noframes></noframes>|
6344              ## has no parse error.
6345          } else {          } else {
6346            if ($self->{insertion_mode} == IN_FRAMESET_IM) {            if ($self->{insertion_mode} == IN_FRAMESET_IM) {
6347              !!!cp ('t321');              !!!cp ('t321');
6348              !!!parse-error (type => 'in frameset',              !!!parse-error (type => 'in frameset',
6349                              text => $token->{tag_name}, token => $token);                              text => $token->{tag_name}, token => $token);
6350            } else {            } elsif ($self->{insertion_mode} == AFTER_FRAMESET_IM) {
6351              !!!cp ('t322');              !!!cp ('t322');
6352              !!!parse-error (type => 'after frameset',              !!!parse-error (type => 'after frameset',
6353                              text => $token->{tag_name}, token => $token);                              text => $token->{tag_name}, token => $token);
6354              } else { # "after after frameset"
6355                !!!cp ('t322.2');
6356                !!!parse-error (type => 'after after frameset',
6357                                text => $token->{tag_name}, token => $token);
6358            }            }
6359            ## Ignore the token            ## Ignore the token
6360            !!!nack ('t322.1');            !!!nack ('t322.1');
# Line 6370  sub _tree_construction_main ($) { Line 6362  sub _tree_construction_main ($) {
6362            next B;            next B;
6363          }          }
6364        } elsif ($token->{type} == END_TAG_TOKEN) {        } elsif ($token->{type} == END_TAG_TOKEN) {
         if ($self->{insertion_mode} == AFTER_HTML_FRAMESET_IM) {  
           !!!cp ('t323');  
           !!!parse-error (type => 'after html:/',  
                           text => $token->{tag_name}, token => $token);  
   
           $self->{insertion_mode} = AFTER_FRAMESET_IM;  
           ## Process in the "after frameset" insertion mode.  
         } else {  
           !!!cp ('t324');  
         }  
   
6365          if ($token->{tag_name} eq 'frameset' and          if ($token->{tag_name} eq 'frameset' and
6366              $self->{insertion_mode} == IN_FRAMESET_IM) {              $self->{insertion_mode} == IN_FRAMESET_IM) {
6367            if ($self->{open_elements}->[-1]->[1] & HTML_EL and            if ($self->{open_elements}->[-1]->[1] & HTML_EL and
# Line 6415  sub _tree_construction_main ($) { Line 6396  sub _tree_construction_main ($) {
6396              !!!cp ('t330');              !!!cp ('t330');
6397              !!!parse-error (type => 'in frameset:/',              !!!parse-error (type => 'in frameset:/',
6398                              text => $token->{tag_name}, token => $token);                              text => $token->{tag_name}, token => $token);
6399            } else {            } elsif ($self->{insertion_mode} == AFTER_FRAMESET_IM) {
6400              !!!cp ('t331');              !!!cp ('t330.1');
6401              !!!parse-error (type => 'after frameset:/',              !!!parse-error (type => 'after frameset:/',
6402                              text => $token->{tag_name}, token => $token);                              text => $token->{tag_name}, token => $token);
6403              } else { # "after after html"
6404                !!!cp ('t331');
6405                !!!parse-error (type => 'after after frameset:/',
6406                                text => $token->{tag_name}, token => $token);
6407            }            }
6408            ## Ignore the token            ## Ignore the token
6409            !!!next-token;            !!!next-token;

Legend:
Removed from v.1.157  
changed lines
  Added in v.1.158

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24