<?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>32770</bug_id>
          
          <creation_ts>2009-12-19 05:10:36 -0800</creation_ts>
          <short_desc>[GTK] Spell check works on selection but it should work on unselected words</short_desc>
          <delta_ts>2018-01-11 09:13:15 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Christian Dywan">christian</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>ddavidso</cc>
    
    <cc>dglazkov</cc>
    
    <cc>enrica</cc>
    
    <cc>eric</cc>
    
    <cc>evan</cc>
    
    <cc>fishd</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>pyther</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>173513</commentid>
    <comment_count>0</comment_count>
    <who name="Christian Dywan">christian</who>
    <bug_when>2009-12-19 05:10:36 -0800</bug_when>
    <thetext>The way spell check works is this: you enable it, type a misspelled word, a red underline appears. If you right-click the word, the underline vanishes and you see edit items. If you select the word, and then right-click you see spelling suggestions and edit items.

For comparison, Abiword: type a misspelled word, a red underline appears. If you right-click the word, you see spelling suggestions. If you select the word, then right-click, you see an editing menu.

I think what WebKitGTK+ is basically the opposite of what it should do, which is what Abiword does.

Incidentally the Mac always selects the word below the mouse pointer when you right-click, that is why the Mac port has no problem with the current logic.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173527</commentid>
    <comment_count>1</comment_count>
      <attachid>45239</attachid>
    <who name="Christian Dywan">christian</who>
    <bug_when>2009-12-19 10:01:35 -0800</bug_when>
    <thetext>Created attachment 45239
Pass a string to Editor and make GTK+ not use the selected text but the text in the node.

The patch allows the behaviour as described above, and the GTK+ port makes use of it, while other ports behave as before. Note that I didn&apos;t fully port Mac code paths in Editor to support the non-selection behaviour since they are not used and I can&apos;t really test it. If you think it&apos;s useful anyhow and agree with the approach, I can try to make the Mac changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173529</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-19 10:04:58 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45239 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173530</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-19 10:08:00 -0800</bug_when>
    <thetext>Attachment 45239 did not build on chromium:
Build output: http://webkit-commit-queue.appspot.com/results/133935</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173536</commentid>
    <comment_count>4</comment_count>
      <attachid>45240</attachid>
    <who name="Christian Dywan">christian</who>
    <bug_when>2009-12-19 10:28:54 -0800</bug_when>
    <thetext>Created attachment 45240
Pass a string to Editor and make GTK+ not use the selected text but the text in the node. #2

Updated. I accidentally put a bracket outside of an #if.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173540</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-19 10:30:34 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45240 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173567</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-12-19 11:43:25 -0800</bug_when>
    <thetext>I feel like Chromium had to do a similar behavoir change, so I&apos;m surprised this code change is this large.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173664</commentid>
    <comment_count>7</comment_count>
    <who name="Christian Dywan">christian</who>
    <bug_when>2009-12-20 01:45:19 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; I feel like Chromium had to do a similar behavoir change, so I&apos;m surprised this
&gt; code change is this large.

The reason is that Chormium doesn&apos;t use the common code path. ContextMenuClientImpl in WebKit/chromium does its own handling.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173694</commentid>
    <comment_count>8</comment_count>
    <who name="Evan Martin">evan</who>
    <bug_when>2009-12-20 03:10:55 -0800</bug_when>
    <thetext>I think this needs a test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173879</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-12-20 23:01:31 -0800</bug_when>
    <thetext>Whoever did the Chromium work should probably be CC&apos;d on this.  If I remember correctly there was recently someone from Apple who was re-writing the spell check code too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>176158</commentid>
    <comment_count>10</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-12-31 01:21:08 -0800</bug_when>
    <thetext>Attachment 45240 did not build on mac:
Build output: http://webkit-commit-queue.appspot.com/results/152834</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177382</commentid>
    <comment_count>11</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-05 14:05:42 -0800</bug_when>
    <thetext>Ah yes.  Doug was re-writing spell-check from Apple&apos;s side of things.  I&apos;m not sure he&apos;d actually be interested in this bug, but I&apos;ll add him to the CC list just in case.  (He can always remove himself.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>186681</commentid>
    <comment_count>12</comment_count>
      <attachid>45240</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-02-01 16:28:59 -0800</bug_when>
    <thetext>Comment on attachment 45240
Pass a string to Editor and make GTK+ not use the selected text but the text in the node. #2

This would break the Mac build:
/Users/abarth/git/webkit-queue/WebCore/editing/Editor.cpp: In member function &apos;WTF::Vector&lt;WebCore::String, 0ul&gt; WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection(bool&amp;, bool&amp;, const WebCore::String&amp;, const WebCore::HitTestResult&amp;)&apos;:
/Users/abarth/git/webkit-queue/WebCore/editing/Editor.cpp:2173: error: cannot convert &apos;const WebCore::String&apos; to &apos;WebCore::Range*&apos; for argument &apos;2&apos; to &apos;WTF::Vector&lt;WebCore::String, 0ul&gt; WebCore::guessesForMisspelledOrUngrammaticalRange(WebCore::EditorClient*, WebCore::Range*, bool, bool&amp;, bool&amp;)&apos;
cc1plus: warnings being treated as errors
/Users/abarth/git/webkit-queue/WebCore/editing/Editor.cpp: At global scope:
/Users/abarth/git/webkit-queue/WebCore/editing/Editor.cpp:2170: warning: unused parameter &apos;result&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1388254</commentid>
    <comment_count>13</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-01-11 09:13:15 -0800</bug_when>
    <thetext>This was fixed, somehow, a long time ago.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45239</attachid>
            <date>2009-12-19 10:01:35 -0800</date>
            <delta_ts>2009-12-19 10:28:54 -0800</delta_ts>
            <desc>Pass a string to Editor and make GTK+ not use the selected text but the text in the node.</desc>
            <filename>spellselectionbehaviour.diff</filename>
            <type>text/plain</type>
            <size>7290</size>
            <attacher name="Christian Dywan">christian</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
YzRhY2UwMi4uZTQyOTkxNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAwOS0xMi0xOSAgQ2hyaXN0aWFuIER5
d2FuICA8Y2hyaXN0aWFuQHR3b3RvYXN0cy5kZT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBbR1RLXSBTcGVsbCBjaGVjayB3b3JrcyBvbiBzZWxlY3Rp
b24gYnV0IGl0IHNob3VsZCB3b3JrIG9uIHVuc2VsZWN0ZWQgd29yZHMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyNzcwCisKKyAgICAgICAgKiBlZGl0
aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OmlzU2VsZWN0aW9uTWlz
c3BlbGxlZCk6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6Omd1ZXNzZXNGb3JNaXNzcGVsbGVk
U2VsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6Z3Vlc3Nlc0Zvck1pc3NwZWxs
ZWRPclVuZ3JhbW1hdGljYWxTZWxlY3Rpb24pOgorICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmg6
IFRha2UgYSBTdHJpbmcgYW5kIGEgSGl0VGVzdFJlc3VsdCBpbnN0ZWFkIG9mIHVzaW5nCisgICAg
ICAgIHRoZSBzZWxlY3Rpb24uIElmIHRoZSBTdHJpbmcgaXMgZW1wdHksIGxvb2sgYXQgdGhlIHdv
cmQgYXQgdGhlIHBvaW50ZXIuCisgICAgICAgICogcGxhdGZvcm0vQ29udGV4dE1lbnUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q29udGV4dE1lbnU6OnBvcHVsYXRlKTogRGlmZmVyZW50aWF0ZSBi
ZWhhdmlvdXIgc28gZm9yIEdUSysKKyAgICAgICAgc3BlbGxpbmcgZG9lcyBub3Qgd29yayB3aXRo
IHNlbGVjdGVkIHRleHQuIEFuZCBpZiBndWVzc2VzIGFyZSBzaG93biwgdGhlCisgICAgICAgIGVk
aXRpbmcgaXRlbXMgYXJlIG5vdCB1c2VkLgorCiAyMDA5LTEyLTE4ICBQZXRlciBLYXN0aW5nICA8
cGthc3RpbmdAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIu
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcCBiL1dlYkNvcmUvZWRpdGlu
Zy9FZGl0b3IuY3BwCmluZGV4IDA3NDRmZDYuLjExYmNlMTYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
ZWRpdGluZy9FZGl0b3IuY3BwCisrKyBiL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCkBAIC0x
OTk3LDkgKzE5OTcsOCBAQCB2b2lkIEVkaXRvcjo6YWR2YW5jZVRvTmV4dE1pc3NwZWxsaW5nKGJv
b2wgc3RhcnRCZWZvcmVTZWxlY3Rpb24pCiAgICAgfQogfQogCi1ib29sIEVkaXRvcjo6aXNTZWxl
Y3Rpb25NaXNzcGVsbGVkKCkKK2Jvb2wgRWRpdG9yOjppc1NlbGVjdGlvbk1pc3NwZWxsZWQoY29u
c3QgU3RyaW5nJiBzZWxlY3RlZFN0cmluZykKIHsKLSAgICBTdHJpbmcgc2VsZWN0ZWRTdHJpbmcg
PSBmcmFtZSgpLT5zZWxlY3RlZFRleHQoKTsKICAgICBpbnQgbGVuZ3RoID0gc2VsZWN0ZWRTdHJp
bmcubGVuZ3RoKCk7CiAgICAgaWYgKGxlbmd0aCA9PSAwKQogICAgICAgICByZXR1cm4gZmFsc2U7
CkBAIC0yMDkzLDkgKzIwOTIsOCBAQCBWZWN0b3I8U3RyaW5nPiBFZGl0b3I6Omd1ZXNzZXNGb3JV
bmdyYW1tYXRpY2FsU2VsZWN0aW9uKCkKICNlbmRpZgogfQogCi1WZWN0b3I8U3RyaW5nPiBFZGl0
b3I6Omd1ZXNzZXNGb3JNaXNzcGVsbGVkU2VsZWN0aW9uKCkKK1ZlY3RvcjxTdHJpbmc+IEVkaXRv
cjo6Z3Vlc3Nlc0Zvck1pc3NwZWxsZWRTZWxlY3Rpb24oY29uc3QgU3RyaW5nJiBzZWxlY3RlZFN0
cmluZykKIHsKLSAgICBTdHJpbmcgc2VsZWN0ZWRTdHJpbmcgPSBmcmFtZSgpLT5zZWxlY3RlZFRl
eHQoKTsKICAgICBBU1NFUlQoc2VsZWN0ZWRTdHJpbmcubGVuZ3RoKCkgIT0gMCk7CiAKICAgICBW
ZWN0b3I8U3RyaW5nPiBndWVzc2VzOwpAQCAtMjE2NiwxNSArMjE2NCwyOCBAQCBzdGF0aWMgVmVj
dG9yPFN0cmluZz4gZ3Vlc3Nlc0Zvck1pc3NwZWxsZWRPclVuZ3JhbW1hdGljYWxSYW5nZShFZGl0
b3JDbGllbnQqIGNsaQogCiAjZW5kaWYKIAotVmVjdG9yPFN0cmluZz4gRWRpdG9yOjpndWVzc2Vz
Rm9yTWlzc3BlbGxlZE9yVW5ncmFtbWF0aWNhbFNlbGVjdGlvbihib29sJiBtaXNzcGVsbGVkLCBi
b29sJiB1bmdyYW1tYXRpY2FsKQorVmVjdG9yPFN0cmluZz4gRWRpdG9yOjpndWVzc2VzRm9yTWlz
c3BlbGxlZE9yVW5ncmFtbWF0aWNhbFNlbGVjdGlvbihib29sJiBtaXNzcGVsbGVkLCBib29sJiB1
bmdyYW1tYXRpY2FsLCBjb25zdCBTdHJpbmcmIHNlbGVjdGVkVGV4dCwgY29uc3QgSGl0VGVzdFJl
c3VsdCYgcmVzdWx0KQogewogI2lmIFBMQVRGT1JNKE1BQykgJiYgIWRlZmluZWQoQlVJTERJTkdf
T05fVElHRVIpICYmICFkZWZpbmVkKEJVSUxESU5HX09OX0xFT1BBUkQpCi0gICAgcmV0dXJuIGd1
ZXNzZXNGb3JNaXNzcGVsbGVkT3JVbmdyYW1tYXRpY2FsUmFuZ2UoY2xpZW50KCksIGZyYW1lKCkt
PnNlbGVjdGlvbigpLT50b05vcm1hbGl6ZWRSYW5nZSgpLmdldCgpLCBpc0dyYW1tYXJDaGVja2lu
Z0VuYWJsZWQoKSwgbWlzc3BlbGxlZCwgdW5ncmFtbWF0aWNhbCk7CisgICAgcmV0dXJuIGd1ZXNz
ZXNGb3JNaXNzcGVsbGVkT3JVbmdyYW1tYXRpY2FsUmFuZ2UoY2xpZW50KCksIHNlbGVjdGVkVGV4
dCwgaXNHcmFtbWFyQ2hlY2tpbmdFbmFibGVkKCksIG1pc3NwZWxsZWQsIHVuZ3JhbW1hdGljYWwp
OwogI2Vsc2UKLSAgICBtaXNzcGVsbGVkID0gaXNTZWxlY3Rpb25NaXNzcGVsbGVkKCk7CisgICAg
U3RyaW5nIGFjdHVhbFRleHQgPSBzZWxlY3RlZFRleHQ7CisgICAgaWYgKGFjdHVhbFRleHQuaXNF
bXB0eSgpKSB7CisgICAgICAgIE5vZGUqIGlubmVyTm9kZSA9IHJlc3VsdC5pbm5lck5vZGUoKTsK
KyAgICAgICAgaWYgKGlubmVyTm9kZSAmJiBpbm5lck5vZGUtPnJlbmRlcmVyKCkpIHsKKyAgICAg
ICAgICAgIFZpc2libGVQb3NpdGlvbiBwb3MoaW5uZXJOb2RlLT5yZW5kZXJlcigpLT5wb3NpdGlv
bkZvclBvaW50KHJlc3VsdC5sb2NhbFBvaW50KCkpKTsKKyAgICAgICAgICAgIGlmIChwb3MuaXNO
b3ROdWxsKCkpIHsKKyAgICAgICAgICAgICAgICBWaXNpYmxlU2VsZWN0aW9uIG5ld1NlbGVjdGlv
biA9IFZpc2libGVTZWxlY3Rpb24ocG9zKTsKKyAgICAgICAgICAgICAgICBuZXdTZWxlY3Rpb24u
ZXhwYW5kVXNpbmdHcmFudWxhcml0eShXb3JkR3JhbnVsYXJpdHkpOworICAgICAgICAgICAgICAg
IGFjdHVhbFRleHQgPSBwbGFpblRleHQobmV3U2VsZWN0aW9uLnRvTm9ybWFsaXplZFJhbmdlKCku
Z2V0KCkpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgbWlzc3BlbGxl
ZCA9IGlzU2VsZWN0aW9uTWlzc3BlbGxlZChhY3R1YWxUZXh0KTsKICAgICBpZiAobWlzc3BlbGxl
ZCkgewogICAgICAgICB1bmdyYW1tYXRpY2FsID0gZmFsc2U7Ci0gICAgICAgIHJldHVybiBndWVz
c2VzRm9yTWlzc3BlbGxlZFNlbGVjdGlvbigpOworICAgICAgICByZXR1cm4gZ3Vlc3Nlc0Zvck1p
c3NwZWxsZWRTZWxlY3Rpb24oYWN0dWFsVGV4dCk7CiAgICAgfQogICAgIGlmIChpc0dyYW1tYXJD
aGVja2luZ0VuYWJsZWQoKSAmJiBpc1NlbGVjdGlvblVuZ3JhbW1hdGljYWwoKSkgewogICAgICAg
ICB1bmdyYW1tYXRpY2FsID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZWRpdGluZy9FZGl0
b3IuaCBiL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaAppbmRleCA1YjBjYzljLi5hNmVlNjE4IDEw
MDY0NAotLS0gYS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgKKysrIGIvV2ViQ29yZS9lZGl0aW5n
L0VkaXRvci5oCkBAIC0xOTIsMTAgKzE5MiwxMCBAQCBwdWJsaWM6CiAgICAgdm9pZCBsZWFyblNw
ZWxsaW5nKCk7CiAgICAgaW50IHNwZWxsQ2hlY2tlckRvY3VtZW50VGFnKCk7CiAgICAgYm9vbCBp
c1NlbGVjdGlvblVuZ3JhbW1hdGljYWwoKTsKLSAgICBib29sIGlzU2VsZWN0aW9uTWlzc3BlbGxl
ZCgpOwotICAgIFZlY3RvcjxTdHJpbmc+IGd1ZXNzZXNGb3JNaXNzcGVsbGVkU2VsZWN0aW9uKCk7
CisgICAgYm9vbCBpc1NlbGVjdGlvbk1pc3NwZWxsZWQoY29uc3QgU3RyaW5nJik7CisgICAgVmVj
dG9yPFN0cmluZz4gZ3Vlc3Nlc0Zvck1pc3NwZWxsZWRTZWxlY3Rpb24oY29uc3QgU3RyaW5nJik7
CiAgICAgVmVjdG9yPFN0cmluZz4gZ3Vlc3Nlc0ZvclVuZ3JhbW1hdGljYWxTZWxlY3Rpb24oKTsK
LSAgICBWZWN0b3I8U3RyaW5nPiBndWVzc2VzRm9yTWlzc3BlbGxlZE9yVW5ncmFtbWF0aWNhbFNl
bGVjdGlvbihib29sJiBtaXNzcGVsbGVkLCBib29sJiB1bmdyYW1tYXRpY2FsKTsKKyAgICBWZWN0
b3I8U3RyaW5nPiBndWVzc2VzRm9yTWlzc3BlbGxlZE9yVW5ncmFtbWF0aWNhbFNlbGVjdGlvbihi
b29sJiBtaXNzcGVsbGVkLCBib29sJiB1bmdyYW1tYXRpY2FsLCBjb25zdCBTdHJpbmcmLCBjb25z
dCBIaXRUZXN0UmVzdWx0Jik7CiAgICAgYm9vbCBzcGVsbENoZWNraW5nRW5hYmxlZEluRm9jdXNl
ZE5vZGUoKSBjb25zdDsKICAgICB2b2lkIG1hcmtNaXNzcGVsbGluZ3NBZnRlclR5cGluZ1RvUG9z
aXRpb24oY29uc3QgVmlzaWJsZVBvc2l0aW9uJik7CiAgICAgdm9pZCBtYXJrTWlzc3BlbGxpbmdz
KGNvbnN0IFZpc2libGVTZWxlY3Rpb24mLCBSZWZQdHI8UmFuZ2U+JiBmaXJzdE1pc3NwZWxsaW5n
UmFuZ2UpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9Db250ZXh0TWVudS5jcHAgYi9X
ZWJDb3JlL3BsYXRmb3JtL0NvbnRleHRNZW51LmNwcAppbmRleCAyMDA1NjBlLi43NGMyM2I1IDEw
MDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL0NvbnRleHRNZW51LmNwcAorKysgYi9XZWJDb3Jl
L3BsYXRmb3JtL0NvbnRleHRNZW51LmNwcApAQCAtMzg1LDE2ICszODUsMjcgQEAgdm9pZCBDb250
ZXh0TWVudTo6cG9wdWxhdGUoKQogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfSBlbHNl
IHsgLy8gTWFrZSBhbiBlZGl0aW5nIGNvbnRleHQgbWVudQorICAgICAgICBib29sIHNob3VsZFNo
b3dFZGl0aW5nID0gdHJ1ZTsKICAgICAgICAgU2VsZWN0aW9uQ29udHJvbGxlciogc2VsZWN0aW9u
ID0gZnJhbWUtPnNlbGVjdGlvbigpOwogICAgICAgICBib29sIGluUGFzc3dvcmRGaWVsZCA9IHNl
bGVjdGlvbi0+aXNJblBhc3N3b3JkRmllbGQoKTsKLSAgICAgICAgCi0gICAgICAgIGlmICghaW5Q
YXNzd29yZEZpZWxkKSB7CisKKyNpZiBQTEFURk9STShHVEspCisgICAgICAgIFN0cmluZyBzZWxl
Y3RlZFRleHQ7CisgICAgICAgIGJvb2wgc2hvdWxkU2hvd0d1ZXNzZXMgPSAhcmVzdWx0LmlzU2Vs
ZWN0ZWQoKSAmJiAhaW5QYXNzd29yZEZpZWxkOworI2Vsc2UKKyAgICAgICAgU3RyaW5nIHNlbGVj
dGVkVGV4dCA9IHBsYWluVGV4dChzZWxlY3Rpb24tPnRvTm9ybWFsaXplZFJhbmdlKCkuZ2V0KCkp
OworICAgICAgICBib29sIHNob3VsZFNob3dHdWVzc2VzID0gIWluUGFzc3dvcmRGaWVsZDsKKyNl
bmRpZgorICAgICAgICBpZiAoc2hvdWxkU2hvd0d1ZXNzZXMpIHsKICAgICAgICAgICAgIC8vIENv
bnNpZGVyIGFkZGluZyBzcGVsbGluZy1yZWxhdGVkIG9yIGdyYW1tYXItcmVsYXRlZCBjb250ZXh0
IG1lbnUgaXRlbXMgKG5ldmVyIGJvdGgsIHNpbmNlIGEgc2luZ2xlIHNlbGVjdGVkIHJhbmdlCiAg
ICAgICAgICAgICAvLyBpcyBuZXZlciBjb25zaWRlcmVkIGEgbWlzc3BlbGxpbmcgYW5kIGJhZCBn
cmFtbWFyIGF0IHRoZSBzYW1lIHRpbWUpCiAgICAgICAgICAgICBib29sIG1pc3NwZWxsaW5nOwog
ICAgICAgICAgICAgYm9vbCBiYWRHcmFtbWFyOwotICAgICAgICAgICAgVmVjdG9yPFN0cmluZz4g
Z3Vlc3NlcyA9IGZyYW1lLT5lZGl0b3IoKS0+Z3Vlc3Nlc0Zvck1pc3NwZWxsZWRPclVuZ3JhbW1h
dGljYWxTZWxlY3Rpb24obWlzc3BlbGxpbmcsIGJhZEdyYW1tYXIpOworICAgICAgICAgICAgVmVj
dG9yPFN0cmluZz4gZ3Vlc3NlcyA9IGZyYW1lLT5lZGl0b3IoKS0+Z3Vlc3Nlc0Zvck1pc3NwZWxs
ZWRPclVuZ3JhbW1hdGljYWxTZWxlY3Rpb24obWlzc3BlbGxpbmcsIGJhZEdyYW1tYXIsIHNlbGVj
dGVkVGV4dCwgcmVzdWx0KTsKICAgICAgICAgICAgIGlmIChtaXNzcGVsbGluZyB8fCBiYWRHcmFt
bWFyKSB7CisjaWYgUExBVEZPUk0oR1RLKQorICAgICAgICAgICAgICAgIHNob3VsZFNob3dFZGl0
aW5nID0gZmFsc2U7CisjZW5kaWYKICAgICAgICAgICAgICAgICBzaXplX3Qgc2l6ZSA9IGd1ZXNz
ZXMuc2l6ZSgpOwogICAgICAgICAgICAgICAgIGlmIChzaXplID09IDApIHsKICAgICAgICAgICAg
ICAgICAgICAgLy8gSWYgdGhlcmUncyBiYWQgZ3JhbW1hciBidXQgbm8gc3VnZ2VzdGlvbnMgKGUu
Zy4sIHJlcGVhdGVkIHdvcmQpLCBqdXN0IGxlYXZlIG9mZiB0aGUgc3VnZ2VzdGlvbnMKQEAgLTQ2
MCwxNyArNDcxLDIwIEBAIHZvaWQgQ29udGV4dE1lbnU6OnBvcHVsYXRlKCkKICNlbmRpZgogICAg
ICAgICB9CiAKLSAgICAgICAgYXBwZW5kSXRlbShDdXRJdGVtKTsKLSAgICAgICAgYXBwZW5kSXRl
bShDb3B5SXRlbSk7Ci0gICAgICAgIGFwcGVuZEl0ZW0oUGFzdGVJdGVtKTsKKyAgICAgICAgaWYg
KHNob3VsZFNob3dFZGl0aW5nKSB7CisgICAgICAgICAgICBhcHBlbmRJdGVtKEN1dEl0ZW0pOwor
ICAgICAgICAgICAgYXBwZW5kSXRlbShDb3B5SXRlbSk7CisgICAgICAgICAgICBhcHBlbmRJdGVt
KFBhc3RlSXRlbSk7CiAjaWYgUExBVEZPUk0oR1RLKQotICAgICAgICBhcHBlbmRJdGVtKERlbGV0
ZUl0ZW0pOwotICAgICAgICBhcHBlbmRJdGVtKCpzZXBhcmF0b3JJdGVtKCkpOwotICAgICAgICBh
cHBlbmRJdGVtKFNlbGVjdEFsbEl0ZW0pOworICAgICAgICAgICAgYXBwZW5kSXRlbShEZWxldGVJ
dGVtKTsKKyAgICAgICAgICAgIGFwcGVuZEl0ZW0oKnNlcGFyYXRvckl0ZW0oKSk7CisgICAgICAg
ICAgICBhcHBlbmRJdGVtKFNlbGVjdEFsbEl0ZW0pOworICAgICAgICB9CiAjZW5kaWYKIAogICAg
ICAgICBpZiAoIWluUGFzc3dvcmRGaWVsZCkgewotICAgICAgICAgICAgYXBwZW5kSXRlbSgqc2Vw
YXJhdG9ySXRlbSgpKTsKKyAgICAgICAgICAgIGlmIChzaG91bGRTaG93RWRpdGluZykKKyAgICAg
ICAgICAgICAgICBhcHBlbmRJdGVtKCpzZXBhcmF0b3JJdGVtKCkpOwogI2lmbmRlZiBCVUlMRElO
R19PTl9USUdFUgogICAgICAgICAgICAgQ29udGV4dE1lbnVJdGVtIFNwZWxsaW5nQW5kR3JhbW1h
ck1lbnVJdGVtKFN1Ym1lbnVUeXBlLCBDb250ZXh0TWVudUl0ZW1UYWdTcGVsbGluZ01lbnUsIAog
ICAgICAgICAgICAgICAgIGNvbnRleHRNZW51SXRlbVRhZ1NwZWxsaW5nTWVudSgpKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45240</attachid>
            <date>2009-12-19 10:28:54 -0800</date>
            <delta_ts>2010-06-10 20:45:46 -0700</delta_ts>
            <desc>Pass a string to Editor and make GTK+ not use the selected text but the text in the node. #2</desc>
            <filename>spellselectionbehaviour.diff</filename>
            <type>text/plain</type>
            <size>7368</size>
            <attacher name="Christian Dywan">christian</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZWYzYTZlMy4uYjYxNTQzNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSwyMyBAQAogMjAwOS0xMi0xOSAgQ2hyaXN0aWFuIER5
d2FuICA8Y2hyaXN0aWFuQHR3b3RvYXN0cy5kZT4KIAorICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBbR1RLXSBTcGVsbCBjaGVjayB3b3JrcyBvbiBzZWxlY3Rp
b24gYnV0IGl0IHNob3VsZCB3b3JrIG9uIHVuc2VsZWN0ZWQgd29yZHMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyNzcwCisKKyAgICAgICAgKiBlZGl0
aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OmlzU2VsZWN0aW9uTWlz
c3BlbGxlZCk6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6Omd1ZXNzZXNGb3JNaXNzcGVsbGVk
U2VsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6Z3Vlc3Nlc0Zvck1pc3NwZWxs
ZWRPclVuZ3JhbW1hdGljYWxTZWxlY3Rpb24pOgorICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmg6
IFRha2UgYSBTdHJpbmcgYW5kIGEgSGl0VGVzdFJlc3VsdCBpbnN0ZWFkIG9mIHVzaW5nCisgICAg
ICAgIHRoZSBzZWxlY3Rpb24uIElmIHRoZSBTdHJpbmcgaXMgZW1wdHksIGxvb2sgYXQgdGhlIHdv
cmQgYXQgdGhlIHBvaW50ZXIuCisgICAgICAgICogcGxhdGZvcm0vQ29udGV4dE1lbnUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q29udGV4dE1lbnU6OnBvcHVsYXRlKTogRGlmZmVyZW50aWF0ZSBi
ZWhhdmlvdXIgc28gZm9yIEdUSysKKyAgICAgICAgc3BlbGxpbmcgZG9lcyBub3Qgd29yayB3aXRo
IHNlbGVjdGVkIHRleHQuIEFuZCBpZiBndWVzc2VzIGFyZSBzaG93biwgdGhlCisgICAgICAgIGVk
aXRpbmcgaXRlbXMgYXJlIG5vdCB1c2VkLgorCisyMDA5LTEyLTE5ICBDaHJpc3RpYW4gRHl3YW4g
IDxjaHJpc3RpYW5AdHdvdG9hc3RzLmRlPgorCiAgICAgICAgIFJldmlld2VkIGJ5IEd1c3Rhdm8g
Tm9yb25oYSBTaWx2YS4KIAogICAgICAgICBEb24ndCB1c2UgYW4gaWNvbiBmb3IgYWxsIHNwZWxs
aW5nIGd1ZXNzIG1lbnUgaXRlbXMuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9y
LmNwcCBiL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCmluZGV4IDA3NDRmZDYuLjExYmNlMTYg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCisrKyBiL1dlYkNvcmUvZWRp
dGluZy9FZGl0b3IuY3BwCkBAIC0xOTk3LDkgKzE5OTcsOCBAQCB2b2lkIEVkaXRvcjo6YWR2YW5j
ZVRvTmV4dE1pc3NwZWxsaW5nKGJvb2wgc3RhcnRCZWZvcmVTZWxlY3Rpb24pCiAgICAgfQogfQog
Ci1ib29sIEVkaXRvcjo6aXNTZWxlY3Rpb25NaXNzcGVsbGVkKCkKK2Jvb2wgRWRpdG9yOjppc1Nl
bGVjdGlvbk1pc3NwZWxsZWQoY29uc3QgU3RyaW5nJiBzZWxlY3RlZFN0cmluZykKIHsKLSAgICBT
dHJpbmcgc2VsZWN0ZWRTdHJpbmcgPSBmcmFtZSgpLT5zZWxlY3RlZFRleHQoKTsKICAgICBpbnQg
bGVuZ3RoID0gc2VsZWN0ZWRTdHJpbmcubGVuZ3RoKCk7CiAgICAgaWYgKGxlbmd0aCA9PSAwKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0yMDkzLDkgKzIwOTIsOCBAQCBWZWN0b3I8U3RyaW5n
PiBFZGl0b3I6Omd1ZXNzZXNGb3JVbmdyYW1tYXRpY2FsU2VsZWN0aW9uKCkKICNlbmRpZgogfQog
Ci1WZWN0b3I8U3RyaW5nPiBFZGl0b3I6Omd1ZXNzZXNGb3JNaXNzcGVsbGVkU2VsZWN0aW9uKCkK
K1ZlY3RvcjxTdHJpbmc+IEVkaXRvcjo6Z3Vlc3Nlc0Zvck1pc3NwZWxsZWRTZWxlY3Rpb24oY29u
c3QgU3RyaW5nJiBzZWxlY3RlZFN0cmluZykKIHsKLSAgICBTdHJpbmcgc2VsZWN0ZWRTdHJpbmcg
PSBmcmFtZSgpLT5zZWxlY3RlZFRleHQoKTsKICAgICBBU1NFUlQoc2VsZWN0ZWRTdHJpbmcubGVu
Z3RoKCkgIT0gMCk7CiAKICAgICBWZWN0b3I8U3RyaW5nPiBndWVzc2VzOwpAQCAtMjE2NiwxNSAr
MjE2NCwyOCBAQCBzdGF0aWMgVmVjdG9yPFN0cmluZz4gZ3Vlc3Nlc0Zvck1pc3NwZWxsZWRPclVu
Z3JhbW1hdGljYWxSYW5nZShFZGl0b3JDbGllbnQqIGNsaQogCiAjZW5kaWYKIAotVmVjdG9yPFN0
cmluZz4gRWRpdG9yOjpndWVzc2VzRm9yTWlzc3BlbGxlZE9yVW5ncmFtbWF0aWNhbFNlbGVjdGlv
bihib29sJiBtaXNzcGVsbGVkLCBib29sJiB1bmdyYW1tYXRpY2FsKQorVmVjdG9yPFN0cmluZz4g
RWRpdG9yOjpndWVzc2VzRm9yTWlzc3BlbGxlZE9yVW5ncmFtbWF0aWNhbFNlbGVjdGlvbihib29s
JiBtaXNzcGVsbGVkLCBib29sJiB1bmdyYW1tYXRpY2FsLCBjb25zdCBTdHJpbmcmIHNlbGVjdGVk
VGV4dCwgY29uc3QgSGl0VGVzdFJlc3VsdCYgcmVzdWx0KQogewogI2lmIFBMQVRGT1JNKE1BQykg
JiYgIWRlZmluZWQoQlVJTERJTkdfT05fVElHRVIpICYmICFkZWZpbmVkKEJVSUxESU5HX09OX0xF
T1BBUkQpCi0gICAgcmV0dXJuIGd1ZXNzZXNGb3JNaXNzcGVsbGVkT3JVbmdyYW1tYXRpY2FsUmFu
Z2UoY2xpZW50KCksIGZyYW1lKCktPnNlbGVjdGlvbigpLT50b05vcm1hbGl6ZWRSYW5nZSgpLmdl
dCgpLCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQoKSwgbWlzc3BlbGxlZCwgdW5ncmFtbWF0aWNh
bCk7CisgICAgcmV0dXJuIGd1ZXNzZXNGb3JNaXNzcGVsbGVkT3JVbmdyYW1tYXRpY2FsUmFuZ2Uo
Y2xpZW50KCksIHNlbGVjdGVkVGV4dCwgaXNHcmFtbWFyQ2hlY2tpbmdFbmFibGVkKCksIG1pc3Nw
ZWxsZWQsIHVuZ3JhbW1hdGljYWwpOwogI2Vsc2UKLSAgICBtaXNzcGVsbGVkID0gaXNTZWxlY3Rp
b25NaXNzcGVsbGVkKCk7CisgICAgU3RyaW5nIGFjdHVhbFRleHQgPSBzZWxlY3RlZFRleHQ7Cisg
ICAgaWYgKGFjdHVhbFRleHQuaXNFbXB0eSgpKSB7CisgICAgICAgIE5vZGUqIGlubmVyTm9kZSA9
IHJlc3VsdC5pbm5lck5vZGUoKTsKKyAgICAgICAgaWYgKGlubmVyTm9kZSAmJiBpbm5lck5vZGUt
PnJlbmRlcmVyKCkpIHsKKyAgICAgICAgICAgIFZpc2libGVQb3NpdGlvbiBwb3MoaW5uZXJOb2Rl
LT5yZW5kZXJlcigpLT5wb3NpdGlvbkZvclBvaW50KHJlc3VsdC5sb2NhbFBvaW50KCkpKTsKKyAg
ICAgICAgICAgIGlmIChwb3MuaXNOb3ROdWxsKCkpIHsKKyAgICAgICAgICAgICAgICBWaXNpYmxl
U2VsZWN0aW9uIG5ld1NlbGVjdGlvbiA9IFZpc2libGVTZWxlY3Rpb24ocG9zKTsKKyAgICAgICAg
ICAgICAgICBuZXdTZWxlY3Rpb24uZXhwYW5kVXNpbmdHcmFudWxhcml0eShXb3JkR3JhbnVsYXJp
dHkpOworICAgICAgICAgICAgICAgIGFjdHVhbFRleHQgPSBwbGFpblRleHQobmV3U2VsZWN0aW9u
LnRvTm9ybWFsaXplZFJhbmdlKCkuZ2V0KCkpOworICAgICAgICAgICAgfQorICAgICAgICB9Cisg
ICAgfQorCisgICAgbWlzc3BlbGxlZCA9IGlzU2VsZWN0aW9uTWlzc3BlbGxlZChhY3R1YWxUZXh0
KTsKICAgICBpZiAobWlzc3BlbGxlZCkgewogICAgICAgICB1bmdyYW1tYXRpY2FsID0gZmFsc2U7
Ci0gICAgICAgIHJldHVybiBndWVzc2VzRm9yTWlzc3BlbGxlZFNlbGVjdGlvbigpOworICAgICAg
ICByZXR1cm4gZ3Vlc3Nlc0Zvck1pc3NwZWxsZWRTZWxlY3Rpb24oYWN0dWFsVGV4dCk7CiAgICAg
fQogICAgIGlmIChpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQoKSAmJiBpc1NlbGVjdGlvblVuZ3Jh
bW1hdGljYWwoKSkgewogICAgICAgICB1bmdyYW1tYXRpY2FsID0gdHJ1ZTsKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaCBiL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaAppbmRl
eCA1YjBjYzljLi5hNmVlNjE4IDEwMDY0NAotLS0gYS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgK
KysrIGIvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCkBAIC0xOTIsMTAgKzE5MiwxMCBAQCBwdWJs
aWM6CiAgICAgdm9pZCBsZWFyblNwZWxsaW5nKCk7CiAgICAgaW50IHNwZWxsQ2hlY2tlckRvY3Vt
ZW50VGFnKCk7CiAgICAgYm9vbCBpc1NlbGVjdGlvblVuZ3JhbW1hdGljYWwoKTsKLSAgICBib29s
IGlzU2VsZWN0aW9uTWlzc3BlbGxlZCgpOwotICAgIFZlY3RvcjxTdHJpbmc+IGd1ZXNzZXNGb3JN
aXNzcGVsbGVkU2VsZWN0aW9uKCk7CisgICAgYm9vbCBpc1NlbGVjdGlvbk1pc3NwZWxsZWQoY29u
c3QgU3RyaW5nJik7CisgICAgVmVjdG9yPFN0cmluZz4gZ3Vlc3Nlc0Zvck1pc3NwZWxsZWRTZWxl
Y3Rpb24oY29uc3QgU3RyaW5nJik7CiAgICAgVmVjdG9yPFN0cmluZz4gZ3Vlc3Nlc0ZvclVuZ3Jh
bW1hdGljYWxTZWxlY3Rpb24oKTsKLSAgICBWZWN0b3I8U3RyaW5nPiBndWVzc2VzRm9yTWlzc3Bl
bGxlZE9yVW5ncmFtbWF0aWNhbFNlbGVjdGlvbihib29sJiBtaXNzcGVsbGVkLCBib29sJiB1bmdy
YW1tYXRpY2FsKTsKKyAgICBWZWN0b3I8U3RyaW5nPiBndWVzc2VzRm9yTWlzc3BlbGxlZE9yVW5n
cmFtbWF0aWNhbFNlbGVjdGlvbihib29sJiBtaXNzcGVsbGVkLCBib29sJiB1bmdyYW1tYXRpY2Fs
LCBjb25zdCBTdHJpbmcmLCBjb25zdCBIaXRUZXN0UmVzdWx0Jik7CiAgICAgYm9vbCBzcGVsbENo
ZWNraW5nRW5hYmxlZEluRm9jdXNlZE5vZGUoKSBjb25zdDsKICAgICB2b2lkIG1hcmtNaXNzcGVs
bGluZ3NBZnRlclR5cGluZ1RvUG9zaXRpb24oY29uc3QgVmlzaWJsZVBvc2l0aW9uJik7CiAgICAg
dm9pZCBtYXJrTWlzc3BlbGxpbmdzKGNvbnN0IFZpc2libGVTZWxlY3Rpb24mLCBSZWZQdHI8UmFu
Z2U+JiBmaXJzdE1pc3NwZWxsaW5nUmFuZ2UpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9y
bS9Db250ZXh0TWVudS5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL0NvbnRleHRNZW51LmNwcAppbmRl
eCAyMDA1NjBlLi45MTU0MjgzIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL0NvbnRleHRN
ZW51LmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL0NvbnRleHRNZW51LmNwcApAQCAtMzg1LDE2
ICszODUsMjcgQEAgdm9pZCBDb250ZXh0TWVudTo6cG9wdWxhdGUoKQogICAgICAgICAgICAgfQog
ICAgICAgICB9CiAgICAgfSBlbHNlIHsgLy8gTWFrZSBhbiBlZGl0aW5nIGNvbnRleHQgbWVudQor
ICAgICAgICBib29sIHNob3VsZFNob3dFZGl0aW5nID0gdHJ1ZTsKICAgICAgICAgU2VsZWN0aW9u
Q29udHJvbGxlciogc2VsZWN0aW9uID0gZnJhbWUtPnNlbGVjdGlvbigpOwogICAgICAgICBib29s
IGluUGFzc3dvcmRGaWVsZCA9IHNlbGVjdGlvbi0+aXNJblBhc3N3b3JkRmllbGQoKTsKLSAgICAg
ICAgCi0gICAgICAgIGlmICghaW5QYXNzd29yZEZpZWxkKSB7CisKKyNpZiBQTEFURk9STShHVEsp
CisgICAgICAgIFN0cmluZyBzZWxlY3RlZFRleHQ7CisgICAgICAgIGJvb2wgc2hvdWxkU2hvd0d1
ZXNzZXMgPSAhcmVzdWx0LmlzU2VsZWN0ZWQoKSAmJiAhaW5QYXNzd29yZEZpZWxkOworI2Vsc2UK
KyAgICAgICAgU3RyaW5nIHNlbGVjdGVkVGV4dCA9IHBsYWluVGV4dChzZWxlY3Rpb24tPnRvTm9y
bWFsaXplZFJhbmdlKCkuZ2V0KCkpOworICAgICAgICBib29sIHNob3VsZFNob3dHdWVzc2VzID0g
IWluUGFzc3dvcmRGaWVsZDsKKyNlbmRpZgorICAgICAgICBpZiAoc2hvdWxkU2hvd0d1ZXNzZXMp
IHsKICAgICAgICAgICAgIC8vIENvbnNpZGVyIGFkZGluZyBzcGVsbGluZy1yZWxhdGVkIG9yIGdy
YW1tYXItcmVsYXRlZCBjb250ZXh0IG1lbnUgaXRlbXMgKG5ldmVyIGJvdGgsIHNpbmNlIGEgc2lu
Z2xlIHNlbGVjdGVkIHJhbmdlCiAgICAgICAgICAgICAvLyBpcyBuZXZlciBjb25zaWRlcmVkIGEg
bWlzc3BlbGxpbmcgYW5kIGJhZCBncmFtbWFyIGF0IHRoZSBzYW1lIHRpbWUpCiAgICAgICAgICAg
ICBib29sIG1pc3NwZWxsaW5nOwogICAgICAgICAgICAgYm9vbCBiYWRHcmFtbWFyOwotICAgICAg
ICAgICAgVmVjdG9yPFN0cmluZz4gZ3Vlc3NlcyA9IGZyYW1lLT5lZGl0b3IoKS0+Z3Vlc3Nlc0Zv
ck1pc3NwZWxsZWRPclVuZ3JhbW1hdGljYWxTZWxlY3Rpb24obWlzc3BlbGxpbmcsIGJhZEdyYW1t
YXIpOworICAgICAgICAgICAgVmVjdG9yPFN0cmluZz4gZ3Vlc3NlcyA9IGZyYW1lLT5lZGl0b3Io
KS0+Z3Vlc3Nlc0Zvck1pc3NwZWxsZWRPclVuZ3JhbW1hdGljYWxTZWxlY3Rpb24obWlzc3BlbGxp
bmcsIGJhZEdyYW1tYXIsIHNlbGVjdGVkVGV4dCwgcmVzdWx0KTsKICAgICAgICAgICAgIGlmICht
aXNzcGVsbGluZyB8fCBiYWRHcmFtbWFyKSB7CisjaWYgUExBVEZPUk0oR1RLKQorICAgICAgICAg
ICAgICAgIHNob3VsZFNob3dFZGl0aW5nID0gZmFsc2U7CisjZW5kaWYKICAgICAgICAgICAgICAg
ICBzaXplX3Qgc2l6ZSA9IGd1ZXNzZXMuc2l6ZSgpOwogICAgICAgICAgICAgICAgIGlmIChzaXpl
ID09IDApIHsKICAgICAgICAgICAgICAgICAgICAgLy8gSWYgdGhlcmUncyBiYWQgZ3JhbW1hciBi
dXQgbm8gc3VnZ2VzdGlvbnMgKGUuZy4sIHJlcGVhdGVkIHdvcmQpLCBqdXN0IGxlYXZlIG9mZiB0
aGUgc3VnZ2VzdGlvbnMKQEAgLTQ2MCwxNyArNDcxLDIwIEBAIHZvaWQgQ29udGV4dE1lbnU6OnBv
cHVsYXRlKCkKICNlbmRpZgogICAgICAgICB9CiAKLSAgICAgICAgYXBwZW5kSXRlbShDdXRJdGVt
KTsKLSAgICAgICAgYXBwZW5kSXRlbShDb3B5SXRlbSk7Ci0gICAgICAgIGFwcGVuZEl0ZW0oUGFz
dGVJdGVtKTsKKyAgICAgICAgaWYgKHNob3VsZFNob3dFZGl0aW5nKSB7CisgICAgICAgICAgICBh
cHBlbmRJdGVtKEN1dEl0ZW0pOworICAgICAgICAgICAgYXBwZW5kSXRlbShDb3B5SXRlbSk7Cisg
ICAgICAgICAgICBhcHBlbmRJdGVtKFBhc3RlSXRlbSk7CiAjaWYgUExBVEZPUk0oR1RLKQotICAg
ICAgICBhcHBlbmRJdGVtKERlbGV0ZUl0ZW0pOwotICAgICAgICBhcHBlbmRJdGVtKCpzZXBhcmF0
b3JJdGVtKCkpOwotICAgICAgICBhcHBlbmRJdGVtKFNlbGVjdEFsbEl0ZW0pOworICAgICAgICAg
ICAgYXBwZW5kSXRlbShEZWxldGVJdGVtKTsKKyAgICAgICAgICAgIGFwcGVuZEl0ZW0oKnNlcGFy
YXRvckl0ZW0oKSk7CisgICAgICAgICAgICBhcHBlbmRJdGVtKFNlbGVjdEFsbEl0ZW0pOwogI2Vu
ZGlmCisgICAgICAgIH0KIAogICAgICAgICBpZiAoIWluUGFzc3dvcmRGaWVsZCkgewotICAgICAg
ICAgICAgYXBwZW5kSXRlbSgqc2VwYXJhdG9ySXRlbSgpKTsKKyAgICAgICAgICAgIGlmIChzaG91
bGRTaG93RWRpdGluZykKKyAgICAgICAgICAgICAgICBhcHBlbmRJdGVtKCpzZXBhcmF0b3JJdGVt
KCkpOwogI2lmbmRlZiBCVUlMRElOR19PTl9USUdFUgogICAgICAgICAgICAgQ29udGV4dE1lbnVJ
dGVtIFNwZWxsaW5nQW5kR3JhbW1hck1lbnVJdGVtKFN1Ym1lbnVUeXBlLCBDb250ZXh0TWVudUl0
ZW1UYWdTcGVsbGluZ01lbnUsIAogICAgICAgICAgICAgICAgIGNvbnRleHRNZW51SXRlbVRhZ1Nw
ZWxsaW5nTWVudSgpKTsK
</data>
<flag name="review"
          id="27235"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>