<?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>120378</bug_id>
          
          <creation_ts>2013-08-27 15:24:09 -0700</creation_ts>
          <short_desc>Code cleanup: rename FloatIntervalSearchAdapter and remove unnecessary inlines</short_desc>
          <delta_ts>2013-08-28 16:26:02 -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>New Bugs</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>BlinkMergeCandidate</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Bem Jones-Bey">bjonesbe</reporter>
          <assigned_to name="Bem Jones-Bey">bjonesbe</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>921700</commentid>
    <comment_count>0</comment_count>
    <who name="Bem Jones-Bey">bjonesbe</who>
    <bug_when>2013-08-27 15:24:09 -0700</bug_when>
    <thetext>Code cleanup: rename FloatIntervalSearchAdapter tand remove unnecessary inlines</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921705</commentid>
    <comment_count>1</comment_count>
      <attachid>209810</attachid>
    <who name="Bem Jones-Bey">bjonesbe</who>
    <bug_when>2013-08-27 15:30:53 -0700</bug_when>
    <thetext>Created attachment 209810
Patch

Port patches from Blink</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921774</commentid>
    <comment_count>2</comment_count>
      <attachid>209810</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-08-27 18:12:51 -0700</bug_when>
    <thetext>Comment on attachment 209810
Patch

Changes are OK. But I don’t really want to read about Blink. I’d like to read about the merits of the change, not a blow-by-blow of the Blink development process.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>922021</commentid>
    <comment_count>3</comment_count>
    <who name="Bem Jones-Bey">bjonesbe</who>
    <bug_when>2013-08-28 08:38:51 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 209810 [details])
&gt; Changes are OK. But I don’t really want to read about Blink. I’d like to read about the merits of the change, not a blow-by-blow of the Blink development process.

Can you cite any specific changes that I could make to the way that I write changelogs for ports from Blink that would make you feel more comfortable with it? I&apos;m not particularly attached to any specific format, so if there&apos;s a way I could write it that you prefer, I would be happy to do that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>922060</commentid>
    <comment_count>4</comment_count>
      <attachid>209899</attachid>
    <who name="Bem Jones-Bey">bjonesbe</who>
    <bug_when>2013-08-28 09:44:20 -0700</bug_when>
    <thetext>Created attachment 209899
Patch

Review feedback</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>922088</commentid>
    <comment_count>5</comment_count>
      <attachid>209899</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-08-28 10:10:59 -0700</bug_when>
    <thetext>Comment on attachment 209899
Patch

Clearing flags on attachment: 209899

Committed r154758: &lt;http://trac.webkit.org/changeset/154758&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>922089</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-08-28 10:11:01 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>922233</commentid>
    <comment_count>7</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-08-28 16:25:34 -0700</bug_when>
    <thetext>This was a merge of https://chromium.googlesource.com/chromium/blink/+/9255dec730afe43bc349d45a7dc282fa6bdc303e</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>922234</commentid>
    <comment_count>8</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-08-28 16:26:02 -0700</bug_when>
    <thetext>And https://chromium.googlesource.com/chromium/blink/+/6a478017abfeff20de46c91aed6d6c3a8d0082bf</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>209810</attachid>
            <date>2013-08-27 15:30:53 -0700</date>
            <delta_ts>2013-08-28 09:44:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-120378-20130827153052.patch</filename>
            <type>text/plain</type>
            <size>10196</size>
            <attacher name="Bem Jones-Bey">bjonesbe</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU0NzA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmRkMTkyZDc0NTU3NGM1
YTJmMTQyNjc0NzBjNWM3YjEzNzM2ZmY3Yy4uZGZmZmVmMGYwMzRhZjBiMzdmMTdjYzkxODU4ZjM5
M2Y2MmQzMTBhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDEzLTA4LTI3ICBCZW0g
Sm9uZXMtQmV5ICA8YmpvbmVzYmVAYWRvYmUuY29tPgorCisgICAgICAgIENvZGUgY2xlYW51cDog
cmVuYW1lIEZsb2F0SW50ZXJ2YWxTZWFyY2hBZGFwdGVyIGFuZCByZW1vdmUgdW5uZWNlc3Nhcnkg
aW5saW5lcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTIwMzc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGhpcyBpcyBhIHBvcnQgb2YgdHdvIHBhdGNoZXMgZnJvbSBCbGluazoKKyAgICAgICAgaHR0cHM6
Ly9jaHJvbWl1bWNvZGVyZXZpZXcuYXBwc3BvdC5jb20vMjI5MzcwMDMgKGJ5IG1lKQorICAgICAg
ICBodHRwczovL2NvZGVyZXZpZXcuY2hyb21pdW0ub3JnLzIyODU0MDA4IChieSBlc2VpZGVsKQor
CisgICAgICAgIFJlbmFtZSBGbG9hdEludGVydmFsU2VhcmNoQWRhcHRlciB0byBDb21wdXRlRmxv
YXRPZmZzZXRBZGFwdGVyLiBUaGUKKyAgICAgICAgbmFtaW5nIG9mIHRoaXMgYWRhcHRlciBoYXMg
Y2F1c2VkIG11Y2ggY29uZnVzaW9uIGluIHJlYWRpbmcgdGhlIGNvZGUsCisgICAgICAgIGFzIGl0
IHdhc24ndCBhcHBhcmVudCB0aGF0IGNhbGxzIHRvIGl0IHdlcmUgYWN0dWFsbHkgZG9pbmcgYW55
dGhpbmcKKyAgICAgICAgb3RoZXIgdGhhbiBzZWFyY2hpbmcgdGhlIGludGVydmFsIHRyZWUuIFRo
ZSBuZXcgbmFtZSBpcyBhIG11Y2ggYmV0dGVyCisgICAgICAgIGRlc2NyaXB0aW9uIG9mIHdoYXQg
aXQgYWN0dWFsbHkgZG9lcy4KKworICAgICAgICBBbHNvLCByZW5hbWUgbV9sb3dWYWx1ZSBhbmQg
bV9oaWdoVmFsdWUgbWVtYmVyIHZhcmlhYmxlcyB0byBtYWtlIGl0CisgICAgICAgIGVhc2llciB0
byByZWFkIHRoZSBjb2RlIHRoYXQgdXNlcyB0aGVtLgorCisgICAgICAgIEluIGFkZGl0aW9uLCBy
ZW1vdmUgYSBjb3VwbGUgb2YgdW5uZWNlc3NhcnkgaW5saW5lcy4gRnJvbSBlc2VpZGVsJ3MKKyAg
ICAgICAgQmxpbmsgY29tbWl0IGNvbW1lbnQ6CisKKyAgICAgICAgICAgIGlubGluZSBpcyB0aGUg
ZGVmYXVsdCBmb3IgbWVtYmVyIGZ1bmN0aW9ucyBkZWZpbmVkIGluc2lkZSB0aGVpciBjbGFzcy4K
KyAgICAgICAgICAgIGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTAxMDMxNjEv
aW5saW5lLWtleXdvcmQtdnMtaGVhZGVyLWRlZmluaXRpb24KKworICAgICAgICBObyBuZXcgdGVz
dHMsIG5vIGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCbG9j
ay5jcHA6CisgICAgICAgIChXZWJDb3JlOjo6OnVwZGF0ZU9mZnNldElmTmVlZGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6Ojo6Y29sbGVjdElmTmVlZGVkKToKKyAgICAgICAgKFdlYkNvcmU6Ojo6Z2V0
SGVpZ2h0UmVtYWluaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpsb2dpY2Fs
TGVmdEZsb2F0T2Zmc2V0Rm9yTGluZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6
bG9naWNhbFJpZ2h0RmxvYXRPZmZzZXRGb3JMaW5lKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyQmxvY2suaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpGbG9hdGluZ09iamVj
dDo6eCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6RmxvYXRpbmdPYmplY3Q6Om1h
eFgpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OkZsb2F0aW5nT2JqZWN0Ojp5KToK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpGbG9hdGluZ09iamVjdDo6bWF4WSk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6RmxvYXRpbmdPYmplY3Q6OndpZHRoKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpGbG9hdGluZ09iamVjdDo6aGVpZ2h0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpDb21wdXRlRmxvYXRPZmZzZXRBZGFwdGVyOjpD
b21wdXRlRmxvYXRPZmZzZXRBZGFwdGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2Nr
OjpDb21wdXRlRmxvYXRPZmZzZXRBZGFwdGVyOjpsb3dWYWx1ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJCbG9jazo6Q29tcHV0ZUZsb2F0T2Zmc2V0QWRhcHRlcjo6aGlnaFZhbHVlKToKKwog
MjAxMy0wOC0yNyAgQmVuamFtaW4gUG91bGFpbiAgPGJlbmphbWluQHdlYmtpdC5vcmc+CiAKICAg
ICAgICAgQ2xlYW4gQ2xhc3NMaXN0IGFuZCBET01TZXR0YWJsZVRva2VuTGlzdApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKaW5kZXggZjdiNGExMWU3ZTI3NDIyZWFjYTQz
Y2U4NjQwZDkxNWE1YzkxY2FhNC4uZWM5ZDJjYWZhMTRkYTM1M2QxYmQ4YjBhZDQwZTQ0ODQ0MmU0
MTdkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCkBAIC00NDM5
LDcgKzQ0MzksNyBAQCBpbmxpbmUgc3RhdGljIGJvb2wgcmFuZ2VzSW50ZXJzZWN0KGludCBmbG9h
dFRvcCwgaW50IGZsb2F0Qm90dG9tLCBpbnQgb2JqZWN0VG9wLAogfQogCiB0ZW1wbGF0ZTw+Ci1p
bmxpbmUgYm9vbCBSZW5kZXJCbG9jazo6RmxvYXRJbnRlcnZhbFNlYXJjaEFkYXB0ZXI8UmVuZGVy
QmxvY2s6OkZsb2F0aW5nT2JqZWN0OjpGbG9hdExlZnQ+Ojp1cGRhdGVPZmZzZXRJZk5lZWRlZChj
b25zdCBGbG9hdGluZ09iamVjdCogZmxvYXRpbmdPYmplY3QpCitpbmxpbmUgYm9vbCBSZW5kZXJC
bG9jazo6Q29tcHV0ZUZsb2F0T2Zmc2V0QWRhcHRlcjxSZW5kZXJCbG9jazo6RmxvYXRpbmdPYmpl
Y3Q6OkZsb2F0TGVmdD46OnVwZGF0ZU9mZnNldElmTmVlZGVkKGNvbnN0IEZsb2F0aW5nT2JqZWN0
KiBmbG9hdGluZ09iamVjdCkKIHsKICAgICBMYXlvdXRVbml0IGxvZ2ljYWxSaWdodCA9IG1fcmVu
ZGVyZXItPmxvZ2ljYWxSaWdodEZvckZsb2F0KGZsb2F0aW5nT2JqZWN0KTsKICAgICBpZiAobG9n
aWNhbFJpZ2h0ID4gbV9vZmZzZXQpIHsKQEAgLTQ0NTAsNyArNDQ1MCw3IEBAIGlubGluZSBib29s
IFJlbmRlckJsb2NrOjpGbG9hdEludGVydmFsU2VhcmNoQWRhcHRlcjxSZW5kZXJCbG9jazo6Rmxv
YXRpbmdPYmplY3Q6CiB9CiAKIHRlbXBsYXRlPD4KLWlubGluZSBib29sIFJlbmRlckJsb2NrOjpG
bG9hdEludGVydmFsU2VhcmNoQWRhcHRlcjxSZW5kZXJCbG9jazo6RmxvYXRpbmdPYmplY3Q6OkZs
b2F0UmlnaHQ+Ojp1cGRhdGVPZmZzZXRJZk5lZWRlZChjb25zdCBGbG9hdGluZ09iamVjdCogZmxv
YXRpbmdPYmplY3QpCitpbmxpbmUgYm9vbCBSZW5kZXJCbG9jazo6Q29tcHV0ZUZsb2F0T2Zmc2V0
QWRhcHRlcjxSZW5kZXJCbG9jazo6RmxvYXRpbmdPYmplY3Q6OkZsb2F0UmlnaHQ+Ojp1cGRhdGVP
ZmZzZXRJZk5lZWRlZChjb25zdCBGbG9hdGluZ09iamVjdCogZmxvYXRpbmdPYmplY3QpCiB7CiAg
ICAgTGF5b3V0VW5pdCBsb2dpY2FsTGVmdCA9IG1fcmVuZGVyZXItPmxvZ2ljYWxMZWZ0Rm9yRmxv
YXQoZmxvYXRpbmdPYmplY3QpOwogICAgIGlmIChsb2dpY2FsTGVmdCA8IG1fb2Zmc2V0KSB7CkBA
IC00NDYxLDE1ICs0NDYxLDE1IEBAIGlubGluZSBib29sIFJlbmRlckJsb2NrOjpGbG9hdEludGVy
dmFsU2VhcmNoQWRhcHRlcjxSZW5kZXJCbG9jazo6RmxvYXRpbmdPYmplY3Q6CiB9CiAKIHRlbXBs
YXRlIDxSZW5kZXJCbG9jazo6RmxvYXRpbmdPYmplY3Q6OlR5cGUgRmxvYXRUeXBlVmFsdWU+Ci1p
bmxpbmUgdm9pZCBSZW5kZXJCbG9jazo6RmxvYXRJbnRlcnZhbFNlYXJjaEFkYXB0ZXI8RmxvYXRU
eXBlVmFsdWU+Ojpjb2xsZWN0SWZOZWVkZWQoY29uc3QgSW50ZXJ2YWxUeXBlJiBpbnRlcnZhbCkK
K2lubGluZSB2b2lkIFJlbmRlckJsb2NrOjpDb21wdXRlRmxvYXRPZmZzZXRBZGFwdGVyPEZsb2F0
VHlwZVZhbHVlPjo6Y29sbGVjdElmTmVlZGVkKGNvbnN0IEludGVydmFsVHlwZSYgaW50ZXJ2YWwp
CiB7CiAgICAgY29uc3QgRmxvYXRpbmdPYmplY3QqIGZsb2F0aW5nT2JqZWN0ID0gaW50ZXJ2YWwu
ZGF0YSgpOwotICAgIGlmIChmbG9hdGluZ09iamVjdC0+dHlwZSgpICE9IEZsb2F0VHlwZVZhbHVl
IHx8ICFyYW5nZXNJbnRlcnNlY3QoaW50ZXJ2YWwubG93KCksIGludGVydmFsLmhpZ2goKSwgbV9s
b3dWYWx1ZSwgbV9oaWdoVmFsdWUpKQorICAgIGlmIChmbG9hdGluZ09iamVjdC0+dHlwZSgpICE9
IEZsb2F0VHlwZVZhbHVlIHx8ICFyYW5nZXNJbnRlcnNlY3QoaW50ZXJ2YWwubG93KCksIGludGVy
dmFsLmhpZ2goKSwgbV9saW5lVG9wLCBtX2xpbmVCb3R0b20pKQogICAgICAgICByZXR1cm47CiAK
ICAgICAvLyBBbGwgdGhlIG9iamVjdHMgcmV0dXJuZWQgZnJvbSB0aGUgdHJlZSBzaG91bGQgYmUg
YWxyZWFkeSBwbGFjZWQuCiAgICAgQVNTRVJUKGZsb2F0aW5nT2JqZWN0LT5pc1BsYWNlZCgpKTsK
LSAgICBBU1NFUlQocmFuZ2VzSW50ZXJzZWN0KG1fcmVuZGVyZXItPnBpeGVsU25hcHBlZExvZ2lj
YWxUb3BGb3JGbG9hdChmbG9hdGluZ09iamVjdCksIG1fcmVuZGVyZXItPnBpeGVsU25hcHBlZExv
Z2ljYWxCb3R0b21Gb3JGbG9hdChmbG9hdGluZ09iamVjdCksIG1fbG93VmFsdWUsIG1faGlnaFZh
bHVlKSk7CisgICAgQVNTRVJUKHJhbmdlc0ludGVyc2VjdChtX3JlbmRlcmVyLT5waXhlbFNuYXBw
ZWRMb2dpY2FsVG9wRm9yRmxvYXQoZmxvYXRpbmdPYmplY3QpLCBtX3JlbmRlcmVyLT5waXhlbFNu
YXBwZWRMb2dpY2FsQm90dG9tRm9yRmxvYXQoZmxvYXRpbmdPYmplY3QpLCBtX2xpbmVUb3AsIG1f
bGluZUJvdHRvbSkpOwogCiAgICAgYm9vbCBmbG9hdElzTmV3RXh0cmVtZSA9IHVwZGF0ZU9mZnNl
dElmTmVlZGVkKGZsb2F0aW5nT2JqZWN0KTsKICAgICBpZiAoZmxvYXRJc05ld0V4dHJlbWUpCkBA
IC00NDc3LDkgKzQ0NzcsOSBAQCBpbmxpbmUgdm9pZCBSZW5kZXJCbG9jazo6RmxvYXRJbnRlcnZh
bFNlYXJjaEFkYXB0ZXI8RmxvYXRUeXBlVmFsdWU+Ojpjb2xsZWN0SWZOZQogfQogCiB0ZW1wbGF0
ZSA8UmVuZGVyQmxvY2s6OkZsb2F0aW5nT2JqZWN0OjpUeXBlIEZsb2F0VHlwZVZhbHVlPgotTGF5
b3V0VW5pdCBSZW5kZXJCbG9jazo6RmxvYXRJbnRlcnZhbFNlYXJjaEFkYXB0ZXI8RmxvYXRUeXBl
VmFsdWU+OjpnZXRIZWlnaHRSZW1haW5pbmcoKSBjb25zdAorTGF5b3V0VW5pdCBSZW5kZXJCbG9j
azo6Q29tcHV0ZUZsb2F0T2Zmc2V0QWRhcHRlcjxGbG9hdFR5cGVWYWx1ZT46OmdldEhlaWdodFJl
bWFpbmluZygpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fb3V0ZXJtb3N0RmxvYXQgPyBtX3JlbmRl
cmVyLT5sb2dpY2FsQm90dG9tRm9yRmxvYXQobV9vdXRlcm1vc3RGbG9hdCkgLSBtX2xvd1ZhbHVl
IDogTGF5b3V0VW5pdCgxKTsKKyAgICByZXR1cm4gbV9vdXRlcm1vc3RGbG9hdCA/IG1fcmVuZGVy
ZXItPmxvZ2ljYWxCb3R0b21Gb3JGbG9hdChtX291dGVybW9zdEZsb2F0KSAtIG1fbGluZVRvcCA6
IExheW91dFVuaXQoMSk7CiB9CiAKIExheW91dFVuaXQgUmVuZGVyQmxvY2s6OnRleHRJbmRlbnRP
ZmZzZXQoKSBjb25zdApAQCAtNDUxOSw3ICs0NTE5LDcgQEAgTGF5b3V0VW5pdCBSZW5kZXJCbG9j
azo6bG9naWNhbExlZnRGbG9hdE9mZnNldEZvckxpbmUoTGF5b3V0VW5pdCBsb2dpY2FsVG9wLCBM
YXkKICNlbmRpZgogICAgIExheW91dFVuaXQgbGVmdCA9IGZpeGVkT2Zmc2V0OwogICAgIGlmICht
X2Zsb2F0aW5nT2JqZWN0cyAmJiBtX2Zsb2F0aW5nT2JqZWN0cy0+aGFzTGVmdE9iamVjdHMoKSkg
ewotICAgICAgICBGbG9hdEludGVydmFsU2VhcmNoQWRhcHRlcjxGbG9hdGluZ09iamVjdDo6Rmxv
YXRMZWZ0PiBhZGFwdGVyKHRoaXMsIHJvdW5kVG9JbnQobG9naWNhbFRvcCksIHJvdW5kVG9JbnQo
bG9naWNhbFRvcCArIGxvZ2ljYWxIZWlnaHQpLCBsZWZ0KTsKKyAgICAgICAgQ29tcHV0ZUZsb2F0
T2Zmc2V0QWRhcHRlcjxGbG9hdGluZ09iamVjdDo6RmxvYXRMZWZ0PiBhZGFwdGVyKHRoaXMsIHJv
dW5kVG9JbnQobG9naWNhbFRvcCksIHJvdW5kVG9JbnQobG9naWNhbFRvcCArIGxvZ2ljYWxIZWln
aHQpLCBsZWZ0KTsKICAgICAgICAgbV9mbG9hdGluZ09iamVjdHMtPnBsYWNlZEZsb2F0c1RyZWUo
KS5hbGxPdmVybGFwc1dpdGhBZGFwdGVyKGFkYXB0ZXIpOwogCiAgICAgICAgIGlmIChoZWlnaHRS
ZW1haW5pbmcpCkBAIC00NTg3LDcgKzQ1ODcsNyBAQCBMYXlvdXRVbml0IFJlbmRlckJsb2NrOjps
b2dpY2FsUmlnaHRGbG9hdE9mZnNldEZvckxpbmUoTGF5b3V0VW5pdCBsb2dpY2FsVG9wLCBMYQog
ICAgIExheW91dFVuaXQgcmlnaHQgPSBmaXhlZE9mZnNldDsKICAgICBpZiAobV9mbG9hdGluZ09i
amVjdHMgJiYgbV9mbG9hdGluZ09iamVjdHMtPmhhc1JpZ2h0T2JqZWN0cygpKSB7CiAgICAgICAg
IExheW91dFVuaXQgcmlnaHRGbG9hdE9mZnNldCA9IGZpeGVkT2Zmc2V0OwotICAgICAgICBGbG9h
dEludGVydmFsU2VhcmNoQWRhcHRlcjxGbG9hdGluZ09iamVjdDo6RmxvYXRSaWdodD4gYWRhcHRl
cih0aGlzLCByb3VuZFRvSW50KGxvZ2ljYWxUb3ApLCByb3VuZFRvSW50KGxvZ2ljYWxUb3AgKyBs
b2dpY2FsSGVpZ2h0KSwgcmlnaHRGbG9hdE9mZnNldCk7CisgICAgICAgIENvbXB1dGVGbG9hdE9m
ZnNldEFkYXB0ZXI8RmxvYXRpbmdPYmplY3Q6OkZsb2F0UmlnaHQ+IGFkYXB0ZXIodGhpcywgcm91
bmRUb0ludChsb2dpY2FsVG9wKSwgcm91bmRUb0ludChsb2dpY2FsVG9wICsgbG9naWNhbEhlaWdo
dCksIHJpZ2h0RmxvYXRPZmZzZXQpOwogICAgICAgICBtX2Zsb2F0aW5nT2JqZWN0cy0+cGxhY2Vk
RmxvYXRzVHJlZSgpLmFsbE92ZXJsYXBzV2l0aEFkYXB0ZXIoYWRhcHRlcik7CiAKICAgICAgICAg
aWYgKGhlaWdodFJlbWFpbmluZykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCbG9jay5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmgK
aW5kZXggMDNlMDdhMDU2ZTUxYjMyN2NhZDIwNmE2NmMyNjRiMmQ1ODAyODFlNy4uNDFkNjNiNjgz
ODI4ZmQ5ZTU0NDBmYTQ2ZDlkZTllNTlkZDMzMzkxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckJsb2NrLmgKQEAgLTczNiwxMiArNzM2LDEyIEBAIHByaXZhdGU6CiAgICAgICAgIGJv
b2wgaXNQbGFjZWQoKSBjb25zdCB7IHJldHVybiBtX2lzUGxhY2VkOyB9CiAgICAgICAgIHZvaWQg
c2V0SXNQbGFjZWQoYm9vbCBwbGFjZWQgPSB0cnVlKSB7IG1faXNQbGFjZWQgPSBwbGFjZWQ7IH0K
IAotICAgICAgICBpbmxpbmUgTGF5b3V0VW5pdCB4KCkgY29uc3QgeyBBU1NFUlQoaXNQbGFjZWQo
KSk7IHJldHVybiBtX2ZyYW1lUmVjdC54KCk7IH0KLSAgICAgICAgaW5saW5lIExheW91dFVuaXQg
bWF4WCgpIGNvbnN0IHsgQVNTRVJUKGlzUGxhY2VkKCkpOyByZXR1cm4gbV9mcmFtZVJlY3QubWF4
WCgpOyB9Ci0gICAgICAgIGlubGluZSBMYXlvdXRVbml0IHkoKSBjb25zdCB7IEFTU0VSVChpc1Bs
YWNlZCgpKTsgcmV0dXJuIG1fZnJhbWVSZWN0LnkoKTsgfQotICAgICAgICBpbmxpbmUgTGF5b3V0
VW5pdCBtYXhZKCkgY29uc3QgeyBBU1NFUlQoaXNQbGFjZWQoKSk7IHJldHVybiBtX2ZyYW1lUmVj
dC5tYXhZKCk7IH0KLSAgICAgICAgaW5saW5lIExheW91dFVuaXQgd2lkdGgoKSBjb25zdCB7IHJl
dHVybiBtX2ZyYW1lUmVjdC53aWR0aCgpOyB9Ci0gICAgICAgIGlubGluZSBMYXlvdXRVbml0IGhl
aWdodCgpIGNvbnN0IHsgcmV0dXJuIG1fZnJhbWVSZWN0LmhlaWdodCgpOyB9CisgICAgICAgIExh
eW91dFVuaXQgeCgpIGNvbnN0IHsgQVNTRVJUKGlzUGxhY2VkKCkpOyByZXR1cm4gbV9mcmFtZVJl
Y3QueCgpOyB9CisgICAgICAgIExheW91dFVuaXQgbWF4WCgpIGNvbnN0IHsgQVNTRVJUKGlzUGxh
Y2VkKCkpOyByZXR1cm4gbV9mcmFtZVJlY3QubWF4WCgpOyB9CisgICAgICAgIExheW91dFVuaXQg
eSgpIGNvbnN0IHsgQVNTRVJUKGlzUGxhY2VkKCkpOyByZXR1cm4gbV9mcmFtZVJlY3QueSgpOyB9
CisgICAgICAgIExheW91dFVuaXQgbWF4WSgpIGNvbnN0IHsgQVNTRVJUKGlzUGxhY2VkKCkpOyBy
ZXR1cm4gbV9mcmFtZVJlY3QubWF4WSgpOyB9CisgICAgICAgIExheW91dFVuaXQgd2lkdGgoKSBj
b25zdCB7IHJldHVybiBtX2ZyYW1lUmVjdC53aWR0aCgpOyB9CisgICAgICAgIExheW91dFVuaXQg
aGVpZ2h0KCkgY29uc3QgeyByZXR1cm4gbV9mcmFtZVJlY3QuaGVpZ2h0KCk7IH0KIAogICAgICAg
ICB2b2lkIHNldFgoTGF5b3V0VW5pdCB4KSB7IEFTU0VSVCghaXNJblBsYWNlZFRyZWUoKSk7IG1f
ZnJhbWVSZWN0LnNldFgoeCk7IH0KICAgICAgICAgdm9pZCBzZXRZKExheW91dFVuaXQgeSkgeyBB
U1NFUlQoIWlzSW5QbGFjZWRUcmVlKCkpOyBtX2ZyYW1lUmVjdC5zZXRZKHkpOyB9CkBAIC0xMjA0
LDIxICsxMjA0LDIxIEBAIHByb3RlY3RlZDoKICAgICB0eXBlZGVmIFBPREZyZWVMaXN0QXJlbmE8
UE9EUmVkQmxhY2tUcmVlPEZsb2F0aW5nT2JqZWN0SW50ZXJ2YWw+OjpOb2RlPiBJbnRlcnZhbEFy
ZW5hOwogICAgIAogICAgIHRlbXBsYXRlIDxGbG9hdGluZ09iamVjdDo6VHlwZSBGbG9hdFR5cGVW
YWx1ZT4KLSAgICBjbGFzcyBGbG9hdEludGVydmFsU2VhcmNoQWRhcHRlciB7CisgICAgY2xhc3Mg
Q29tcHV0ZUZsb2F0T2Zmc2V0QWRhcHRlciB7CiAgICAgcHVibGljOgogICAgICAgICB0eXBlZGVm
IEZsb2F0aW5nT2JqZWN0SW50ZXJ2YWwgSW50ZXJ2YWxUeXBlOwogICAgICAgICAKLSAgICAgICAg
RmxvYXRJbnRlcnZhbFNlYXJjaEFkYXB0ZXIoY29uc3QgUmVuZGVyQmxvY2sqIHJlbmRlcmVyLCBp
bnQgbG93VmFsdWUsIGludCBoaWdoVmFsdWUsIExheW91dFVuaXQmIG9mZnNldCkKKyAgICAgICAg
Q29tcHV0ZUZsb2F0T2Zmc2V0QWRhcHRlcihjb25zdCBSZW5kZXJCbG9jayogcmVuZGVyZXIsIGlu
dCBsaW5lVG9wLCBpbnQgbGluZUJvdHRvbSwgTGF5b3V0VW5pdCYgb2Zmc2V0KQogICAgICAgICAg
ICAgOiBtX3JlbmRlcmVyKHJlbmRlcmVyKQotICAgICAgICAgICAgLCBtX2xvd1ZhbHVlKGxvd1Zh
bHVlKQotICAgICAgICAgICAgLCBtX2hpZ2hWYWx1ZShoaWdoVmFsdWUpCisgICAgICAgICAgICAs
IG1fbGluZVRvcChsaW5lVG9wKQorICAgICAgICAgICAgLCBtX2xpbmVCb3R0b20obGluZUJvdHRv
bSkKICAgICAgICAgICAgICwgbV9vZmZzZXQob2Zmc2V0KQogICAgICAgICAgICAgLCBtX291dGVy
bW9zdEZsb2F0KDApCiAgICAgICAgIHsKICAgICAgICAgfQogICAgICAgICAKLSAgICAgICAgaW5s
aW5lIGludCBsb3dWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbG93VmFsdWU7IH0KLSAgICAgICAg
aW5saW5lIGludCBoaWdoVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2hpZ2hWYWx1ZTsgfQorICAg
ICAgICBpbnQgbG93VmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2xpbmVUb3A7IH0KKyAgICAgICAg
aW50IGhpZ2hWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbGluZUJvdHRvbTsgfQogICAgICAgICB2
b2lkIGNvbGxlY3RJZk5lZWRlZChjb25zdCBJbnRlcnZhbFR5cGUmKTsKIAogI2lmIEVOQUJMRShD
U1NfU0hBUEVTKQpAQCAtMTIzNSw4ICsxMjM1LDggQEAgcHJvdGVjdGVkOgogICAgICAgICBib29s
IHVwZGF0ZU9mZnNldElmTmVlZGVkKGNvbnN0IEZsb2F0aW5nT2JqZWN0Kik7CiAKICAgICAgICAg
Y29uc3QgUmVuZGVyQmxvY2sqIG1fcmVuZGVyZXI7Ci0gICAgICAgIGludCBtX2xvd1ZhbHVlOwot
ICAgICAgICBpbnQgbV9oaWdoVmFsdWU7CisgICAgICAgIGludCBtX2xpbmVUb3A7CisgICAgICAg
IGludCBtX2xpbmVCb3R0b207CiAgICAgICAgIExheW91dFVuaXQmIG1fb2Zmc2V0OwogICAgICAg
ICBjb25zdCBGbG9hdGluZ09iamVjdCogbV9vdXRlcm1vc3RGbG9hdDsKICAgICB9Owo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>209899</attachid>
            <date>2013-08-28 09:44:20 -0700</date>
            <delta_ts>2013-08-28 10:10:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-120378-20130828094419.patch</filename>
            <type>text/plain</type>
            <size>9955</size>
            <attacher name="Bem Jones-Bey">bjonesbe</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU0NzUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDYzMTAwOGI3NWQxYjAx
NTY0YTljMmJlNmQzZGM0NGVjZGU2OWQ4MC4uODE4ZDVmMjM1ZjIwMDM5ZjM0M2I3NWFmNGU0NTJj
ODEwZjU0YWY1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDEzLTA4LTI3ICBCZW0g
Sm9uZXMtQmV5ICA8YmpvbmVzYmVAYWRvYmUuY29tPgorCisgICAgICAgIENvZGUgY2xlYW51cDog
cmVuYW1lIEZsb2F0SW50ZXJ2YWxTZWFyY2hBZGFwdGVyIGFuZCByZW1vdmUgdW5uZWNlc3Nhcnkg
aW5saW5lcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTIwMzc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgUmVu
YW1lIEZsb2F0SW50ZXJ2YWxTZWFyY2hBZGFwdGVyIHRvIENvbXB1dGVGbG9hdE9mZnNldEFkYXB0
ZXIuIFRoZQorICAgICAgICBuYW1pbmcgb2YgdGhpcyBhZGFwdGVyIGhhcyBjYXVzZWQgbXVjaCBj
b25mdXNpb24gaW4gcmVhZGluZyB0aGUgY29kZSwKKyAgICAgICAgYXMgaXQgd2Fzbid0IGFwcGFy
ZW50IHRoYXQgY2FsbHMgdG8gaXQgd2VyZSBhY3R1YWxseSBkb2luZyBhbnl0aGluZworICAgICAg
ICBvdGhlciB0aGFuIHNlYXJjaGluZyB0aGUgaW50ZXJ2YWwgdHJlZS4gVGhlIG5ldyBuYW1lIGlz
IGEgbXVjaCBiZXR0ZXIKKyAgICAgICAgZGVzY3JpcHRpb24gb2Ygd2hhdCBpdCBhY3R1YWxseSBk
b2VzLgorCisgICAgICAgIEFsc28sIHJlbmFtZSBtX2xvd1ZhbHVlIGFuZCBtX2hpZ2hWYWx1ZSBt
ZW1iZXIgdmFyaWFibGVzIHRvIG1ha2UgaXQKKyAgICAgICAgZWFzaWVyIHRvIHJlYWQgdGhlIGNv
ZGUgdGhhdCB1c2VzIHRoZW0uCisKKyAgICAgICAgUmVtb3ZlZCB0aGUgaW5saW5lcyBiYXNlZCBv
biBhIGNoYW5nZSBieSBlc2VpZGVsIGluIEJsaW5rLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywg
bm8gYmVoYXZpb3IgY2hhbmdlLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Ojo6dXBkYXRlT2Zmc2V0SWZOZWVkZWQpOiBVcGRhdGUgZm9y
IHJlbmFtZXMuCisgICAgICAgIChXZWJDb3JlOjo6OmNvbGxlY3RJZk5lZWRlZCk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6OjpnZXRIZWlnaHRSZW1haW5pbmcpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlckJsb2NrOjpsb2dpY2FsTGVmdEZsb2F0T2Zmc2V0Rm9yTGluZSk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmxvZ2ljYWxSaWdodEZsb2F0T2Zm
c2V0Rm9yTGluZSk6IERpdHRvLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCbG9jay5oOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OkZsb2F0aW5nT2JqZWN0Ojp4KTogUmVtb3Zl
IHVubmVjZXNzYXJ5IGlubGluZS4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpGbG9h
dGluZ09iamVjdDo6bWF4WCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6
OkZsb2F0aW5nT2JqZWN0Ojp5KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9j
azo6RmxvYXRpbmdPYmplY3Q6Om1heFkpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckJsb2NrOjpGbG9hdGluZ09iamVjdDo6d2lkdGgpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckJsb2NrOjpGbG9hdGluZ09iamVjdDo6aGVpZ2h0KTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJCbG9jazo6Q29tcHV0ZUZsb2F0T2Zmc2V0QWRhcHRlcjo6Q29tcHV0ZUZs
b2F0T2Zmc2V0QWRhcHRlcik6IFJlbmFtZS4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2Nr
OjpDb21wdXRlRmxvYXRPZmZzZXRBZGFwdGVyOjpsb3dWYWx1ZSk6IFJlbmFtZSBtX2xvd1ZhbHVl
LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OkNvbXB1dGVGbG9hdE9mZnNldEFkYXB0
ZXI6OmhpZ2hWYWx1ZSk6IFJlbmFtZSBtX2hpZ2hWYWx1ZS4KKwogMjAxMy0wOC0yOCAgQW50dGkg
S29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgRmFjdG9yIGRlc2NlbmRhbnQg
aXRlcmF0b3IgYXNzZXJ0aW9ucyBpbnRvIGEgY2xhc3MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckJsb2NrLmNwcAppbmRleCAzYjY3ZTRkYWZkNTQ3NDMwMTA3NzY2OGM3ZTY3OTg3ZmM4
OTdjZmEzLi5lNTM5ZjJlZTAzNjQ4ZDJhYzVmYzFhMzk2MzQ5ZTQ1MzVmNzQwNGVlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKQEAgLTQ0MzksNyArNDQzOSw3IEBA
IGlubGluZSBzdGF0aWMgYm9vbCByYW5nZXNJbnRlcnNlY3QoaW50IGZsb2F0VG9wLCBpbnQgZmxv
YXRCb3R0b20sIGludCBvYmplY3RUb3AsCiB9CiAKIHRlbXBsYXRlPD4KLWlubGluZSBib29sIFJl
bmRlckJsb2NrOjpGbG9hdEludGVydmFsU2VhcmNoQWRhcHRlcjxSZW5kZXJCbG9jazo6RmxvYXRp
bmdPYmplY3Q6OkZsb2F0TGVmdD46OnVwZGF0ZU9mZnNldElmTmVlZGVkKGNvbnN0IEZsb2F0aW5n
T2JqZWN0KiBmbG9hdGluZ09iamVjdCkKK2lubGluZSBib29sIFJlbmRlckJsb2NrOjpDb21wdXRl
RmxvYXRPZmZzZXRBZGFwdGVyPFJlbmRlckJsb2NrOjpGbG9hdGluZ09iamVjdDo6RmxvYXRMZWZ0
Pjo6dXBkYXRlT2Zmc2V0SWZOZWVkZWQoY29uc3QgRmxvYXRpbmdPYmplY3QqIGZsb2F0aW5nT2Jq
ZWN0KQogewogICAgIExheW91dFVuaXQgbG9naWNhbFJpZ2h0ID0gbV9yZW5kZXJlci0+bG9naWNh
bFJpZ2h0Rm9yRmxvYXQoZmxvYXRpbmdPYmplY3QpOwogICAgIGlmIChsb2dpY2FsUmlnaHQgPiBt
X29mZnNldCkgewpAQCAtNDQ1MCw3ICs0NDUwLDcgQEAgaW5saW5lIGJvb2wgUmVuZGVyQmxvY2s6
OkZsb2F0SW50ZXJ2YWxTZWFyY2hBZGFwdGVyPFJlbmRlckJsb2NrOjpGbG9hdGluZ09iamVjdDoK
IH0KIAogdGVtcGxhdGU8PgotaW5saW5lIGJvb2wgUmVuZGVyQmxvY2s6OkZsb2F0SW50ZXJ2YWxT
ZWFyY2hBZGFwdGVyPFJlbmRlckJsb2NrOjpGbG9hdGluZ09iamVjdDo6RmxvYXRSaWdodD46OnVw
ZGF0ZU9mZnNldElmTmVlZGVkKGNvbnN0IEZsb2F0aW5nT2JqZWN0KiBmbG9hdGluZ09iamVjdCkK
K2lubGluZSBib29sIFJlbmRlckJsb2NrOjpDb21wdXRlRmxvYXRPZmZzZXRBZGFwdGVyPFJlbmRl
ckJsb2NrOjpGbG9hdGluZ09iamVjdDo6RmxvYXRSaWdodD46OnVwZGF0ZU9mZnNldElmTmVlZGVk
KGNvbnN0IEZsb2F0aW5nT2JqZWN0KiBmbG9hdGluZ09iamVjdCkKIHsKICAgICBMYXlvdXRVbml0
IGxvZ2ljYWxMZWZ0ID0gbV9yZW5kZXJlci0+bG9naWNhbExlZnRGb3JGbG9hdChmbG9hdGluZ09i
amVjdCk7CiAgICAgaWYgKGxvZ2ljYWxMZWZ0IDwgbV9vZmZzZXQpIHsKQEAgLTQ0NjEsMTUgKzQ0
NjEsMTUgQEAgaW5saW5lIGJvb2wgUmVuZGVyQmxvY2s6OkZsb2F0SW50ZXJ2YWxTZWFyY2hBZGFw
dGVyPFJlbmRlckJsb2NrOjpGbG9hdGluZ09iamVjdDoKIH0KIAogdGVtcGxhdGUgPFJlbmRlckJs
b2NrOjpGbG9hdGluZ09iamVjdDo6VHlwZSBGbG9hdFR5cGVWYWx1ZT4KLWlubGluZSB2b2lkIFJl
bmRlckJsb2NrOjpGbG9hdEludGVydmFsU2VhcmNoQWRhcHRlcjxGbG9hdFR5cGVWYWx1ZT46OmNv
bGxlY3RJZk5lZWRlZChjb25zdCBJbnRlcnZhbFR5cGUmIGludGVydmFsKQoraW5saW5lIHZvaWQg
UmVuZGVyQmxvY2s6OkNvbXB1dGVGbG9hdE9mZnNldEFkYXB0ZXI8RmxvYXRUeXBlVmFsdWU+Ojpj
b2xsZWN0SWZOZWVkZWQoY29uc3QgSW50ZXJ2YWxUeXBlJiBpbnRlcnZhbCkKIHsKICAgICBjb25z
dCBGbG9hdGluZ09iamVjdCogZmxvYXRpbmdPYmplY3QgPSBpbnRlcnZhbC5kYXRhKCk7Ci0gICAg
aWYgKGZsb2F0aW5nT2JqZWN0LT50eXBlKCkgIT0gRmxvYXRUeXBlVmFsdWUgfHwgIXJhbmdlc0lu
dGVyc2VjdChpbnRlcnZhbC5sb3coKSwgaW50ZXJ2YWwuaGlnaCgpLCBtX2xvd1ZhbHVlLCBtX2hp
Z2hWYWx1ZSkpCisgICAgaWYgKGZsb2F0aW5nT2JqZWN0LT50eXBlKCkgIT0gRmxvYXRUeXBlVmFs
dWUgfHwgIXJhbmdlc0ludGVyc2VjdChpbnRlcnZhbC5sb3coKSwgaW50ZXJ2YWwuaGlnaCgpLCBt
X2xpbmVUb3AsIG1fbGluZUJvdHRvbSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIC8vIEFsbCB0
aGUgb2JqZWN0cyByZXR1cm5lZCBmcm9tIHRoZSB0cmVlIHNob3VsZCBiZSBhbHJlYWR5IHBsYWNl
ZC4KICAgICBBU1NFUlQoZmxvYXRpbmdPYmplY3QtPmlzUGxhY2VkKCkpOwotICAgIEFTU0VSVChy
YW5nZXNJbnRlcnNlY3QobV9yZW5kZXJlci0+cGl4ZWxTbmFwcGVkTG9naWNhbFRvcEZvckZsb2F0
KGZsb2F0aW5nT2JqZWN0KSwgbV9yZW5kZXJlci0+cGl4ZWxTbmFwcGVkTG9naWNhbEJvdHRvbUZv
ckZsb2F0KGZsb2F0aW5nT2JqZWN0KSwgbV9sb3dWYWx1ZSwgbV9oaWdoVmFsdWUpKTsKKyAgICBB
U1NFUlQocmFuZ2VzSW50ZXJzZWN0KG1fcmVuZGVyZXItPnBpeGVsU25hcHBlZExvZ2ljYWxUb3BG
b3JGbG9hdChmbG9hdGluZ09iamVjdCksIG1fcmVuZGVyZXItPnBpeGVsU25hcHBlZExvZ2ljYWxC
b3R0b21Gb3JGbG9hdChmbG9hdGluZ09iamVjdCksIG1fbGluZVRvcCwgbV9saW5lQm90dG9tKSk7
CiAKICAgICBib29sIGZsb2F0SXNOZXdFeHRyZW1lID0gdXBkYXRlT2Zmc2V0SWZOZWVkZWQoZmxv
YXRpbmdPYmplY3QpOwogICAgIGlmIChmbG9hdElzTmV3RXh0cmVtZSkKQEAgLTQ0NzcsOSArNDQ3
Nyw5IEBAIGlubGluZSB2b2lkIFJlbmRlckJsb2NrOjpGbG9hdEludGVydmFsU2VhcmNoQWRhcHRl
cjxGbG9hdFR5cGVWYWx1ZT46OmNvbGxlY3RJZk5lCiB9CiAKIHRlbXBsYXRlIDxSZW5kZXJCbG9j
azo6RmxvYXRpbmdPYmplY3Q6OlR5cGUgRmxvYXRUeXBlVmFsdWU+Ci1MYXlvdXRVbml0IFJlbmRl
ckJsb2NrOjpGbG9hdEludGVydmFsU2VhcmNoQWRhcHRlcjxGbG9hdFR5cGVWYWx1ZT46OmdldEhl
aWdodFJlbWFpbmluZygpIGNvbnN0CitMYXlvdXRVbml0IFJlbmRlckJsb2NrOjpDb21wdXRlRmxv
YXRPZmZzZXRBZGFwdGVyPEZsb2F0VHlwZVZhbHVlPjo6Z2V0SGVpZ2h0UmVtYWluaW5nKCkgY29u
c3QKIHsKLSAgICByZXR1cm4gbV9vdXRlcm1vc3RGbG9hdCA/IG1fcmVuZGVyZXItPmxvZ2ljYWxC
b3R0b21Gb3JGbG9hdChtX291dGVybW9zdEZsb2F0KSAtIG1fbG93VmFsdWUgOiBMYXlvdXRVbml0
KDEpOworICAgIHJldHVybiBtX291dGVybW9zdEZsb2F0ID8gbV9yZW5kZXJlci0+bG9naWNhbEJv
dHRvbUZvckZsb2F0KG1fb3V0ZXJtb3N0RmxvYXQpIC0gbV9saW5lVG9wIDogTGF5b3V0VW5pdCgx
KTsKIH0KIAogTGF5b3V0VW5pdCBSZW5kZXJCbG9jazo6dGV4dEluZGVudE9mZnNldCgpIGNvbnN0
CkBAIC00NTE5LDcgKzQ1MTksNyBAQCBMYXlvdXRVbml0IFJlbmRlckJsb2NrOjpsb2dpY2FsTGVm
dEZsb2F0T2Zmc2V0Rm9yTGluZShMYXlvdXRVbml0IGxvZ2ljYWxUb3AsIExheQogI2VuZGlmCiAg
ICAgTGF5b3V0VW5pdCBsZWZ0ID0gZml4ZWRPZmZzZXQ7CiAgICAgaWYgKG1fZmxvYXRpbmdPYmpl
Y3RzICYmIG1fZmxvYXRpbmdPYmplY3RzLT5oYXNMZWZ0T2JqZWN0cygpKSB7Ci0gICAgICAgIEZs
b2F0SW50ZXJ2YWxTZWFyY2hBZGFwdGVyPEZsb2F0aW5nT2JqZWN0OjpGbG9hdExlZnQ+IGFkYXB0
ZXIodGhpcywgcm91bmRUb0ludChsb2dpY2FsVG9wKSwgcm91bmRUb0ludChsb2dpY2FsVG9wICsg
bG9naWNhbEhlaWdodCksIGxlZnQpOworICAgICAgICBDb21wdXRlRmxvYXRPZmZzZXRBZGFwdGVy
PEZsb2F0aW5nT2JqZWN0OjpGbG9hdExlZnQ+IGFkYXB0ZXIodGhpcywgcm91bmRUb0ludChsb2dp
Y2FsVG9wKSwgcm91bmRUb0ludChsb2dpY2FsVG9wICsgbG9naWNhbEhlaWdodCksIGxlZnQpOwog
ICAgICAgICBtX2Zsb2F0aW5nT2JqZWN0cy0+cGxhY2VkRmxvYXRzVHJlZSgpLmFsbE92ZXJsYXBz
V2l0aEFkYXB0ZXIoYWRhcHRlcik7CiAKICAgICAgICAgaWYgKGhlaWdodFJlbWFpbmluZykKQEAg
LTQ1ODcsNyArNDU4Nyw3IEBAIExheW91dFVuaXQgUmVuZGVyQmxvY2s6OmxvZ2ljYWxSaWdodEZs
b2F0T2Zmc2V0Rm9yTGluZShMYXlvdXRVbml0IGxvZ2ljYWxUb3AsIExhCiAgICAgTGF5b3V0VW5p
dCByaWdodCA9IGZpeGVkT2Zmc2V0OwogICAgIGlmIChtX2Zsb2F0aW5nT2JqZWN0cyAmJiBtX2Zs
b2F0aW5nT2JqZWN0cy0+aGFzUmlnaHRPYmplY3RzKCkpIHsKICAgICAgICAgTGF5b3V0VW5pdCBy
aWdodEZsb2F0T2Zmc2V0ID0gZml4ZWRPZmZzZXQ7Ci0gICAgICAgIEZsb2F0SW50ZXJ2YWxTZWFy
Y2hBZGFwdGVyPEZsb2F0aW5nT2JqZWN0OjpGbG9hdFJpZ2h0PiBhZGFwdGVyKHRoaXMsIHJvdW5k
VG9JbnQobG9naWNhbFRvcCksIHJvdW5kVG9JbnQobG9naWNhbFRvcCArIGxvZ2ljYWxIZWlnaHQp
LCByaWdodEZsb2F0T2Zmc2V0KTsKKyAgICAgICAgQ29tcHV0ZUZsb2F0T2Zmc2V0QWRhcHRlcjxG
bG9hdGluZ09iamVjdDo6RmxvYXRSaWdodD4gYWRhcHRlcih0aGlzLCByb3VuZFRvSW50KGxvZ2lj
YWxUb3ApLCByb3VuZFRvSW50KGxvZ2ljYWxUb3AgKyBsb2dpY2FsSGVpZ2h0KSwgcmlnaHRGbG9h
dE9mZnNldCk7CiAgICAgICAgIG1fZmxvYXRpbmdPYmplY3RzLT5wbGFjZWRGbG9hdHNUcmVlKCku
YWxsT3ZlcmxhcHNXaXRoQWRhcHRlcihhZGFwdGVyKTsKIAogICAgICAgICBpZiAoaGVpZ2h0UmVt
YWluaW5nKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2Nr
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suaAppbmRleCAwOGIxMmU0
ZjI2YWI5ZGM0ZTkyNDhiZTQ3NjI3OTM0YWNiODM2YTYzLi4wM2NmM2I2OTUyNGY3MmI4OTMyMzM5
NWZmNDE2YjRiOGFiMjAwYzBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQmxvY2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2su
aApAQCAtNzM3LDEyICs3MzcsMTIgQEAgcHJpdmF0ZToKICAgICAgICAgYm9vbCBpc1BsYWNlZCgp
IGNvbnN0IHsgcmV0dXJuIG1faXNQbGFjZWQ7IH0KICAgICAgICAgdm9pZCBzZXRJc1BsYWNlZChi
b29sIHBsYWNlZCA9IHRydWUpIHsgbV9pc1BsYWNlZCA9IHBsYWNlZDsgfQogCi0gICAgICAgIGlu
bGluZSBMYXlvdXRVbml0IHgoKSBjb25zdCB7IEFTU0VSVChpc1BsYWNlZCgpKTsgcmV0dXJuIG1f
ZnJhbWVSZWN0LngoKTsgfQotICAgICAgICBpbmxpbmUgTGF5b3V0VW5pdCBtYXhYKCkgY29uc3Qg
eyBBU1NFUlQoaXNQbGFjZWQoKSk7IHJldHVybiBtX2ZyYW1lUmVjdC5tYXhYKCk7IH0KLSAgICAg
ICAgaW5saW5lIExheW91dFVuaXQgeSgpIGNvbnN0IHsgQVNTRVJUKGlzUGxhY2VkKCkpOyByZXR1
cm4gbV9mcmFtZVJlY3QueSgpOyB9Ci0gICAgICAgIGlubGluZSBMYXlvdXRVbml0IG1heFkoKSBj
b25zdCB7IEFTU0VSVChpc1BsYWNlZCgpKTsgcmV0dXJuIG1fZnJhbWVSZWN0Lm1heFkoKTsgfQot
ICAgICAgICBpbmxpbmUgTGF5b3V0VW5pdCB3aWR0aCgpIGNvbnN0IHsgcmV0dXJuIG1fZnJhbWVS
ZWN0LndpZHRoKCk7IH0KLSAgICAgICAgaW5saW5lIExheW91dFVuaXQgaGVpZ2h0KCkgY29uc3Qg
eyByZXR1cm4gbV9mcmFtZVJlY3QuaGVpZ2h0KCk7IH0KKyAgICAgICAgTGF5b3V0VW5pdCB4KCkg
Y29uc3QgeyBBU1NFUlQoaXNQbGFjZWQoKSk7IHJldHVybiBtX2ZyYW1lUmVjdC54KCk7IH0KKyAg
ICAgICAgTGF5b3V0VW5pdCBtYXhYKCkgY29uc3QgeyBBU1NFUlQoaXNQbGFjZWQoKSk7IHJldHVy
biBtX2ZyYW1lUmVjdC5tYXhYKCk7IH0KKyAgICAgICAgTGF5b3V0VW5pdCB5KCkgY29uc3QgeyBB
U1NFUlQoaXNQbGFjZWQoKSk7IHJldHVybiBtX2ZyYW1lUmVjdC55KCk7IH0KKyAgICAgICAgTGF5
b3V0VW5pdCBtYXhZKCkgY29uc3QgeyBBU1NFUlQoaXNQbGFjZWQoKSk7IHJldHVybiBtX2ZyYW1l
UmVjdC5tYXhZKCk7IH0KKyAgICAgICAgTGF5b3V0VW5pdCB3aWR0aCgpIGNvbnN0IHsgcmV0dXJu
IG1fZnJhbWVSZWN0LndpZHRoKCk7IH0KKyAgICAgICAgTGF5b3V0VW5pdCBoZWlnaHQoKSBjb25z
dCB7IHJldHVybiBtX2ZyYW1lUmVjdC5oZWlnaHQoKTsgfQogCiAgICAgICAgIHZvaWQgc2V0WChM
YXlvdXRVbml0IHgpIHsgQVNTRVJUKCFpc0luUGxhY2VkVHJlZSgpKTsgbV9mcmFtZVJlY3Quc2V0
WCh4KTsgfQogICAgICAgICB2b2lkIHNldFkoTGF5b3V0VW5pdCB5KSB7IEFTU0VSVCghaXNJblBs
YWNlZFRyZWUoKSk7IG1fZnJhbWVSZWN0LnNldFkoeSk7IH0KQEAgLTEyMDUsMjEgKzEyMDUsMjEg
QEAgcHJvdGVjdGVkOgogICAgIHR5cGVkZWYgUE9ERnJlZUxpc3RBcmVuYTxQT0RSZWRCbGFja1Ry
ZWU8RmxvYXRpbmdPYmplY3RJbnRlcnZhbD46Ok5vZGU+IEludGVydmFsQXJlbmE7CiAgICAgCiAg
ICAgdGVtcGxhdGUgPEZsb2F0aW5nT2JqZWN0OjpUeXBlIEZsb2F0VHlwZVZhbHVlPgotICAgIGNs
YXNzIEZsb2F0SW50ZXJ2YWxTZWFyY2hBZGFwdGVyIHsKKyAgICBjbGFzcyBDb21wdXRlRmxvYXRP
ZmZzZXRBZGFwdGVyIHsKICAgICBwdWJsaWM6CiAgICAgICAgIHR5cGVkZWYgRmxvYXRpbmdPYmpl
Y3RJbnRlcnZhbCBJbnRlcnZhbFR5cGU7CiAgICAgICAgIAotICAgICAgICBGbG9hdEludGVydmFs
U2VhcmNoQWRhcHRlcihjb25zdCBSZW5kZXJCbG9jayogcmVuZGVyZXIsIGludCBsb3dWYWx1ZSwg
aW50IGhpZ2hWYWx1ZSwgTGF5b3V0VW5pdCYgb2Zmc2V0KQorICAgICAgICBDb21wdXRlRmxvYXRP
ZmZzZXRBZGFwdGVyKGNvbnN0IFJlbmRlckJsb2NrKiByZW5kZXJlciwgaW50IGxpbmVUb3AsIGlu
dCBsaW5lQm90dG9tLCBMYXlvdXRVbml0JiBvZmZzZXQpCiAgICAgICAgICAgICA6IG1fcmVuZGVy
ZXIocmVuZGVyZXIpCi0gICAgICAgICAgICAsIG1fbG93VmFsdWUobG93VmFsdWUpCi0gICAgICAg
ICAgICAsIG1faGlnaFZhbHVlKGhpZ2hWYWx1ZSkKKyAgICAgICAgICAgICwgbV9saW5lVG9wKGxp
bmVUb3ApCisgICAgICAgICAgICAsIG1fbGluZUJvdHRvbShsaW5lQm90dG9tKQogICAgICAgICAg
ICAgLCBtX29mZnNldChvZmZzZXQpCiAgICAgICAgICAgICAsIG1fb3V0ZXJtb3N0RmxvYXQoMCkK
ICAgICAgICAgewogICAgICAgICB9CiAgICAgICAgIAotICAgICAgICBpbmxpbmUgaW50IGxvd1Zh
bHVlKCkgY29uc3QgeyByZXR1cm4gbV9sb3dWYWx1ZTsgfQotICAgICAgICBpbmxpbmUgaW50IGhp
Z2hWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1faGlnaFZhbHVlOyB9CisgICAgICAgIGludCBsb3dW
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbGluZVRvcDsgfQorICAgICAgICBpbnQgaGlnaFZhbHVl
KCkgY29uc3QgeyByZXR1cm4gbV9saW5lQm90dG9tOyB9CiAgICAgICAgIHZvaWQgY29sbGVjdElm
TmVlZGVkKGNvbnN0IEludGVydmFsVHlwZSYpOwogCiAjaWYgRU5BQkxFKENTU19TSEFQRVMpCkBA
IC0xMjM2LDggKzEyMzYsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgICAgIGJvb2wgdXBkYXRlT2Zmc2V0
SWZOZWVkZWQoY29uc3QgRmxvYXRpbmdPYmplY3QqKTsKIAogICAgICAgICBjb25zdCBSZW5kZXJC
bG9jayogbV9yZW5kZXJlcjsKLSAgICAgICAgaW50IG1fbG93VmFsdWU7Ci0gICAgICAgIGludCBt
X2hpZ2hWYWx1ZTsKKyAgICAgICAgaW50IG1fbGluZVRvcDsKKyAgICAgICAgaW50IG1fbGluZUJv
dHRvbTsKICAgICAgICAgTGF5b3V0VW5pdCYgbV9vZmZzZXQ7CiAgICAgICAgIGNvbnN0IEZsb2F0
aW5nT2JqZWN0KiBtX291dGVybW9zdEZsb2F0OwogICAgIH07Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>