Changeset 7545


Ignore:
Timestamp:
07/06/2012 09:14:51 AM (2 years ago)
Author:
garry.yao
Message:

#9094: Fixed a regression of [7542] which breaks flash objects parsing.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • CKEditor/trunk/_source/core/htmlparser/element.js

    r7542 r7545  
    2626         * @example 
    2727         */ 
    28         this.attributes = attributes || ( attributes = {} ); 
     28        this.attributes = attributes || {}; 
    2929 
    3030        /** 
     
    3535        this.children = []; 
    3636 
    37         var tagName = attributes[ 'data-cke-real-element-type' ] || name || ''; 
    38  
    39         // Reveal the real semantic of our internal custom tag name (#6639). 
    40         var internalTag = tagName.match( /^cke:(.*)/ ); 
    41         internalTag && ( tagName = internalTag[ 1 ] ); 
    42  
    43         var dtd                 = CKEDITOR.dtd, 
    44                 isBlockLike     = !!( dtd.$nonBodyContent[ tagName ] 
    45                                 || dtd.$block[ tagName ] 
    46                                 || dtd.$listItem[ tagName ] 
    47                                 || dtd.$tableContent[ tagName ] 
    48                                 || dtd.$nonEditable[ tagName ] 
    49                                 || tagName == 'br' ), 
    50                 isEmpty = !!dtd.$empty[ tagName ]; 
    51  
    52         this.isEmpty    = isEmpty; 
    53         this.isUnknown  = !dtd[ tagName ]; 
     37        // Reveal the real semantic of our internal custom tag name (#6639), 
     38        // when resolving whether it's block like. 
     39        var realName = name || '', 
     40                prefixed = realName.match( /^cke:(.*)/ ); 
     41        prefixed && ( realName = prefixed[ 1 ] ); 
     42 
     43        var isBlockLike = !!( CKEDITOR.dtd.$nonBodyContent[ realName ] 
     44                                || CKEDITOR.dtd.$block[ realName ] 
     45                                || CKEDITOR.dtd.$listItem[ realName ] 
     46                                || CKEDITOR.dtd.$tableContent[ realName ] 
     47                                || CKEDITOR.dtd.$nonEditable[ realName ] 
     48                                || realName == 'br' ); 
     49 
     50        this.isEmpty    = !!CKEDITOR.dtd.$empty[ name ]; 
     51        this.isUnknown  = !CKEDITOR.dtd[ name ]; 
    5452 
    5553        /** @private */ 
     
    5755        { 
    5856                isBlockLike : isBlockLike, 
    59                 hasInlineStarted : isEmpty || !isBlockLike 
     57                hasInlineStarted : this.isEmpty || !isBlockLike 
    6058        }; 
    6159}; 
Note: See TracChangeset for help on using the changeset viewer.
© 2003 – 2012 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy