<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>44833</bug_id>
          
          <creation_ts>2010-08-28 22:57:52 -0700</creation_ts>
          <short_desc>Each EntityMaskIn* needs explanation</short_desc>
          <delta_ts>2010-09-21 22:57:05 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>HTML Editing</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>darin</cc>
    
    <cc>enrica</cc>
    
    <cc>ojan</cc>
    
    <cc>tony</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>271125</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-08-28 22:57:52 -0700</bug_when>
    <thetext>Darin brought up in https://bugs.webkit.org/show_bug.cgi?id=44831 that we should explain why each entity are escaped in CDATA, PCDATA, attribute value, and why we also escape nbsp in HTML documents.

In particular, we need the explanation for the following contants:
http://trac.webkit.org/browser/trunk/WebCore/editing/markup.cpp?rev=66326#L103
103	    EntityMaskInCDATA = EntityNone,
104	    EntityMaskInPCDATA = EntityAmp | EntityLt | EntityGt,
105	    EntityMaskInHTMLPCDATA = EntityMaskInPCDATA | EntityNbsp,
106	    EntityMaskInAttributeValue = EntityAmp | EntityLt | EntityGt | EntityQuot,
107	    EntityMaskInHTMLAttributeValue = EntityMaskInAttributeValue | EntityNbsp,</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>271126</commentid>
    <comment_count>1</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-08-28 23:07:09 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/32879 and http://trac.webkit.org/changeset/34197 explain why we should escape nbsp only in HTML documents.  For compatibility reason, nbsp should be converted to an entity reference in innerHTML but cannot be converted in XML documents because it&apos;ll invalidates XSL.

http://trac.webkit.org/changeset/33451 also clarifies the reason why replace &gt; with &amp;gt; that WebKit fails jQuery test without it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>271128</commentid>
    <comment_count>2</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-08-28 23:27:22 -0700</bug_when>
    <thetext>I also realized that we have no need for the constant EntityNone. We can just use 0 for it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280841</commentid>
    <comment_count>3</comment_count>
      <attachid>67946</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-09-17 13:54:58 -0700</bug_when>
    <thetext>Created attachment 67946
adds explanation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282779</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-09-21 22:57:05 -0700</bug_when>
    <thetext>Committed r68016: &lt;http://trac.webkit.org/changeset/68016&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67946</attachid>
            <date>2010-09-17 13:54:58 -0700</date>
            <delta_ts>2010-09-18 08:31:23 -0700</delta_ts>
            <desc>adds explanation</desc>
            <filename>fix44833</filename>
            <type>text/plain</type>
            <size>1594</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvZWRpdGluZy9tYXJrdXAuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
ZWRpdGluZy9tYXJrdXAuY3BwCShyZXZpc2lvbiA2NzY0MSkKKysrIFdlYkNvcmUvZWRpdGluZy9t
YXJrdXAuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05MywxNCArOTMsMTUgQEAKIH07CiAgICAgCiBl
bnVtIEVudGl0eU1hc2sgewotICAgIEVudGl0eU5vbmUgPSAweDAwMDAsCiAgICAgRW50aXR5QW1w
ID0gMHgwMDAxLAogICAgIEVudGl0eUx0ID0gMHgwMDAyLAogICAgIEVudGl0eUd0ID0gMHgwMDA0
LAogICAgIEVudGl0eVF1b3QgPSAweDAwMDgsCiAgICAgRW50aXR5TmJzcCA9IDB4MDAxMCwKIAot
ICAgIEVudGl0eU1hc2tJbkNEQVRBID0gRW50aXR5Tm9uZSwKKyAgICAvLyBOb24tYnJlYWtpbmcg
c3BhY2UgbmVlZHMgdG8gYmUgZXNjYXBlZCBpbiBpbm5lckhUTUwgZm9yIGNvbXBhdGliaWxpdHkg
cmVhc29uLiBTZWUgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMzI4NzkKKyAgICAv
LyBIb3dldmVyLCB3ZSBjYW5ub3QgZG8gdGhpcyBpbiBhIFhNTCBkb2N1bWVudCBiZWNhdXNlIGl0
IGRvZXMgbm90IGhhdmUgdGhlIGVudGl0eSByZWZlcmVuY2UgZGVmaW5lZCAoU2VlIHRoZSBidWcg
MTkyMTUpLgorICAgIEVudGl0eU1hc2tJbkNEQVRBID0gMCwKICAgICBFbnRpdHlNYXNrSW5QQ0RB
VEEgPSBFbnRpdHlBbXAgfCBFbnRpdHlMdCB8IEVudGl0eUd0LAogICAgIEVudGl0eU1hc2tJbkhU
TUxQQ0RBVEEgPSBFbnRpdHlNYXNrSW5QQ0RBVEEgfCBFbnRpdHlOYnNwLAogICAgIEVudGl0eU1h
c2tJbkF0dHJpYnV0ZVZhbHVlID0gRW50aXR5QW1wIHwgRW50aXR5THQgfCBFbnRpdHlHdCB8IEVu
dGl0eVF1b3QsCkluZGV4OiBXZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L0NoYW5nZUxvZwkocmV2aXNpb24gNjc3MzYpCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDQ4IEBACisyMDEwLTA5LTE3ICBSeW9zdWtlIE5pd2EgIDxybml3
YUB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEVhY2ggRW50aXR5TWFza0luKiBuZWVkcyBleHBsYW5hdGlvbgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc1OTQKKworICAgICAgICBBZGRl
ZCBhIGRlc2NyaXB0aW9uIGFzIHRvIHdoeSB3ZSBlc2NhcGUgbmJzcCB3aGVuIHNlcmlhbGl6aW5n
IEhUTUwgZG9jdW1lbnRzIGJ1dCBub3Qgd2hlbiBzZXJpYWxpemluZyBYTUwgZG9jdW1lbnRzLgor
CisgICAgICAgICogZWRpdGluZy9BcHBseVN0eWxlQ29tbWFuZC5jcHA6CisKIDIwMTAtMDktMTcg
IEx1Y2FzIERlIE1hcmNoaSAgPGx1Y2FzLmRlbWFyY2hpQHByb2Z1c2lvbi5tb2JpPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQsIGJ1aWxkIGZpeC4gQWRkIGZpbGVzIG1pc3NlZCBpbiByNjc3MDQuCg==
</data>
<flag name="review"
          id="57374"
          type_id="1"
          status="+"
          setter="tkent"
    />
          </attachment>
      

    </bug>

</bugzilla>