<?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>130365</bug_id>
          
          <creation_ts>2014-03-17 15:14:57 -0700</creation_ts>
          <short_desc>Move convertToRange() helper to cross-platform WebPage.cpp</short_desc>
          <delta_ts>2014-03-17 15:29:01 -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>WebKit2</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>andersca</cc>
    
    <cc>commit-queue</cc>
    
    <cc>enrica</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>991416</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-03-17 15:14:57 -0700</bug_when>
    <thetext>convertToRange() is duplicated in Mac and iOS code, and it&apos;s really cross-platform.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>991419</commentid>
    <comment_count>1</comment_count>
      <attachid>226970</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-03-17 15:16:33 -0700</bug_when>
    <thetext>Created attachment 226970
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>991420</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-17 15:18:18 -0700</bug_when>
    <thetext>Attachment 226970 did not pass style-queue:


ERROR: Source/WebKit2/WebProcess/WebPage/WebPage.cpp:4344:  Multi line control clauses should use braces.  [whitespace/braces] [4]
Total errors found: 1 in 5 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>991423</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-03-17 15:29:01 -0700</bug_when>
    <thetext>Committed &lt;http://trac.webkit.org/r165767&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>226970</attachid>
            <date>2014-03-17 15:16:33 -0700</date>
            <delta_ts>2014-03-17 15:22:33 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>rangeFromEditingLocationAndLength.txt</filename>
            <type>text/plain</type>
            <size>9192</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2NTc2NCkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBACisyMDE0LTAzLTE3ICBBbGV4ZXkg
UHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgY29udmVydFRvUmFu
Z2UoKSBoZWxwZXIgdG8gY3Jvc3MtcGxhdGZvcm0gV2ViUGFnZS5jcHAKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMDM2NQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFsc28gcmVuYW1lZCBpdCB0byByYW5n
ZUZyb21FZGl0aW5nTG9jYXRpb25BbmRMZW5ndGgoKS4KKworICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmFuZ2VGcm9t
RWRpdGluZ0xvY2F0aW9uQW5kTGVuZ3RoKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5t
bToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6aW5zZXJ0VGV4dCk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQ
YWdlOjpzZXRDb21wb3NpdGlvbik6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6Omluc2VydFRl
eHQpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjppbnNlcnREaWN0YXRlZFRleHQpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQYWdlOjpnZXRBdHRyaWJ1dGVkU3Vic3RyaW5nRnJvbVJhbmdlKToK
KyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y2hhcmFjdGVySW5kZXhGb3JQb2ludCk6CisgICAg
ICAgIChXZWJLaXQ6OldlYlBhZ2U6OmZpcnN0UmVjdEZvckNoYXJhY3RlclJhbmdlKToKKwogMjAx
NC0wMy0xNyAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FAYXBwbGUuY29tPgogCiAgICAgICAgIFdL
Mjogc3VwcG9ydCBkYXRhIGRldGVjdG9ycyBkcml2ZW4gYWN0aW9uIHNoZWV0Li4KSW5kZXg6IFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHJldmlzaW9u
IDE2NTc2MSkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNDMzNiw0ICs0MzM2LDIxIEBAIHZvaWQgV2ViUGFnZTo6Z2V0
Qnl0ZWNvZGVQcm9maWxlKHVpbnQ2NF8KICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlN0cmluZ0NhbGxiYWNrKHJlc3VsdCwgY2FsbGJhY2tJRCkpOwogfQogCitQYXNzUmVmUHRyPFJh
bmdlPiBXZWJQYWdlOjpyYW5nZUZyb21FZGl0aW5nTG9jYXRpb25BbmRMZW5ndGgoRnJhbWUmIGZy
YW1lLCB1aW50NjRfdCBsb2NhdGlvbiwgdWludDY0X3QgbGVuZ3RoKQoreworICAgIC8vIFNhbml0
aXplIHRoZSBpbnB1dCwgYmVjYXVzZSBUZXh0SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aW9uQW5k
TGVuZ3RoIHRha2VzIHNpZ25lZCBpbnRlZ2Vycy4KKyAgICBpZiAobG9jYXRpb24gPiBJTlRfTUFY
KQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAobGVuZ3RoID4gSU5UX01BWCB8fCBsb2NhdGlv
biArIGxlbmd0aCA+IElOVF9NQVgpCisgICAgICAgIGxlbmd0aCA9IElOVF9NQVggLSBsb2NhdGlv
bjsKKyAgICAgICAgCisgICAgLy8gT3VyIGNyaXRpY2FsIGFzc3VtcHRpb24gaXMgdGhhdCB3ZSBh
cmUgb25seSBjYWxsZWQgYnkgaW5wdXQgbWV0aG9kcyB0aGF0CisgICAgLy8gY29uY2VudHJhdGUg
b24gYSBnaXZlbiBhcmVhIGNvbnRhaW5pbmcgdGhlIHNlbGVjdGlvbi4KKyAgICAvLyBXZSBoYXZl
IHRvIGRvIHRoaXMgYmVjYXVzZSBvZiB0ZXh0IGZpZWxkcyBhbmQgdGV4dGFyZWFzLiBUaGUgRE9N
IGZvciB0aG9zZSBpcyBub3QKKyAgICAvLyBkaXJlY3RseSBpbiB0aGUgZG9jdW1lbnQgRE9NLCBz
byBzZXJpYWxpemF0aW9uIGlzIHByb2JsZW1hdGljLiBPdXIgc29sdXRpb24gaXMKKyAgICAvLyB0
byB1c2UgdGhlIHJvb3QgZWRpdGFibGUgZWxlbWVudCBvZiB0aGUgc2VsZWN0aW9uIHN0YXJ0IGFz
IHRoZSBwb3NpdGlvbmFsIGJhc2UuCisgICAgLy8gVGhhdCBmaXRzIHdpdGggQXBwS2l0J3MgaWRl
YSBvZiBhbiBpbnB1dCBjb250ZXh0LgorICAgIHJldHVybiBUZXh0SXRlcmF0b3I6OnJhbmdlRnJv
bUxvY2F0aW9uQW5kTGVuZ3RoKGZyYW1lLnNlbGVjdGlvbigpLnJvb3RFZGl0YWJsZUVsZW1lbnRP
ckRvY3VtZW50RWxlbWVudCgpLCBsb2NhdGlvbiwgbGVuZ3RoKTsKK30KKwogfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmgJKHJldmlzaW9uIDE2NTc2MSkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmgJKHdvcmtpbmcgY29weSkKQEAgLTkyNyw2ICs5MjcsOCBAQCBwcml2YXRl
OgogICAgIHN0YXRpYyBQbHVnaW5WaWV3KiBmb2N1c2VkUGx1Z2luVmlld0ZvckZyYW1lKFdlYkNv
cmU6OkZyYW1lJik7CiAgICAgc3RhdGljIFBsdWdpblZpZXcqIHBsdWdpblZpZXdGb3JGcmFtZShX
ZWJDb3JlOjpGcmFtZSopOwogCisgICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpSYW5nZT4gcmFuZ2VG
cm9tRWRpdGluZ0xvY2F0aW9uQW5kTGVuZ3RoKFdlYkNvcmU6OkZyYW1lJiwgdWludDY0X3QgbG9j
YXRpb24sIHVpbnQ2NF90IGxlbmd0aCk7CisKICAgICB2b2lkIHJlcG9ydFVzZWRGZWF0dXJlcygp
OwogCiAgICAgdWludDY0X3QgbV9wYWdlSUQ7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCShyZXZpc2lvbiAxNjU3NjEp
CisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0J
KHdvcmtpbmcgY29weSkKQEAgLTE4NSwyOCArMTg1LDEyIEBAIHZvaWQgV2ViUGFnZTo6Y2FuY2Vs
Q29tcG9zaXRpb24oRWRpdG9yU3QKICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQogCi1zdGF0aWMg
UGFzc1JlZlB0cjxSYW5nZT4gY29udmVydFRvUmFuZ2UoRnJhbWUqIGZyYW1lLCBOU1JhbmdlIG5z
cmFuZ2UpCi17Ci0gICAgaWYgKG5zcmFuZ2UubG9jYXRpb24gPiBJTlRfTUFYKQotICAgICAgICBy
ZXR1cm4gMDsKLSAgICBpZiAobnNyYW5nZS5sZW5ndGggPiBJTlRfTUFYIHx8IG5zcmFuZ2UubG9j
YXRpb24gKyBuc3JhbmdlLmxlbmd0aCA+IElOVF9NQVgpCi0gICAgICAgIG5zcmFuZ2UubGVuZ3Ro
ID0gSU5UX01BWCAtIG5zcmFuZ2UubG9jYXRpb247Ci0gICAgCi0gICAgLy8gb3VyIGNyaXRpY2Fs
IGFzc3VtcHRpb24gaXMgdGhhdCB3ZSBhcmUgb25seSBjYWxsZWQgYnkgaW5wdXQgbWV0aG9kcyB0
aGF0Ci0gICAgLy8gY29uY2VudHJhdGUgb24gYSBnaXZlbiBhcmVhIGNvbnRhaW5pbmcgdGhlIHNl
bGVjdGlvbgotICAgIC8vIFdlIGhhdmUgdG8gZG8gdGhpcyBiZWNhdXNlIG9mIHRleHQgZmllbGRz
IGFuZCB0ZXh0YXJlYXMuIFRoZSBET00gZm9yIHRob3NlIGlzIG5vdAotICAgIC8vIGRpcmVjdGx5
IGluIHRoZSBkb2N1bWVudCBET00sIHNvIHNlcmlhbGl6YXRpb24gaXMgcHJvYmxlbWF0aWMuIE91
ciBzb2x1dGlvbiBpcwotICAgIC8vIHRvIHVzZSB0aGUgcm9vdCBlZGl0YWJsZSBlbGVtZW50IG9m
IHRoZSBzZWxlY3Rpb24gc3RhcnQgYXMgdGhlIHBvc2l0aW9uYWwgYmFzZS4KLSAgICAvLyBUaGF0
IGZpdHMgd2l0aCBBcHBLaXQncyBpZGVhIG9mIGFuIGlucHV0IGNvbnRleHQuCi0gICAgcmV0dXJu
IFRleHRJdGVyYXRvcjo6cmFuZ2VGcm9tTG9jYXRpb25BbmRMZW5ndGgoZnJhbWUtPnNlbGVjdGlv
bigpLnJvb3RFZGl0YWJsZUVsZW1lbnRPckRvY3VtZW50RWxlbWVudCgpLCBuc3JhbmdlLmxvY2F0
aW9uLCBuc3JhbmdlLmxlbmd0aCk7Ci19Ci0KIHZvaWQgV2ViUGFnZTo6aW5zZXJ0VGV4dChjb25z
dCBTdHJpbmcmIHRleHQsIHVpbnQ2NF90IHJlcGxhY2VtZW50UmFuZ2VTdGFydCwgdWludDY0X3Qg
cmVwbGFjZW1lbnRSYW5nZUxlbmd0aCkKIHsKICAgICBGcmFtZSYgZnJhbWUgPSBtX3BhZ2UtPmZv
Y3VzQ29udHJvbGxlcigpLmZvY3VzZWRPck1haW5GcmFtZSgpOwogICAgIAogICAgIGlmIChyZXBs
YWNlbWVudFJhbmdlU3RhcnQgIT0gTlNOb3RGb3VuZCkgewotICAgICAgICBSZWZQdHI8UmFuZ2U+
IHJlcGxhY2VtZW50UmFuZ2UgPSBjb252ZXJ0VG9SYW5nZSgmZnJhbWUsIE5TTWFrZVJhbmdlKHJl
cGxhY2VtZW50UmFuZ2VTdGFydCwgcmVwbGFjZW1lbnRSYW5nZUxlbmd0aCkpOworICAgICAgICBS
ZWZQdHI8UmFuZ2U+IHJlcGxhY2VtZW50UmFuZ2UgPSByYW5nZUZyb21FZGl0aW5nTG9jYXRpb25B
bmRMZW5ndGgoZnJhbWUsIHJlcGxhY2VtZW50UmFuZ2VTdGFydCwgcmVwbGFjZW1lbnRSYW5nZUxl
bmd0aCk7CiAgICAgICAgIGlmIChyZXBsYWNlbWVudFJhbmdlKQogICAgICAgICAgICAgZnJhbWUu
c2VsZWN0aW9uKCkuc2V0U2VsZWN0aW9uKFZpc2libGVTZWxlY3Rpb24ocmVwbGFjZW1lbnRSYW5n
ZS5nZXQoKSwgU0VMX0RFRkFVTFRfQUZGSU5JVFkpKTsKICAgICB9CkluZGV4OiBTb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tCShyZXZp
c2lvbiAxNjU3NjEpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dl
YlBhZ2VNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTc2LDggKzc2LDYgQEAgdXNpbmcgbmFtZXNw
YWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1zdGF0aWMgUGFzc1JlZlB0cjxS
YW5nZT4gY29udmVydFRvUmFuZ2UoRnJhbWUqLCB1aW50NjRfdCBsb2NhdGlvbiwgdWludDY0X3Qg
bGVuZ3RoKTsKLQogdm9pZCBXZWJQYWdlOjpwbGF0Zm9ybUluaXRpYWxpemUoKQogewogI2lmIFVT
RShDRk5FVFdPUkspCkBAIC0yNTQsNyArMjUyLDcgQEAgdm9pZCBXZWJQYWdlOjpzZXRDb21wb3Np
dGlvbihjb25zdCBTdHJpbgogICAgIGlmIChmcmFtZS5zZWxlY3Rpb24oKS5zZWxlY3Rpb24oKS5p
c0NvbnRlbnRFZGl0YWJsZSgpKSB7CiAgICAgICAgIFJlZlB0cjxSYW5nZT4gcmVwbGFjZW1lbnRS
YW5nZTsKICAgICAgICAgaWYgKHJlcGxhY2VtZW50UmFuZ2VTdGFydCAhPSBOU05vdEZvdW5kKSB7
Ci0gICAgICAgICAgICByZXBsYWNlbWVudFJhbmdlID0gY29udmVydFRvUmFuZ2UoJmZyYW1lLCBy
ZXBsYWNlbWVudFJhbmdlU3RhcnQsIHJlcGxhY2VtZW50UmFuZ2VMZW5ndGgpOworICAgICAgICAg
ICAgcmVwbGFjZW1lbnRSYW5nZSA9IHJhbmdlRnJvbUVkaXRpbmdMb2NhdGlvbkFuZExlbmd0aChm
cmFtZSwgcmVwbGFjZW1lbnRSYW5nZVN0YXJ0LCByZXBsYWNlbWVudFJhbmdlTGVuZ3RoKTsKICAg
ICAgICAgICAgIGZyYW1lLnNlbGVjdGlvbigpLnNldFNlbGVjdGlvbihWaXNpYmxlU2VsZWN0aW9u
KHJlcGxhY2VtZW50UmFuZ2UuZ2V0KCksIFNFTF9ERUZBVUxUX0FGRklOSVRZKSk7CiAgICAgICAg
IH0KIApAQCAtMjgzLDcgKzI4MSw3IEBAIHZvaWQgV2ViUGFnZTo6aW5zZXJ0VGV4dChjb25zdCBT
dHJpbmcmIHQKICAgICBGcmFtZSYgZnJhbWUgPSBtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpLmZv
Y3VzZWRPck1haW5GcmFtZSgpOwogCiAgICAgaWYgKHJlcGxhY2VtZW50UmFuZ2VTdGFydCAhPSBO
U05vdEZvdW5kKSB7Ci0gICAgICAgIFJlZlB0cjxSYW5nZT4gcmVwbGFjZW1lbnRSYW5nZSA9IGNv
bnZlcnRUb1JhbmdlKCZmcmFtZSwgcmVwbGFjZW1lbnRSYW5nZVN0YXJ0LCByZXBsYWNlbWVudFJh
bmdlTGVuZ3RoKTsKKyAgICAgICAgUmVmUHRyPFJhbmdlPiByZXBsYWNlbWVudFJhbmdlID0gcmFu
Z2VGcm9tRWRpdGluZ0xvY2F0aW9uQW5kTGVuZ3RoKGZyYW1lLCByZXBsYWNlbWVudFJhbmdlU3Rh
cnQsIHJlcGxhY2VtZW50UmFuZ2VMZW5ndGgpOwogICAgICAgICBpZiAocmVwbGFjZW1lbnRSYW5n
ZSkKICAgICAgICAgICAgIGZyYW1lLnNlbGVjdGlvbigpLnNldFNlbGVjdGlvbihWaXNpYmxlU2Vs
ZWN0aW9uKHJlcGxhY2VtZW50UmFuZ2UuZ2V0KCksIFNFTF9ERUZBVUxUX0FGRklOSVRZKSk7CiAg
ICAgfQpAQCAtMzA1LDcgKzMwMyw3IEBAIHZvaWQgV2ViUGFnZTo6aW5zZXJ0RGljdGF0ZWRUZXh0
KGNvbnN0IFMKICAgICBGcmFtZSYgZnJhbWUgPSBtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpLmZv
Y3VzZWRPck1haW5GcmFtZSgpOwogCiAgICAgaWYgKHJlcGxhY2VtZW50UmFuZ2VTdGFydCAhPSBO
U05vdEZvdW5kKSB7Ci0gICAgICAgIFJlZlB0cjxSYW5nZT4gcmVwbGFjZW1lbnRSYW5nZSA9IGNv
bnZlcnRUb1JhbmdlKCZmcmFtZSwgcmVwbGFjZW1lbnRSYW5nZVN0YXJ0LCByZXBsYWNlbWVudFJh
bmdlTGVuZ3RoKTsKKyAgICAgICAgUmVmUHRyPFJhbmdlPiByZXBsYWNlbWVudFJhbmdlID0gcmFu
Z2VGcm9tRWRpdGluZ0xvY2F0aW9uQW5kTGVuZ3RoKGZyYW1lLCByZXBsYWNlbWVudFJhbmdlU3Rh
cnQsIHJlcGxhY2VtZW50UmFuZ2VMZW5ndGgpOwogICAgICAgICBpZiAocmVwbGFjZW1lbnRSYW5n
ZSkKICAgICAgICAgICAgIGZyYW1lLnNlbGVjdGlvbigpLnNldFNlbGVjdGlvbihWaXNpYmxlU2Vs
ZWN0aW9uKHJlcGxhY2VtZW50UmFuZ2UuZ2V0KCksIFNFTF9ERUZBVUxUX0FGRklOSVRZKSk7CiAg
ICAgfQpAQCAtMzU1LDcgKzM1Myw3IEBAIHZvaWQgV2ViUGFnZTo6Z2V0QXR0cmlidXRlZFN1YnN0
cmluZ0Zyb20KICAgICBpZiAoc2VsZWN0aW9uLmlzTm9uZSgpIHx8ICFzZWxlY3Rpb24uaXNDb250
ZW50RWRpdGFibGUoKSB8fCBzZWxlY3Rpb24uaXNJblBhc3N3b3JkRmllbGQoKSkKICAgICAgICAg
cmV0dXJuOwogCi0gICAgUmVmUHRyPFJhbmdlPiByYW5nZSA9IGNvbnZlcnRUb1JhbmdlKCZmcmFt
ZSwgcmFuZ2VTdGFydCwgcmFuZ2VMZW5ndGgpOworICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2UgPSBy
YW5nZUZyb21FZGl0aW5nTG9jYXRpb25BbmRMZW5ndGgoZnJhbWUsIHJhbmdlU3RhcnQsIHJhbmdl
TGVuZ3RoKTsKICAgICBpZiAoIXJhbmdlKQogICAgICAgICByZXR1cm47CiAKQEAgLTM4OCwyMiAr
Mzg2LDYgQEAgdm9pZCBXZWJQYWdlOjpjaGFyYWN0ZXJJbmRleEZvclBvaW50KEludAogICAgIGlm
IChUZXh0SXRlcmF0b3I6OmdldExvY2F0aW9uQW5kTGVuZ3RoRnJvbVJhbmdlKGZyYW1lLT5zZWxl
Y3Rpb24oKS5yb290RWRpdGFibGVFbGVtZW50T3JEb2N1bWVudEVsZW1lbnQoKSwgcmFuZ2UuZ2V0
KCksIGxvY2F0aW9uLCBsZW5ndGgpKQogICAgICAgICBpbmRleCA9IHN0YXRpY19jYXN0PHVpbnQ2
NF90Pihsb2NhdGlvbik7CiB9Ci0KLVBhc3NSZWZQdHI8UmFuZ2U+IGNvbnZlcnRUb1JhbmdlKEZy
YW1lKiBmcmFtZSwgdWludDY0X3QgbG9jYXRpb24sIHVpbnQ2NF90IGxlbmd0aCkKLXsKLSAgICBp
ZiAobG9jYXRpb24gPiBJTlRfTUFYKQotICAgICAgICByZXR1cm4gMDsKLSAgICBpZiAobGVuZ3Ro
ID4gSU5UX01BWCB8fCBsb2NhdGlvbiArIGxlbmd0aCA+IElOVF9NQVgpCi0gICAgICAgIGxlbmd0
aCA9IElOVF9NQVggLSBsb2NhdGlvbjsKLSAgICAgICAgCi0gICAgLy8gb3VyIGNyaXRpY2FsIGFz
c3VtcHRpb24gaXMgdGhhdCB3ZSBhcmUgb25seSBjYWxsZWQgYnkgaW5wdXQgbWV0aG9kcyB0aGF0
Ci0gICAgLy8gY29uY2VudHJhdGUgb24gYSBnaXZlbiBhcmVhIGNvbnRhaW5pbmcgdGhlIHNlbGVj
dGlvbgotICAgIC8vIFdlIGhhdmUgdG8gZG8gdGhpcyBiZWNhdXNlIG9mIHRleHQgZmllbGRzIGFu
ZCB0ZXh0YXJlYXMuIFRoZSBET00gZm9yIHRob3NlIGlzIG5vdAotICAgIC8vIGRpcmVjdGx5IGlu
IHRoZSBkb2N1bWVudCBET00sIHNvIHNlcmlhbGl6YXRpb24gaXMgcHJvYmxlbWF0aWMuIE91ciBz
b2x1dGlvbiBpcwotICAgIC8vIHRvIHVzZSB0aGUgcm9vdCBlZGl0YWJsZSBlbGVtZW50IG9mIHRo
ZSBzZWxlY3Rpb24gc3RhcnQgYXMgdGhlIHBvc2l0aW9uYWwgYmFzZS4KLSAgICAvLyBUaGF0IGZp
dHMgd2l0aCBBcHBLaXQncyBpZGVhIG9mIGFuIGlucHV0IGNvbnRleHQuCi0gICAgcmV0dXJuIFRl
eHRJdGVyYXRvcjo6cmFuZ2VGcm9tTG9jYXRpb25BbmRMZW5ndGgoZnJhbWUtPnNlbGVjdGlvbigp
LnJvb3RFZGl0YWJsZUVsZW1lbnRPckRvY3VtZW50RWxlbWVudCgpLCBsb2NhdGlvbiwgbGVuZ3Ro
KTsKLX0KICAgICAKIHZvaWQgV2ViUGFnZTo6Zmlyc3RSZWN0Rm9yQ2hhcmFjdGVyUmFuZ2UodWlu
dDY0X3QgbG9jYXRpb24sIHVpbnQ2NF90IGxlbmd0aCwgV2ViQ29yZTo6SW50UmVjdCYgcmVzdWx0
UmVjdCkKIHsKQEAgLTQxMSw3ICszOTMsNyBAQCB2b2lkIFdlYlBhZ2U6OmZpcnN0UmVjdEZvckNo
YXJhY3RlclJhbmdlCiAgICAgcmVzdWx0UmVjdC5zZXRMb2NhdGlvbihJbnRQb2ludCgwLCAwKSk7
CiAgICAgcmVzdWx0UmVjdC5zZXRTaXplKEludFNpemUoMCwgMCkpOwogICAgIAotICAgIFJlZlB0
cjxSYW5nZT4gcmFuZ2UgPSBjb252ZXJ0VG9SYW5nZSgmZnJhbWUsIGxvY2F0aW9uLCBsZW5ndGgp
OworICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2UgPSByYW5nZUZyb21FZGl0aW5nTG9jYXRpb25BbmRM
ZW5ndGgoZnJhbWUsIGxvY2F0aW9uLCBsZW5ndGgpOwogICAgIGlmICghcmFuZ2UpCiAgICAgICAg
IHJldHVybjsKICAgICAK
</data>
<flag name="review"
          id="251204"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>