<?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>209021</bug_id>
          
          <creation_ts>2020-03-12 15:02:16 -0700</creation_ts>
          <short_desc>Crash in TextManipulationController::replace</short_desc>
          <delta_ts>2020-03-12 16:31:30 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>cdumez</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>mifenton</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1629379</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-03-12 15:02:16 -0700</bug_when>
    <thetext>TextManipulationController::replace can crash when accessing TextIterator::node and other places.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629385</commentid>
    <comment_count>1</comment_count>
      <attachid>393421</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-03-12 15:16:30 -0700</bug_when>
    <thetext>Created attachment 393421
Fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629389</commentid>
    <comment_count>2</comment_count>
      <attachid>393421</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-03-12 15:41:18 -0700</bug_when>
    <thetext>Comment on attachment 393421
Fixes the bug

View in context: https://bugs.webkit.org/attachment.cgi?id=393421&amp;action=review

&gt; Source/WebCore/editing/TextManipulationController.cpp:580
&gt; +    Position insertionPoint = positionBeforeNode(firstContentNode.get()).parentAnchoredEquivalent();

Is it possible `firstContentNode` is null here? That would lead to a debug assertion in positionBeforeNode.


(Seems like the answer is no because we’d already bail in the early return above…?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629394</commentid>
    <comment_count>3</comment_count>
      <attachid>393421</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-03-12 15:45:56 -0700</bug_when>
    <thetext>Comment on attachment 393421
Fixes the bug

View in context: https://bugs.webkit.org/attachment.cgi?id=393421&amp;action=review

&gt;&gt; Source/WebCore/editing/TextManipulationController.cpp:580
&gt;&gt; +    Position insertionPoint = positionBeforeNode(firstContentNode.get()).parentAnchoredEquivalent();
&gt; 
&gt; Is it possible `firstContentNode` is null here? That would lead to a debug assertion in positionBeforeNode.
&gt; 
&gt; 
&gt; (Seems like the answer is no because we’d already bail in the early return above…?)

I don&apos;t think so because to get here, we must have had at least one token,
which means we must have had at least one content node.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629415</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-03-12 16:29:32 -0700</bug_when>
    <thetext>Committed r258371: &lt;https://trac.webkit.org/changeset/258371&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629416</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-03-12 16:29:57 -0700</bug_when>
    <thetext>&lt;rdar://problem/60376855&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393421</attachid>
            <date>2020-03-12 15:16:30 -0700</date>
            <delta_ts>2020-03-12 16:31:30 -0700</delta_ts>
            <desc>Fixes the bug</desc>
            <filename>fix209021.patch</filename>
            <type>text/plain</type>
            <size>7763</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1ODMxNCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDIwLTAzLTEyICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIENyYXNoIGluIFRleHRNYW5pcHVs
YXRpb25Db250cm9sbGVyOjpyZXBsYWNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDkwMjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHJlc3NlcyB0d28gaXNzdWVzIHRoYXQgY2Fu
IGxlYWQgdG8gYSBjcmFzaCBpbiBUZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlcjo6cmVwbGFjZS4K
KworICAgICAgICBUaGUgYmlnZ2VzdCBpc3N1ZSBoZXJlIGlzIHRoYXQgY29tbW9uQW5jZXN0b3Ig
Y2FuIGJlIGEgZGVzY2VuZGVudCBvZiBpbnNlcnRpb25Qb2ludCdzIGNvbnRhaW5lck5vZGUuCisg
ICAgICAgIEFkZHJlc3NlZCB0aGlzIGlzc3VlIGJ5IGNvbXB1dGluZyB0aGUgZmlyc3Qgbm9kZSB0
byByZW1vdmUgaW4gdGhlIHNhbWUgdHJhdmVyYWwgd2hlcmUgY29tbW9uQW5jZXN0b3IKKyAgICAg
ICAgaXMgY29tcHV0ZWQgYnkgd2F5IG9mIHJlbWVtYmVyaW5nIHRoZSB2ZXJ5IGZpcnN0IGNvbnRl
bnQgbm9kZSAoZmlyc3RDb250ZW50Tm9kZSkuIFRoaXMgYWxzbyBsZXRzIHVzCisgICAgICAgIGVs
aW1pbmF0ZSB0aGUgc2Vjb25kYXJ5LCByZWR1bmRhbnQgdHJhdmVyc2FsIHRvIGRpc2NvdmVyIGFs
bCB0aGUgbm9kZXMgdG8gcmVtb3ZlLgorCisgICAgICAgIEluIGFkZGl0aW9uLCB0aGUgc2V0IG9m
IG5vZGVzIHRvIHJlbW92ZSBjb3VsZCBzb21ldGltZXMgY29udGFpbiBjb21tb25BbmNlc3RvciBh
bmQgaXRzIGFuY2VzdG9ycy4KKyAgICAgICAgVGhpcyBwYXRjaCBhZGRyZXNzZXMgdGhpcyBpc3N1
ZSBieSByZW1vdmluZyBhbGwgaW5jbHVzaXZlIGFuY2VzdG9ycyBvZiBjb21tb25BbmNlc3RvciBm
cm9tIG5vZGVzVG9SZW1vdmUuCisKKyAgICAgICAgKiBlZGl0aW5nL1RleHRNYW5pcHVsYXRpb25D
b250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHRNYW5pcHVsYXRpb25Db250cm9s
bGVyOjpyZXBsYWNlKToKKwogMjAyMC0wMy0xMSAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxl
LmNvbT4KIAogICAgICAgICBBZG9wdCBBVlNhbXBsZUJ1ZmZlclZpZGVvT3V0cHV0CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRNYW5pcHVsYXRpb25Db250cm9sbGVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRNYW5pcHVsYXRpb25Db250cm9s
bGVyLmNwcAkocmV2aXNpb24gMjU4MzE0KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0
TWFuaXB1bGF0aW9uQ29udHJvbGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4MSwxMCArNDgx
LDE1IEBACiAgICAgfQogCiAgICAgUmVmUHRyPE5vZGU+IGNvbW1vbkFuY2VzdG9yOworICAgIFJl
ZlB0cjxOb2RlPiBmaXJzdENvbnRlbnROb2RlOwogICAgIFBhcmFncmFwaENvbnRlbnRJdGVyYXRv
ciBpdGVyYXRvciB7IGl0ZW0uc3RhcnQsIGl0ZW0uZW5kIH07CiAgICAgSGFzaFNldDxSZWY8Tm9k
ZT4+IGV4Y2x1ZGVkTm9kZXM7CisgICAgSGFzaFNldDxSZWY8Tm9kZT4+IG5vZGVzVG9SZW1vdmU7
CiAgICAgZm9yICg7ICFpdGVyYXRvci5hdEVuZCgpOyBpdGVyYXRvci5hZHZhbmNlKCkpIHsKICAg
ICAgICAgYXV0byBjb250ZW50ID0gaXRlcmF0b3IuY3VycmVudENvbnRlbnQoKTsKKyAgICAgICAg
CisgICAgICAgIGlmIChjb250ZW50Lm5vZGUpCisgICAgICAgICAgICBub2Rlc1RvUmVtb3ZlLmFk
ZCgqY29udGVudC5ub2RlKTsKIAogICAgICAgICBpZiAoIWNvbnRlbnQuaXNSZXBsYWNlZENvbnRl
bnQgJiYgIWNvbnRlbnQuaXNUZXh0Q29udGVudCkKICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAt
NDk4LDMzICs1MDMsMjQgQEAKIAogICAgICAgICB0b2tlbkV4Y2hhbmdlTWFwLnNldChjdXJyZW50
VG9rZW4uaWRlbnRpZmllciwgVG9rZW5FeGNoYW5nZURhdGEgeyBjb250ZW50Lm5vZGUuY29weVJl
ZigpLCBjdXJyZW50VG9rZW4uY29udGVudCwgY3VycmVudFRva2VuLmlzRXhjbHVkZWQgfSk7CiAg
ICAgICAgICsrY3VycmVudFRva2VuSW5kZXg7CisgICAgICAgIAorICAgICAgICBpZiAoIWZpcnN0
Q29udGVudE5vZGUpCisgICAgICAgICAgICBmaXJzdENvbnRlbnROb2RlID0gY29udGVudC5ub2Rl
OwogCiAgICAgICAgIC8vIEZJWE1FOiBUYWtlIGNhcmUgb2Ygd2hlbiBjdXJyZW50Tm9kZSBpcyBu
dWxscHRyLgotICAgICAgICBpZiAoY29udGVudC5ub2RlKSB7CisgICAgICAgIGlmIChSZWZQdHI8
Tm9kZT4gcGFyZW50ID0gY29udGVudC5ub2RlID8gY29udGVudC5ub2RlLT5wYXJlbnROb2RlKCkg
OiBudWxscHRyKSB7CiAgICAgICAgICAgICBpZiAoIWNvbW1vbkFuY2VzdG9yKQotICAgICAgICAg
ICAgICAgIGNvbW1vbkFuY2VzdG9yID0gY29udGVudC5ub2RlOwotICAgICAgICAgICAgZWxzZSBp
ZiAoIWNvbnRlbnQubm9kZS0+aXNEZXNjZW5kYW50T2YoY29tbW9uQW5jZXN0b3IuZ2V0KCkpKSB7
Ci0gICAgICAgICAgICAgICAgY29tbW9uQW5jZXN0b3IgPSBSYW5nZTo6Y29tbW9uQW5jZXN0b3JD
b250YWluZXIoY29tbW9uQW5jZXN0b3IuZ2V0KCksIGNvbnRlbnQubm9kZS5nZXQoKSk7CisgICAg
ICAgICAgICAgICAgY29tbW9uQW5jZXN0b3IgPSBwYXJlbnQ7CisgICAgICAgICAgICBlbHNlIGlm
ICghcGFyZW50LT5pc0Rlc2NlbmRhbnRPZihjb21tb25BbmNlc3Rvci5nZXQoKSkpIHsKKyAgICAg
ICAgICAgICAgICBjb21tb25BbmNlc3RvciA9IFJhbmdlOjpjb21tb25BbmNlc3RvckNvbnRhaW5l
cihjb21tb25BbmNlc3Rvci5nZXQoKSwgcGFyZW50LmdldCgpKTsKICAgICAgICAgICAgICAgICBB
U1NFUlQoY29tbW9uQW5jZXN0b3IpOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQog
Ci0gICAgUmVmUHRyPE5vZGU+IG5vZGVBZnRlclN0YXJ0ID0gaXRlbS5zdGFydC5jb21wdXRlTm9k
ZUFmdGVyUG9zaXRpb24oKTsKLSAgICBpZiAoIW5vZGVBZnRlclN0YXJ0KQotICAgICAgICBub2Rl
QWZ0ZXJTdGFydCA9IGl0ZW0uc3RhcnQuY29udGFpbmVyTm9kZSgpOworICAgIGZvciAoYXV0byBu
b2RlID0gY29tbW9uQW5jZXN0b3I7IG5vZGU7IG5vZGUgPSBub2RlLT5wYXJlbnROb2RlKCkpCisg
ICAgICAgIG5vZGVzVG9SZW1vdmUucmVtb3ZlKCpub2RlKTsKIAotICAgIFJlZlB0cjxOb2RlPiBu
b2RlQWZ0ZXJFbmQgPSBpdGVtLmVuZC5jb21wdXRlTm9kZUFmdGVyUG9zaXRpb24oKTsKLSAgICBp
ZiAoIW5vZGVBZnRlckVuZCkKLSAgICAgICAgbm9kZUFmdGVyRW5kID0gTm9kZVRyYXZlcnNhbDo6
bmV4dFNraXBwaW5nQ2hpbGRyZW4oKml0ZW0uZW5kLmNvbnRhaW5lck5vZGUoKSk7Ci0KLSAgICBI
YXNoU2V0PFJlZjxOb2RlPj4gbm9kZXNUb1JlbW92ZTsKLSAgICBmb3IgKFJlZlB0cjxOb2RlPiBj
dXJyZW50Tm9kZSA9IG5vZGVBZnRlclN0YXJ0OyBjdXJyZW50Tm9kZSAmJiBjdXJyZW50Tm9kZSAh
PSBub2RlQWZ0ZXJFbmQ7IGN1cnJlbnROb2RlID0gTm9kZVRyYXZlcnNhbDo6bmV4dCgqY3VycmVu
dE5vZGUpKSB7Ci0gICAgICAgIGlmIChjb21tb25BbmNlc3RvciA9PSBjdXJyZW50Tm9kZSkKLSAg
ICAgICAgICAgIGNvbW1vbkFuY2VzdG9yID0gY3VycmVudE5vZGUtPnBhcmVudE5vZGUoKTsKLSAg
ICAgICAgbm9kZXNUb1JlbW92ZS5hZGQoKmN1cnJlbnROb2RlKTsKLSAgICB9Ci0KICAgICBWZWN0
b3I8UmVmPE5vZGU+PiBjdXJyZW50RWxlbWVudFN0YWNrOwogICAgIEhhc2hTZXQ8UmVmPE5vZGU+
PiByZXVzZWRPcmlnaW5hbE5vZGVzOwogICAgIFZlY3RvcjxOb2RlSW5zZXJ0aW9uPiBpbnNlcnRp
b25zOwpAQCAtNTgxLDkgKzU3Nyw3IEBACiAgICAgICAgIH0KICAgICB9CiAKLSAgICBQb3NpdGlv
biBpbnNlcnRpb25Qb2ludCA9IGl0ZW0uc3RhcnQ7Ci0gICAgaWYgKGluc2VydGlvblBvaW50LmFu
Y2hvck5vZGUoKSAhPSBpbnNlcnRpb25Qb2ludC5jb250YWluZXJOb2RlKCkpCi0gICAgICAgIGlu
c2VydGlvblBvaW50ID0gaW5zZXJ0aW9uUG9pbnQucGFyZW50QW5jaG9yZWRFcXVpdmFsZW50KCk7
CisgICAgUG9zaXRpb24gaW5zZXJ0aW9uUG9pbnQgPSBwb3NpdGlvbkJlZm9yZU5vZGUoZmlyc3RD
b250ZW50Tm9kZS5nZXQoKSkucGFyZW50QW5jaG9yZWRFcXVpdmFsZW50KCk7CiAgICAgd2hpbGUg
KGluc2VydGlvblBvaW50LmNvbnRhaW5lck5vZGUoKSAhPSBjb21tb25BbmNlc3RvcikKICAgICAg
ICAgaW5zZXJ0aW9uUG9pbnQgPSBwb3NpdGlvbkluUGFyZW50QmVmb3JlTm9kZShpbnNlcnRpb25Q
b2ludC5jb250YWluZXJOb2RlKCkpOwogICAgIEFTU0VSVCghaW5zZXJ0aW9uUG9pbnQuaXNOdWxs
KCkpOwpJbmRleDogVG9vbHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0NoYW5nZUxv
ZwkocmV2aXNpb24gMjU4MzYyKQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMjAtMDMtMTIgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5v
cmc+CisKKyAgICAgICAgQ3Jhc2ggaW4gVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OnJlcGxh
Y2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwOTAy
MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVk
IGEgcmVncmVzc2lvbiB0ZXN0LgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS9UZXh0TWFuaXB1bGF0aW9uLm1tOgorICAgICAgICAoVGV4dE1hbmlwdWxhdGlvbi5D
b21wbGV0ZVRleHRNYW5pcHVsYXRpb25TaG91bGRSZXBsYWNlQ29udGVudEZvbGxvd2VkQWZ0ZXJJ
bWFnZUluQ1NTVGFibGUpOgorCiAyMDIwLTAzLTEyICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFu
QGFwcGxlLmNvbT4KIAogICAgICAgICBbbWFjT1NdIF9BWFNBcHBsaWNhdGlvbkFjY2Vzc2liaWxp
dHlFbmFibGVkIHNob3VsZCBub3QgYmUgY2FsbGVkCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdENvY29hL1RleHRNYW5pcHVsYXRpb24ubW0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9UZXh0TWFuaXB1bGF0aW9uLm1tCShy
ZXZpc2lvbiAyNTgzMTQpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L1RleHRNYW5pcHVsYXRpb24ubW0JKHdvcmtpbmcgY29weSkKQEAgLTkwNiw2ICs5MDYsNDIgQEAK
ICAgICAgICAgIjxpbWcgc3JjPVwiYXBwbGUuZ2lmXCIgYWx0PVwiQXBwbGVcIj48L2Rpdj48L2Jv
ZHk+IiwgW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAImRvY3VtZW50LmRv
Y3VtZW50RWxlbWVudC5pbm5lckhUTUwiXSk7CiB9CiAKK1RFU1QoVGV4dE1hbmlwdWxhdGlvbiwg
Q29tcGxldGVUZXh0TWFuaXB1bGF0aW9uU2hvdWxkUmVwbGFjZUNvbnRlbnRGb2xsb3dlZEFmdGVy
SW1hZ2VJbkNTU1RhYmxlKQoreworICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGV4dE1h
bmlwdWxhdGlvbkRlbGVnYXRlIGFsbG9jXSBpbml0XSk7CisgICAgYXV0byB3ZWJWaWV3ID0gYWRv
cHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAw
LCA0MDAsIDQwMCldKTsKKyAgICBbd2ViVmlldyBfc2V0VGV4dE1hbmlwdWxhdGlvbkRlbGVnYXRl
OmRlbGVnYXRlLmdldCgpXTsKKworICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0
cmluZzpAIjwhRE9DVFlQRSBodG1sPjxodG1sPjxib2R5PiIKKyAgICAgICAgIjxkaXYgc3R5bGU9
XCJkaXNwbGF5OiB0YWJsZVwiPjxkaXYgc3R5bGU9XCJmbG9hdDogbGVmdDtcIj48aW1nIHNyYz1c
ImFwcGxlLmdpZlwiIHN0eWxlPVwiZGlzcGxheTogZmxleDtcIj48L2Rpdj4iCisgICAgICAgICI8
ZGl2PjxzcGFuIHN0eWxlPVwiZGlzcGxheTogYmxvY2tcIj5oZWxsbyB3b3JsZDwvc3Bhbj48L2Rp
dj48L2JvZHk+PC9odG1sPiJdOworCisgICAgZG9uZSA9IGZhbHNlOworICAgIFt3ZWJWaWV3IF9z
dGFydFRleHRNYW5pcHVsYXRpb25zV2l0aENvbmZpZ3VyYXRpb246bmlsIGNvbXBsZXRpb246XnsK
KyAgICAgICAgZG9uZSA9IHRydWU7CisgICAgfV07CisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6
cnVuKCZkb25lKTsKKworICAgIGF1dG8gKml0ZW1zID0gW2RlbGVnYXRlIGl0ZW1zXTsKKyAgICBF
WFBFQ1RfRVEoaXRlbXMuY291bnQsIDJVTCk7CisgICAgRVhQRUNUX0VRKGl0ZW1zWzFdLnRva2Vu
cy5jb3VudCwgMVVMKTsKKyAgICBFWFBFQ1RfU1RSRVEoIltdIiwgaXRlbXNbMF0udG9rZW5zWzBd
LmNvbnRlbnQuVVRGOFN0cmluZyk7CisgICAgRVhQRUNUX0VRKGl0ZW1zWzBdLnRva2Vucy5jb3Vu
dCwgMVVMKTsKKyAgICBFWFBFQ1RfU1RSRVEoImhlbGxvIHdvcmxkIiwgaXRlbXNbMV0udG9rZW5z
WzBdLmNvbnRlbnQuVVRGOFN0cmluZyk7CisKKyAgICBkb25lID0gZmFsc2U7CisgICAgW3dlYlZp
ZXcgX2NvbXBsZXRlVGV4dE1hbmlwdWxhdGlvbkZvckl0ZW1zOkBbCisgICAgICAgIChfV0tUZXh0
TWFuaXB1bGF0aW9uSXRlbSAqKWNyZWF0ZUl0ZW0oaXRlbXNbMF0uaWRlbnRpZmllciwgeyB7IGl0
ZW1zWzBdLnRva2Vuc1swXS5pZGVudGlmaWVyLCBuaWwgfSB9KSwKKyAgICAgICAgKF9XS1RleHRN
YW5pcHVsYXRpb25JdGVtICopY3JlYXRlSXRlbShpdGVtc1sxXS5pZGVudGlmaWVyLCB7IHsgaXRl
bXNbMV0udG9rZW5zWzBdLmlkZW50aWZpZXIsIEAiaGVsbG8sIHdvcmxkIiB9IH0pLAorICAgIF0g
Y29tcGxldGlvbjpeKE5TQXJyYXk8TlNFcnJvciAqPiAqZXJyb3JzKSB7CisgICAgICAgIEVYUEVD
VF9FUShlcnJvcnMsIG5pbCk7CisgICAgICAgIGRvbmUgPSB0cnVlOworICAgIH1dOworICAgIFRl
c3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmZG9uZSk7CisgICAgRVhQRUNUX1dLX1NUUkVRKCI8ZGl2
IHN0eWxlPVwiZGlzcGxheTogdGFibGVcIj48ZGl2IHN0eWxlPVwiZmxvYXQ6IGxlZnQ7XCI+PGlt
ZyBzcmM9XCJhcHBsZS5naWZcIiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7XCI+PC9kaXY+IgorICAg
ICAgICAiPGRpdj48c3BhbiBzdHlsZT1cImRpc3BsYXk6IGJsb2NrXCI+aGVsbG8sIHdvcmxkPC9z
cGFuPjwvZGl2PjwvZGl2PiIsIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6
QCJkb2N1bWVudC5ib2R5LmlubmVySFRNTCJdKTsKK30KKwogVEVTVChUZXh0TWFuaXB1bGF0aW9u
LCBDb21wbGV0ZVRleHRNYW5pcHVsYXRpb25TaG91bGRCYXRjaEl0ZW1DYWxsYmFjaykKIHsKICAg
ICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1RleHRNYW5pcHVsYXRpb25EZWxlZ2F0ZSBhbGxv
Y10gaW5pdF0pOwo=
</data>
<flag name="review"
          id="408809"
          type_id="1"
          status="+"
          setter="wenson_hsieh"
    />
          </attachment>
      

    </bug>

</bugzilla>