<?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>31545</bug_id>
          
          <creation_ts>2009-11-16 04:34:45 -0800</creation_ts>
          <short_desc>WebCore::SelectionController::setSelection NULL pointer</short_desc>
          <delta_ts>2010-03-23 22:40:16 -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>SVG</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows Vista</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://skypher.com/SkyLined/Repro/WebKit/Bug%2031545%20-%20WebCore..SelectionController..setSelection%20NULL%20pointer/repro.html</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Berend-Jan Wever">skylined</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>morrita</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>163944</commentid>
    <comment_count>0</comment_count>
      <attachid>43293</attachid>
    <who name="Berend-Jan Wever">skylined</who>
    <bug_when>2009-11-16 04:34:45 -0800</bug_when>
    <thetext>Created attachment 43293
Repro case

The below code causes a NULL pointer:

&lt;SCRIPT&gt;
html_document=document.implementation.createHTMLDocument();
svg_element=html_document.createElementNS(&quot;http://www.w3.org/2000/svg&quot;,&quot;svg&quot;);
svg_element.deselectAll();
&lt;/SCRIPT&gt;

Relevant functions on stack:
WebCore::SelectionController::setSelection(class WebCore::VisibleSelection * s = 0x0012ef0c, bool closeTyping = true, bool clearTypingStyle = true, bool userTriggered = false)+0x9
WebCore::SelectionController::clear(void)+0x1f
WebCore::SVGSVGElementInternal::deselectAllCallback(class v8::Arguments * args = 0x0012efac)+0x4c</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163945</commentid>
    <comment_count>1</comment_count>
    <who name="Berend-Jan Wever">skylined</who>
    <bug_when>2009-11-16 04:37:42 -0800</bug_when>
    <thetext>Added link to online repro</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202979</commentid>
    <comment_count>2</comment_count>
      <attachid>51405</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-03-23 03:23:06 -0700</bug_when>
    <thetext>Created attachment 51405
patch v0; add NULL check</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202988</commentid>
    <comment_count>3</comment_count>
    <who name="Berend-Jan Wever">skylined</who>
    <bug_when>2010-03-23 04:02:19 -0700</bug_when>
    <thetext>LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202992</commentid>
    <comment_count>4</comment_count>
      <attachid>51405</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-03-23 04:15:35 -0700</bug_when>
    <thetext>Comment on attachment 51405
patch v0; add NULL check

Thank you for reviewing!

I cannot figure out what style-cheker claims.
It is OK for my local working copy...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203061</commentid>
    <comment_count>5</comment_count>
      <attachid>51405</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2010-03-23 08:50:53 -0700</bug_when>
    <thetext>Comment on attachment 51405
patch v0; add NULL check

Please don&apos;t r+ the patch unless you&apos;re a reviewer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203062</commentid>
    <comment_count>6</comment_count>
      <attachid>51405</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-03-23 09:01:24 -0700</bug_when>
    <thetext>Comment on attachment 51405
patch v0; add NULL check

&gt; +++ b/LayoutTests/svg/dom/frame-related-api-during-load-expected.txt
&gt; @@ -0,0 +1 @@
&gt; +OK unless it got crashed.

A test should ideally say a few words about what is being tested, and maybe provide a link to the bug.

r=me as is though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203091</commentid>
    <comment_count>7</comment_count>
      <attachid>51405</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-23 10:10:48 -0700</bug_when>
    <thetext>Comment on attachment 51405
patch v0; add NULL check

Clearing flags on attachment: 51405

Committed r56401: &lt;http://trac.webkit.org/changeset/56401&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203092</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-23 10:10:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203328</commentid>
    <comment_count>9</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-03-23 22:40:16 -0700</bug_when>
    <thetext>ap: Thank you for reviewing.
&gt; A test should ideally say a few words about what is being tested, and maybe
&gt; provide a link to the bug.
Agreed. So I filed this fix on Bug 36517 with a patch.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>43293</attachid>
            <date>2009-11-16 04:34:45 -0800</date>
            <delta_ts>2009-11-16 04:34:45 -0800</delta_ts>
            <desc>Repro case</desc>
            <filename>repro.html</filename>
            <type>text/html</type>
            <size>188</size>
            <attacher name="Berend-Jan Wever">skylined</attacher>
            
              <data encoding="base64">PFNDUklQVD4NCmh0bWxfZG9jdW1lbnQ9ZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRN
TERvY3VtZW50KCk7DQpzdmdfZWxlbWVudD1odG1sX2RvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygi
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLCJzdmciKTsNCnN2Z19lbGVtZW50LmRlc2VsZWN0
QWxsKCk7DQo8L1NDUklQVD4=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>51405</attachid>
            <date>2010-03-23 03:23:06 -0700</date>
            <delta_ts>2010-03-23 10:10:48 -0700</delta_ts>
            <desc>patch v0; add NULL check</desc>
            <filename>bug-31545-20100323192304.patch</filename>
            <type>text/plain</type>
            <size>3013</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwNGExNTEzLi5jMGI5OTQ2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMDMt
MjMgIE1PUklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViQ29yZTo6U2VsZWN0aW9uQ29udHJv
bGxlcjo6c2V0U2VsZWN0aW9uIE5VTEwgcG9pbnRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzE1NDUKKworICAgICAgICAqIHN2Zy9kb20vZnJhbWUt
cmVsYXRlZC1hcGktZHVyaW5nLWxvYWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBz
dmcvZG9tL2ZyYW1lLXJlbGF0ZWQtYXBpLWR1cmluZy1sb2FkLmh0bWw6IEFkZGVkLgorCiAyMDEw
LTAzLTIyICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CiAKICAgICAgICAgUmVt
b3ZlIGh0dHAvdGVzdHMvY29va2llcy9zaW1wbGUtY29va2llcy1leHBpcmVkLmh0bWwgZnJvbSBz
a2lwIGxpc3QgYWZ0ZXIgQ0ZOZXR3b3JrIGlzc3VlIGlzIHJlc29sdmVkCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9zdmcvZG9tL2ZyYW1lLXJlbGF0ZWQtYXBpLWR1cmluZy1sb2FkLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3N2Zy9kb20vZnJhbWUtcmVsYXRlZC1hcGktZHVyaW5nLWxvYWQt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE1YjQ5MGUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvZG9tL2ZyYW1lLXJlbGF0ZWQtYXBp
LWR1cmluZy1sb2FkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitPSyB1bmxlc3MgaXQgZ290
IGNyYXNoZWQuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZG9tL2ZyYW1lLXJlbGF0ZWQt
YXBpLWR1cmluZy1sb2FkLmh0bWwgYi9MYXlvdXRUZXN0cy9zdmcvZG9tL2ZyYW1lLXJlbGF0ZWQt
YXBpLWR1cmluZy1sb2FkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
NDI5YzQzMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9kb20vZnJhbWUtcmVs
YXRlZC1hcGktZHVyaW5nLWxvYWQuaHRtbApAQCAtMCwwICsxLDIyIEBACis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgIGxheW91
dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworZnVuY3Rpb24gdGVzdCgpCit7CisgICAg
aHRtbF9kb2N1bWVudCA9IGRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVu
dCgpOworICAgIHN2Z19lbGVtZW50ID0gaHRtbF9kb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0
dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwic3ZnIik7CisgICAgLy8gSW1wbGVtZW50YXRpb25z
IG9mIGZvbGxvd2luZyBBUElzIGFjY2VzcyBGcmFtZSBvYmplY3QsIHdoaWNoIGNhbiBiZSBOVUxM
LgorICAgIHN2Z19lbGVtZW50LmRlc2VsZWN0QWxsKCk7CisgICAgc3ZnX2VsZW1lbnQuY3VycmVu
dFNjYWxlID0gc3ZnX2VsZW1lbnQuY3VycmVudFNjYWxlOworCisgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImNvbnNvbGUiKS5pbm5lckhUTUwgPSAiT0sgdW5sZXNzIGl0IGdvdCBjcmFzaGVk
LiI7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0idGVzdCgpIj4KKzxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmOGE3ZjdiLi5mN2JhOTdkIDEw
MDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE3IEBACisyMDEwLTAzLTIzICBNT1JJVEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdl
YkNvcmU6OlNlbGVjdGlvbkNvbnRyb2xsZXI6OnNldFNlbGVjdGlvbiBOVUxMIHBvaW50ZXIKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMxNTQ1CisKKyAg
ICAgICAgQWRkZWQgbWlzc2luZyBOVUxMLWNoZWNrIHRoYXQgb3RoZXIgQVBJcyBoYXZlLgorCisg
ICAgICAgIFRlc3Q6IHN2Zy9kb20vZnJhbWUtcmVsYXRlZC1hcGktZHVyaW5nLWxvYWQuaHRtbAor
CisgICAgICAgICogc3ZnL1NWR1NWR0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZH
U1ZHRWxlbWVudDo6ZGVzZWxlY3RBbGwpOgorCiAyMDEwLTAzLTIyICBGdW1pdG9zaGkgVWthaSAg
PHVrYWlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4IGZvciBD
aHJvbWltIE1hYyBhdCByNTYzNzYKZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3ZnL1NWR1NWR0VsZW1l
bnQuY3BwIGIvV2ViQ29yZS9zdmcvU1ZHU1ZHRWxlbWVudC5jcHAKaW5kZXggN2E2ZGI4NC4uNGMw
NjAwOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdmcvU1ZHU1ZHRWxlbWVudC5jcHAKKysrIGIvV2Vi
Q29yZS9zdmcvU1ZHU1ZHRWxlbWVudC5jcHAKQEAgLTM5NCw3ICszOTQsOCBAQCBib29sIFNWR1NW
R0VsZW1lbnQ6OmNoZWNrRW5jbG9zdXJlKFNWR0VsZW1lbnQqLCBjb25zdCBGbG9hdFJlY3QmIHJl
Y3QpCiAKIHZvaWQgU1ZHU1ZHRWxlbWVudDo6ZGVzZWxlY3RBbGwoKQogewotICAgIGRvY3VtZW50
KCktPmZyYW1lKCktPnNlbGVjdGlvbigpLT5jbGVhcigpOworICAgIGlmIChGcmFtZSogZnJhbWUg
PSBkb2N1bWVudCgpLT5mcmFtZSgpKQorICAgICAgICBmcmFtZS0+c2VsZWN0aW9uKCktPmNsZWFy
KCk7CiB9CiAKIGZsb2F0IFNWR1NWR0VsZW1lbnQ6OmNyZWF0ZVNWR051bWJlcigpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>