<?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>153464</bug_id>
          
          <creation_ts>2016-01-25 16:38:52 -0800</creation_ts>
          <short_desc>[mips] fix offsets of branches that have to go over a jump</short_desc>
          <delta_ts>2017-11-15 13:12:06 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Other</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>108664</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Guillaume Emont">guijemont</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>annulen</cc>
    
    <cc>aperez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jbriance</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1158597</commentid>
    <comment_count>0</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-01-25 16:38:52 -0800</bug_when>
    <thetext>The jump() function creates 8 instructions, but the offsets of branches          
meant to go over them only account for 6. In most cases, this is not an          
issue as the last two instructions of jump() would be nops, but in the           
rarer case where the jump destination is in a different 256 MB segment,          
MIPSAssembler::linkWithOffset() will rewrite the code in a way in which          
the last 4 instructions would be a 2 instruction load (lui/ori) into             
$t9, a &quot;j $t9&quot; and then a nop. The wrong offset will mean that the               
previous branches meant to go over the whole jump will branch to the             
&quot;j $t9&quot; instruction, which would jump to whatever is currently in $t9            
(since lui/ori would not be executed).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158599</commentid>
    <comment_count>1</comment_count>
      <attachid>269813</attachid>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-01-25 16:40:46 -0800</bug_when>
    <thetext>Created attachment 269813
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158739</commentid>
    <comment_count>2</comment_count>
    <who name="Konstantin Tokarev">annulen</who>
    <bug_when>2016-01-25 23:31:00 -0800</bug_when>
    <thetext>There is a different approach to 256MB jumps proposed in https://bugs.webkit.org/show_bug.cgi?id=125920. We use it in Qt port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158881</commentid>
    <comment_count>3</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-01-26 11:14:58 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; There is a different approach to 256MB jumps proposed in
&gt; https://bugs.webkit.org/show_bug.cgi?id=125920. We use it in Qt port.

Indeed, that patch would fix this bug as well (by removing the 2 nops at the start of branchEqual), but it also does a lot more and has been refused so far, hence my proposing this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159019</commentid>
    <comment_count>4</comment_count>
      <attachid>269926</attachid>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-01-26 14:37:49 -0800</bug_when>
    <thetext>Created attachment 269926
Patch

New patch that does not save cmpTempRegister</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159020</commentid>
    <comment_count>5</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-01-26 14:38:55 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Created attachment 269926 [details]
&gt; Patch
&gt; 
&gt; New patch that does not save cmpTempRegister
Sorry, wrong bug!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159021</commentid>
    <comment_count>6</comment_count>
      <attachid>269927</attachid>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-01-26 14:39:42 -0800</bug_when>
    <thetext>Created attachment 269927
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159025</commentid>
    <comment_count>7</comment_count>
      <attachid>269926</attachid>
    <who name="Konstantin Tokarev">annulen</who>
    <bug_when>2016-01-26 14:44:36 -0800</bug_when>
    <thetext>Comment on attachment 269926
Patch

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

&gt; Source/JavaScriptCore/yarr/YarrJIT.cpp:2585
&gt; +        m_assembler.sw(framePointerRegister, stackPointerRegister, 0);

Please use pushPair here

&gt; Source/JavaScriptCore/yarr/YarrJIT.cpp:2621
&gt; +        m_assembler.addiu(stackPointerRegister, stackPointerRegister, 8);

And popPair here</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159116</commentid>
    <comment_count>8</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-01-26 17:01:02 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; Comment on attachment 269926 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=269926&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/yarr/YarrJIT.cpp:2585
&gt; &gt; +        m_assembler.sw(framePointerRegister, stackPointerRegister, 0);
&gt; 
&gt; Please use pushPair here
&gt; 
&gt; &gt; Source/JavaScriptCore/yarr/YarrJIT.cpp:2621
&gt; &gt; +        m_assembler.addiu(stackPointerRegister, stackPointerRegister, 8);
&gt; 
&gt; And popPair here

Sorry for the confusion, this patch really belonged to https://bugs.webkit.org/show_bug.cgi?id=153457</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1163080</commentid>
    <comment_count>9</comment_count>
      <attachid>270897</attachid>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-02-08 17:23:23 -0800</bug_when>
    <thetext>Created attachment 270897
Test to reproduce

This is a first attempt at a test to reproduce the issue. On my device, this tends to crash, and I could verify that it is when the generated function is overlapping two 256MB segments, though I did not fully analyze the reason for the crash, and if it is indeed our bug (did not really want to step through 32MB of JIT&apos;ed code).

I verified that it is overlapping two segments using --dumpDisassembly=true. On mips it does not provide disassembly, and it provides a lot of information, but among it is the address at which the JIT&apos;ed code is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1211019</commentid>
    <comment_count>10</comment_count>
    <who name="Konstantin Tokarev">annulen</who>
    <bug_when>2016-07-14 09:59:14 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; There is a different approach to 256MB jumps proposed in
&gt; &gt; https://bugs.webkit.org/show_bug.cgi?id=125920. We use it in Qt port.
&gt; 
&gt; Indeed, that patch would fix this bug as well (by removing the 2 nops at the
&gt; start of branchEqual), but it also does a lot more and has been refused so
&gt; far, hence my proposing this.

Patch from 125920 works fine here in QtWebKit branch based on WebKitGTK 2.12. I think it also has some battle testing in old QtWebKit branch, used in Qt since 5.4 release (2014).

Though my device has less than 256MB of RAM available for WebKit, so I cannot code path for boundary cross.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1363815</commentid>
    <comment_count>11</comment_count>
      <attachid>324703</attachid>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2017-10-24 12:53:39 -0700</bug_when>
    <thetext>Created attachment 324703
Patch

Rebased patch. This is now needed to fix about 1000 test failure on MIPS since changes in r223813 makes this bug much more likely to happen. Submitting this new version for review since I forgot to commit at the time (oops) and this is a bit old.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1363821</commentid>
    <comment_count>12</comment_count>
      <attachid>324703</attachid>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-10-24 12:57:30 -0700</bug_when>
    <thetext>Comment on attachment 324703
Patch

Informal r+ from me.

It&apos;ll be nice to have this fixed after such a long while \o/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1363861</commentid>
    <comment_count>13</comment_count>
      <attachid>324703</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-24 13:36:53 -0700</bug_when>
    <thetext>Comment on attachment 324703
Patch

Clearing flags on attachment: 324703

Committed r223916: &lt;https://trac.webkit.org/changeset/223916&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1363862</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-24 13:36:54 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1372404</commentid>
    <comment_count>15</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-11-15 13:12:06 -0800</bug_when>
    <thetext>&lt;rdar://problem/35568988&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>269813</attachid>
            <date>2016-01-25 16:40:46 -0800</date>
            <delta_ts>2016-01-26 14:37:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-153464-20160125184019.patch</filename>
            <type>text/plain</type>
            <size>6618</size>
            <attacher name="Guillaume Emont">guijemont</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk1Mzk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
YTU1NDQ5NmExZTM5OWM0OGNmNjIwNjVlY2U2YTcyYWIxYzAwY2UxLi42NDc0NmU3MjEwZjNjYjU3
ZGU1YmRkMTU4ODc2MWIxNGFmOGY0MzU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwyOSBAQAogMjAxNi0wMS0yNSAgR3VpbGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxp
YS5jb20+CiAKKyAgICAgICAgW21pcHNdIGZpeCBvZmZzZXRzIG9mIGJyYW5jaGVzIHRoYXQgaGF2
ZSB0byBnbyBvdmVyIGEganVtcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTUzNDY0CisKKyAgICAgICAgVGhlIGp1bXAoKSBmdW5jdGlvbiBjcmVhdGVz
IDggaW5zdHJ1Y3Rpb25zLCBidXQgdGhlIG9mZnNldHMgb2YgYnJhbmNoZXMKKyAgICAgICAgbWVh
bnQgdG8gZ28gb3ZlciB0aGVtIG9ubHkgYWNjb3VudCBmb3IgNi4gSW4gbW9zdCBjYXNlcywgdGhp
cyBpcyBub3QgYW4KKyAgICAgICAgaXNzdWUgYXMgdGhlIGxhc3QgdHdvIGluc3RydWN0aW9ucyBv
ZiBqdW1wKCkgd291bGQgYmUgbm9wcywgYnV0IGluIHRoZQorICAgICAgICByYXJlciBjYXNlIHdo
ZXJlIHRoZSBqdW1wIGRlc3RpbmF0aW9uIGlzIGluIGEgZGlmZmVyZW50IDI1NiBNQiBzZWdtZW50
LAorICAgICAgICBNSVBTQXNzZW1ibGVyOjpsaW5rV2l0aE9mZnNldCgpIHdpbGwgcmV3cml0ZSB0
aGUgY29kZSBpbiBhIHdheSBpbiB3aGljaAorICAgICAgICB0aGUgbGFzdCA0IGluc3RydWN0aW9u
cyB3b3VsZCBiZSBhIDIgaW5zdHJ1Y3Rpb24gbG9hZCAobHVpL29yaSkgaW50bworICAgICAgICAk
dDksIGEgImogJHQ5IiBhbmQgdGhlbiBhIG5vcC4gVGhlIHdyb25nIG9mZnNldCB3aWxsIG1lYW4g
dGhhdCB0aGUKKyAgICAgICAgcHJldmlvdXMgYnJhbmNoZXMgbWVhbnQgdG8gZ28gb3ZlciB0aGUg
d2hvbGUganVtcCB3aWxsIGJyYW5jaCB0byB0aGUKKyAgICAgICAgImogJHQ5IiBpbnN0cnVjdGlv
biwgd2hpY2ggd291bGQganVtcCB0byB3aGF0ZXZlciBpcyBjdXJyZW50bHkgaW4gJHQ5CisgICAg
ICAgIChzaW5jZSBsdWkvb3JpIHdvdWxkIG5vdCBiZSBleGVjdXRlZCkuCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJNSVBTLmg6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyTUlQUzo6YnJhbmNoQWRk
MzIpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlck1JUFM6OmJyYW5jaE11bDMyKToKKyAg
ICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJNSVBTOjpicmFuY2hTdWIzMik6CisgICAgICAgIEZp
eCB0aGUgb2Zmc2V0cyBvZiBicmFuY2hlcyBtZWFudCB0byBnbyBvdmVyIGNvZGUgZ2VuZXJhdGVk
IGJ5IGp1bXAoKS4KKworMjAxNi0wMS0yNSAgR3VpbGxhdW1lIEVtb250ICA8Z3VpamVtb250QGln
YWxpYS5jb20+CisKICAgICAgICAgW21pcHNdIGRvbid0IHNhdmUgdG8gYSBjYWxsZWUgc2F2ZWQg
cmVnaXN0ZXIgdG9vIGVhcmx5CiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNTM0NjMKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvTWFjcm9Bc3NlbWJsZXJNSVBTLmgKaW5kZXggOWIzNzU2NGQ1MWY4YWZhNDRhYzVkMjg3
MmEzZDg5M2JiOWM2MzY3YS4uNjQ0ZGMwOGU4N2Q3MjM2NTQ4ZWIzNGJiNDlhYWNiZTllNjNiNDIy
YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2Vt
Ymxlck1JUFMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNz
ZW1ibGVyTUlQUy5oCkBAIC0xNjEwLDEwICsxNjEwLDEwIEBAIHB1YmxpYzoKICAgICAgICAgICAg
ICovCiAgICAgICAgICAgICBtb3ZlKGRlc3QsIGRhdGFUZW1wUmVnaXN0ZXIpOwogICAgICAgICAg
ICAgbV9hc3NlbWJsZXIueG9ySW5zbihjbXBUZW1wUmVnaXN0ZXIsIGRhdGFUZW1wUmVnaXN0ZXIs
IHNyYyk7Ci0gICAgICAgICAgICBtX2Fzc2VtYmxlci5ibHR6KGNtcFRlbXBSZWdpc3RlciwgMTAp
OworICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmx0eihjbXBUZW1wUmVnaXN0ZXIsIDEyKTsKICAg
ICAgICAgICAgIG1fYXNzZW1ibGVyLmFkZHUoZGVzdCwgZGF0YVRlbXBSZWdpc3Rlciwgc3JjKTsK
ICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhvckluc24oY21wVGVtcFJlZ2lzdGVyLCBkZXN0LCBk
YXRhVGVtcFJlZ2lzdGVyKTsKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJl
Z2lzdGVyLCA3KTsKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJlZ2lzdGVy
LCA5KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLm5vcCgpOwogICAgICAgICAgICAgcmV0dXJu
IGp1bXAoKTsKICAgICAgICAgfQpAQCAtMTY2MywxMCArMTY2MywxMCBAQCBwdWJsaWM6CiAgICAg
ICAgICAgICAqLwogICAgICAgICAgICAgbW92ZShvcDEsIGRhdGFUZW1wUmVnaXN0ZXIpOwogICAg
ICAgICAgICAgbV9hc3NlbWJsZXIueG9ySW5zbihjbXBUZW1wUmVnaXN0ZXIsIGRhdGFUZW1wUmVn
aXN0ZXIsIG9wMik7Ci0gICAgICAgICAgICBtX2Fzc2VtYmxlci5ibHR6KGNtcFRlbXBSZWdpc3Rl
ciwgMTApOworICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmx0eihjbXBUZW1wUmVnaXN0ZXIsIDEy
KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLmFkZHUoZGVzdCwgZGF0YVRlbXBSZWdpc3Rlciwg
b3AyKTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhvckluc24oY21wVGVtcFJlZ2lzdGVyLCBk
ZXN0LCBkYXRhVGVtcFJlZ2lzdGVyKTsKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXooY21w
VGVtcFJlZ2lzdGVyLCA3KTsKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJl
Z2lzdGVyLCA5KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLm5vcCgpOwogICAgICAgICAgICAg
cmV0dXJuIGp1bXAoKTsKICAgICAgICAgfQpAQCAtMTczNywyMSArMTczNywyMSBAQCBwdWJsaWM6
CiAgICAgICAgICAgICBpZiAoaW1tLm1fdmFsdWUgPj0gLTMyNzY4ICYmIGltbS5tX3ZhbHVlICA8
PSAzMjc2NyAmJiAhbV9maXhlZFdpZHRoKSB7CiAgICAgICAgICAgICAgICAgbG9hZDMyKGRlc3Qu
bV9wdHIsIGRhdGFUZW1wUmVnaXN0ZXIpOwogICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhv
cmkoY21wVGVtcFJlZ2lzdGVyLCBkYXRhVGVtcFJlZ2lzdGVyLCBpbW0ubV92YWx1ZSk7Ci0gICAg
ICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmx0eihjbXBUZW1wUmVnaXN0ZXIsIDEwKTsKKyAgICAg
ICAgICAgICAgICBtX2Fzc2VtYmxlci5ibHR6KGNtcFRlbXBSZWdpc3RlciwgMTQpOwogICAgICAg
ICAgICAgICAgIG1fYXNzZW1ibGVyLmFkZGl1KGRhdGFUZW1wUmVnaXN0ZXIsIGRhdGFUZW1wUmVn
aXN0ZXIsIGltbS5tX3ZhbHVlKTsKICAgICAgICAgICAgICAgICBzdG9yZTMyKGRhdGFUZW1wUmVn
aXN0ZXIsIGRlc3QubV9wdHIpOwogICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhvcmkoY21w
VGVtcFJlZ2lzdGVyLCBkYXRhVGVtcFJlZ2lzdGVyLCBpbW0ubV92YWx1ZSk7Ci0gICAgICAgICAg
ICAgICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIsIDcpOworICAgICAgICAgICAg
ICAgIG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJlZ2lzdGVyLCA5KTsKICAgICAgICAgICAgICAg
ICBtX2Fzc2VtYmxlci5ub3AoKTsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAg
ICAgbG9hZDMyKGRlc3QubV9wdHIsIGRhdGFUZW1wUmVnaXN0ZXIpOwogICAgICAgICAgICAgICAg
IG1vdmUoaW1tLCBpbW1UZW1wUmVnaXN0ZXIpOwogICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVy
Lnhvckluc24oY21wVGVtcFJlZ2lzdGVyLCBkYXRhVGVtcFJlZ2lzdGVyLCBpbW1UZW1wUmVnaXN0
ZXIpOwotICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJsdHooY21wVGVtcFJlZ2lzdGVyLCAx
MCk7CisgICAgICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmx0eihjbXBUZW1wUmVnaXN0ZXIsIDE0
KTsKICAgICAgICAgICAgICAgICBtX2Fzc2VtYmxlci5hZGRpdShkYXRhVGVtcFJlZ2lzdGVyLCBk
YXRhVGVtcFJlZ2lzdGVyLCBpbW1UZW1wUmVnaXN0ZXIpOwogICAgICAgICAgICAgICAgIHN0b3Jl
MzIoZGF0YVRlbXBSZWdpc3RlciwgZGVzdC5tX3B0cik7CiAgICAgICAgICAgICAgICAgbV9hc3Nl
bWJsZXIueG9yaShjbXBUZW1wUmVnaXN0ZXIsIGRhdGFUZW1wUmVnaXN0ZXIsIGltbVRlbXBSZWdp
c3Rlcik7Ci0gICAgICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIs
IDcpOworICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJlZ2lzdGVyLCA5
KTsKICAgICAgICAgICAgICAgICBtX2Fzc2VtYmxlci5ub3AoKTsKICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIHJldHVybiBqdW1wKCk7CkBAIC0xODAxLDcgKzE4MDEsNyBAQCBwdWJsaWM6CiAg
ICAgICAgICAgICBtX2Fzc2VtYmxlci5tZmhpKGRhdGFUZW1wUmVnaXN0ZXIpOwogICAgICAgICAg
ICAgbV9hc3NlbWJsZXIubWZsbyhkZXN0KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnNyYShh
ZGRyVGVtcFJlZ2lzdGVyLCBkZXN0LCAzMSk7Ci0gICAgICAgICAgICBtX2Fzc2VtYmxlci5iZXEo
ZGF0YVRlbXBSZWdpc3RlciwgYWRkclRlbXBSZWdpc3RlciwgNyk7CisgICAgICAgICAgICBtX2Fz
c2VtYmxlci5iZXEoZGF0YVRlbXBSZWdpc3RlciwgYWRkclRlbXBSZWdpc3RlciwgOSk7CiAgICAg
ICAgICAgICBtX2Fzc2VtYmxlci5ub3AoKTsKICAgICAgICAgICAgIHJldHVybiBqdW1wKCk7CiAg
ICAgICAgIH0KQEAgLTE4NDYsNyArMTg0Niw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fYXNz
ZW1ibGVyLm1maGkoZGF0YVRlbXBSZWdpc3Rlcik7CiAgICAgICAgICAgICBtX2Fzc2VtYmxlci5t
ZmxvKGRlc3QpOwogICAgICAgICAgICAgbV9hc3NlbWJsZXIuc3JhKGFkZHJUZW1wUmVnaXN0ZXIs
IGRlc3QsIDMxKTsKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJlcShkYXRhVGVtcFJlZ2lzdGVy
LCBhZGRyVGVtcFJlZ2lzdGVyLCA3KTsKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJlcShkYXRh
VGVtcFJlZ2lzdGVyLCBhZGRyVGVtcFJlZ2lzdGVyLCA5KTsKICAgICAgICAgICAgIG1fYXNzZW1i
bGVyLm5vcCgpOwogICAgICAgICAgICAgcmV0dXJuIGp1bXAoKTsKICAgICAgICAgfQpAQCAtMTg5
NiwxMCArMTg5NiwxMCBAQCBwdWJsaWM6CiAgICAgICAgICAgICAqLwogICAgICAgICAgICAgbW92
ZShkZXN0LCBkYXRhVGVtcFJlZ2lzdGVyKTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhvcklu
c24oY21wVGVtcFJlZ2lzdGVyLCBkYXRhVGVtcFJlZ2lzdGVyLCBzcmMpOwotICAgICAgICAgICAg
bV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIsIDEwKTsKKyAgICAgICAgICAgIG1fYXNz
ZW1ibGVyLmJnZXooY21wVGVtcFJlZ2lzdGVyLCAxMik7CiAgICAgICAgICAgICBtX2Fzc2VtYmxl
ci5zdWJ1KGRlc3QsIGRhdGFUZW1wUmVnaXN0ZXIsIHNyYyk7CiAgICAgICAgICAgICBtX2Fzc2Vt
Ymxlci54b3JJbnNuKGNtcFRlbXBSZWdpc3RlciwgZGVzdCwgZGF0YVRlbXBSZWdpc3Rlcik7Ci0g
ICAgICAgICAgICBtX2Fzc2VtYmxlci5iZ2V6KGNtcFRlbXBSZWdpc3RlciwgNyk7CisgICAgICAg
ICAgICBtX2Fzc2VtYmxlci5iZ2V6KGNtcFRlbXBSZWdpc3RlciwgOSk7CiAgICAgICAgICAgICBt
X2Fzc2VtYmxlci5ub3AoKTsKICAgICAgICAgICAgIHJldHVybiBqdW1wKCk7CiAgICAgICAgIH0K
QEAgLTE5NTUsMTAgKzE5NTUsMTAgQEAgcHVibGljOgogICAgICAgICAgICAgKi8KICAgICAgICAg
ICAgIG1vdmUob3AxLCBkYXRhVGVtcFJlZ2lzdGVyKTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVy
Lnhvckluc24oY21wVGVtcFJlZ2lzdGVyLCBkYXRhVGVtcFJlZ2lzdGVyLCBvcDIpOwotICAgICAg
ICAgICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIsIDEwKTsKKyAgICAgICAgICAg
IG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJlZ2lzdGVyLCAxMik7CiAgICAgICAgICAgICBtX2Fz
c2VtYmxlci5zdWJ1KGRlc3QsIGRhdGFUZW1wUmVnaXN0ZXIsIG9wMik7CiAgICAgICAgICAgICBt
X2Fzc2VtYmxlci54b3JJbnNuKGNtcFRlbXBSZWdpc3RlciwgZGVzdCwgZGF0YVRlbXBSZWdpc3Rl
cik7Ci0gICAgICAgICAgICBtX2Fzc2VtYmxlci5iZ2V6KGNtcFRlbXBSZWdpc3RlciwgNyk7Cisg
ICAgICAgICAgICBtX2Fzc2VtYmxlci5iZ2V6KGNtcFRlbXBSZWdpc3RlciwgOSk7CiAgICAgICAg
ICAgICBtX2Fzc2VtYmxlci5ub3AoKTsKICAgICAgICAgICAgIHJldHVybiBqdW1wKCk7CiAgICAg
ICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>269926</attachid>
            <date>2016-01-26 14:37:49 -0800</date>
            <delta_ts>2016-01-26 14:39:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-153464-20160126163724.patch</filename>
            <type>text/plain</type>
            <size>2255</size>
            <attacher name="Guillaume Emont">guijemont</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk1Mzk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
M2EwYmE1M2M0YzkzNmI5MzBiOThlNjVkMzAwZjRjOWRhZTlmZjVkLi41YTc1YTBjNGE4ZDU5NTE3
ZTU2ZDI4YTlkMTc0MWYyZjFlZjI1ZjlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwyMCBAQAogMjAxNi0wMS0yNSAgR3VpbGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxp
YS5jb20+CiAKKyAgICAgICAgW21pcHNdIFlhcnJKSVQ6IGltcGxlbWVudCBnZW5lcmF0ZUVudGVy
KCkgYW5kIGdlbmVyYXRlUmV0dXJuKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE1MzQ1NworCisgICAgICAgIFdpdGhvdXQgdGhhdCwgYW55dGhpbmcg
dGhhdCB0cmlnZ2VycyB0aGUgdXNlIG9mIFlhcnJKSVQgb24gbWlwcyB3b3VsZAorICAgICAgICBj
cmFzaC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IHlhcnIvWWFyckpJVC5jcHA6CisgICAgICAgIChKU0M6OllhcnI6OllhcnJHZW5lcmF0b3I6Omdl
bmVyYXRlRW50ZXIpOgorICAgICAgICAoSlNDOjpZYXJyOjpZYXJyR2VuZXJhdG9yOjpnZW5lcmF0
ZVJldHVybik6CisgICAgICAgIEltcGxlbWVudCBtaXBzIHZlcnNpb24uCisKKzIwMTYtMDEtMjUg
IEd1aWxsYXVtZSBFbW9udCAgPGd1aWplbW9udEBpZ2FsaWEuY29tPgorCiAgICAgICAgIE1JUFM6
IGRlZmluZSB0aGUgbGlzdCBvZiBjYWxsZWUgc2F2ZWQgcmVnaXN0ZXJzCiAgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTM0NTIKIApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyckpJVC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUveWFyci9ZYXJySklULmNwcAppbmRleCBkNjAwNzgxN2IxZTlmNzNjNmYxZmMyZjJlM2Jj
YjUxMWVlNGQ2YTQyLi5mOGI5YTg3MTEzZGYzOGUwNTQwOWY4NTM1YTMxMGNiZTY3N2I5NGRlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJySklULmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJySklULmNwcApAQCAtMjU4MCw3ICsyNTgwLDEw
IEBAIGNsYXNzIFlhcnJHZW5lcmF0b3IgOiBwcml2YXRlIE1hY3JvQXNzZW1ibGVyIHsKICAgICAg
ICAgcHVzaChTSDRSZWdpc3RlcnM6OnIxMSk7CiAgICAgICAgIHB1c2goU0g0UmVnaXN0ZXJzOjpy
MTMpOwogI2VsaWYgQ1BVKE1JUFMpCi0gICAgICAgIC8vIERvIG5vdGhpbmcuCisgICAgICAgIG1f
YXNzZW1ibGVyLmFkZGl1KHN0YWNrUG9pbnRlclJlZ2lzdGVyLCBzdGFja1BvaW50ZXJSZWdpc3Rl
ciwgLTgpOworICAgICAgICBtX2Fzc2VtYmxlci5zdyhyZXR1cm5BZGRyZXNzUmVnaXN0ZXIsIHN0
YWNrUG9pbnRlclJlZ2lzdGVyLCA0KTsKKyAgICAgICAgbV9hc3NlbWJsZXIuc3coZnJhbWVQb2lu
dGVyUmVnaXN0ZXIsIHN0YWNrUG9pbnRlclJlZ2lzdGVyLCAwKTsKKyAgICAgICAgbW92ZShzdGFj
a1BvaW50ZXJSZWdpc3RlciwgZnJhbWVQb2ludGVyUmVnaXN0ZXIpOwogI2VuZGlmCiAKICAgICAg
ICAgc3RvcmU4KFRydXN0ZWRJbW0zMigxKSwgJm1fdm0tPmlzRXhlY3V0aW5nSW5SZWdFeHBKSVQp
OwpAQCAtMjYxMiw3ICsyNjE1LDEwIEBAIGNsYXNzIFlhcnJHZW5lcmF0b3IgOiBwcml2YXRlIE1h
Y3JvQXNzZW1ibGVyIHsKICAgICAgICAgcG9wKFNINFJlZ2lzdGVyczo6cjEzKTsKICAgICAgICAg
cG9wKFNINFJlZ2lzdGVyczo6cjExKTsKICNlbGlmIENQVShNSVBTKQotICAgICAgICAvLyBEbyBu
b3RoaW5nCisgICAgICAgIG1vdmUoZnJhbWVQb2ludGVyUmVnaXN0ZXIsIHN0YWNrUG9pbnRlclJl
Z2lzdGVyKTsKKyAgICAgICAgbV9hc3NlbWJsZXIubHcoZnJhbWVQb2ludGVyUmVnaXN0ZXIsIHN0
YWNrUG9pbnRlclJlZ2lzdGVyLCAwKTsKKyAgICAgICAgbV9hc3NlbWJsZXIubHcocmV0dXJuQWRk
cmVzc1JlZ2lzdGVyLCBzdGFja1BvaW50ZXJSZWdpc3RlciwgNCk7CisgICAgICAgIG1fYXNzZW1i
bGVyLmFkZGl1KHN0YWNrUG9pbnRlclJlZ2lzdGVyLCBzdGFja1BvaW50ZXJSZWdpc3RlciwgOCk7
CiAjZW5kaWYKICAgICAgICAgcmV0KCk7CiAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>269927</attachid>
            <date>2016-01-26 14:39:42 -0800</date>
            <delta_ts>2017-10-24 12:53:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-153464-20160126163916.patch</filename>
            <type>text/plain</type>
            <size>6618</size>
            <attacher name="Guillaume Emont">guijemont</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk1Mzk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
YTU1NDQ5NmExZTM5OWM0OGNmNjIwNjVlY2U2YTcyYWIxYzAwY2UxLi42NDc0NmU3MjEwZjNjYjU3
ZGU1YmRkMTU4ODc2MWIxNGFmOGY0MzU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwyOSBAQAogMjAxNi0wMS0yNSAgR3VpbGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxp
YS5jb20+CiAKKyAgICAgICAgW21pcHNdIGZpeCBvZmZzZXRzIG9mIGJyYW5jaGVzIHRoYXQgaGF2
ZSB0byBnbyBvdmVyIGEganVtcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTUzNDY0CisKKyAgICAgICAgVGhlIGp1bXAoKSBmdW5jdGlvbiBjcmVhdGVz
IDggaW5zdHJ1Y3Rpb25zLCBidXQgdGhlIG9mZnNldHMgb2YgYnJhbmNoZXMKKyAgICAgICAgbWVh
bnQgdG8gZ28gb3ZlciB0aGVtIG9ubHkgYWNjb3VudCBmb3IgNi4gSW4gbW9zdCBjYXNlcywgdGhp
cyBpcyBub3QgYW4KKyAgICAgICAgaXNzdWUgYXMgdGhlIGxhc3QgdHdvIGluc3RydWN0aW9ucyBv
ZiBqdW1wKCkgd291bGQgYmUgbm9wcywgYnV0IGluIHRoZQorICAgICAgICByYXJlciBjYXNlIHdo
ZXJlIHRoZSBqdW1wIGRlc3RpbmF0aW9uIGlzIGluIGEgZGlmZmVyZW50IDI1NiBNQiBzZWdtZW50
LAorICAgICAgICBNSVBTQXNzZW1ibGVyOjpsaW5rV2l0aE9mZnNldCgpIHdpbGwgcmV3cml0ZSB0
aGUgY29kZSBpbiBhIHdheSBpbiB3aGljaAorICAgICAgICB0aGUgbGFzdCA0IGluc3RydWN0aW9u
cyB3b3VsZCBiZSBhIDIgaW5zdHJ1Y3Rpb24gbG9hZCAobHVpL29yaSkgaW50bworICAgICAgICAk
dDksIGEgImogJHQ5IiBhbmQgdGhlbiBhIG5vcC4gVGhlIHdyb25nIG9mZnNldCB3aWxsIG1lYW4g
dGhhdCB0aGUKKyAgICAgICAgcHJldmlvdXMgYnJhbmNoZXMgbWVhbnQgdG8gZ28gb3ZlciB0aGUg
d2hvbGUganVtcCB3aWxsIGJyYW5jaCB0byB0aGUKKyAgICAgICAgImogJHQ5IiBpbnN0cnVjdGlv
biwgd2hpY2ggd291bGQganVtcCB0byB3aGF0ZXZlciBpcyBjdXJyZW50bHkgaW4gJHQ5CisgICAg
ICAgIChzaW5jZSBsdWkvb3JpIHdvdWxkIG5vdCBiZSBleGVjdXRlZCkuCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJNSVBTLmg6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyTUlQUzo6YnJhbmNoQWRk
MzIpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlck1JUFM6OmJyYW5jaE11bDMyKToKKyAg
ICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJNSVBTOjpicmFuY2hTdWIzMik6CisgICAgICAgIEZp
eCB0aGUgb2Zmc2V0cyBvZiBicmFuY2hlcyBtZWFudCB0byBnbyBvdmVyIGNvZGUgZ2VuZXJhdGVk
IGJ5IGp1bXAoKS4KKworMjAxNi0wMS0yNSAgR3VpbGxhdW1lIEVtb250ICA8Z3VpamVtb250QGln
YWxpYS5jb20+CisKICAgICAgICAgW21pcHNdIGRvbid0IHNhdmUgdG8gYSBjYWxsZWUgc2F2ZWQg
cmVnaXN0ZXIgdG9vIGVhcmx5CiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNTM0NjMKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvTWFjcm9Bc3NlbWJsZXJNSVBTLmgKaW5kZXggOWIzNzU2NGQ1MWY4YWZhNDRhYzVkMjg3
MmEzZDg5M2JiOWM2MzY3YS4uNjQ0ZGMwOGU4N2Q3MjM2NTQ4ZWIzNGJiNDlhYWNiZTllNjNiNDIy
YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2Vt
Ymxlck1JUFMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNz
ZW1ibGVyTUlQUy5oCkBAIC0xNjEwLDEwICsxNjEwLDEwIEBAIHB1YmxpYzoKICAgICAgICAgICAg
ICovCiAgICAgICAgICAgICBtb3ZlKGRlc3QsIGRhdGFUZW1wUmVnaXN0ZXIpOwogICAgICAgICAg
ICAgbV9hc3NlbWJsZXIueG9ySW5zbihjbXBUZW1wUmVnaXN0ZXIsIGRhdGFUZW1wUmVnaXN0ZXIs
IHNyYyk7Ci0gICAgICAgICAgICBtX2Fzc2VtYmxlci5ibHR6KGNtcFRlbXBSZWdpc3RlciwgMTAp
OworICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmx0eihjbXBUZW1wUmVnaXN0ZXIsIDEyKTsKICAg
ICAgICAgICAgIG1fYXNzZW1ibGVyLmFkZHUoZGVzdCwgZGF0YVRlbXBSZWdpc3Rlciwgc3JjKTsK
ICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhvckluc24oY21wVGVtcFJlZ2lzdGVyLCBkZXN0LCBk
YXRhVGVtcFJlZ2lzdGVyKTsKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJl
Z2lzdGVyLCA3KTsKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJlZ2lzdGVy
LCA5KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLm5vcCgpOwogICAgICAgICAgICAgcmV0dXJu
IGp1bXAoKTsKICAgICAgICAgfQpAQCAtMTY2MywxMCArMTY2MywxMCBAQCBwdWJsaWM6CiAgICAg
ICAgICAgICAqLwogICAgICAgICAgICAgbW92ZShvcDEsIGRhdGFUZW1wUmVnaXN0ZXIpOwogICAg
ICAgICAgICAgbV9hc3NlbWJsZXIueG9ySW5zbihjbXBUZW1wUmVnaXN0ZXIsIGRhdGFUZW1wUmVn
aXN0ZXIsIG9wMik7Ci0gICAgICAgICAgICBtX2Fzc2VtYmxlci5ibHR6KGNtcFRlbXBSZWdpc3Rl
ciwgMTApOworICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmx0eihjbXBUZW1wUmVnaXN0ZXIsIDEy
KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLmFkZHUoZGVzdCwgZGF0YVRlbXBSZWdpc3Rlciwg
b3AyKTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhvckluc24oY21wVGVtcFJlZ2lzdGVyLCBk
ZXN0LCBkYXRhVGVtcFJlZ2lzdGVyKTsKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXooY21w
VGVtcFJlZ2lzdGVyLCA3KTsKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJl
Z2lzdGVyLCA5KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLm5vcCgpOwogICAgICAgICAgICAg
cmV0dXJuIGp1bXAoKTsKICAgICAgICAgfQpAQCAtMTczNywyMSArMTczNywyMSBAQCBwdWJsaWM6
CiAgICAgICAgICAgICBpZiAoaW1tLm1fdmFsdWUgPj0gLTMyNzY4ICYmIGltbS5tX3ZhbHVlICA8
PSAzMjc2NyAmJiAhbV9maXhlZFdpZHRoKSB7CiAgICAgICAgICAgICAgICAgbG9hZDMyKGRlc3Qu
bV9wdHIsIGRhdGFUZW1wUmVnaXN0ZXIpOwogICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhv
cmkoY21wVGVtcFJlZ2lzdGVyLCBkYXRhVGVtcFJlZ2lzdGVyLCBpbW0ubV92YWx1ZSk7Ci0gICAg
ICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmx0eihjbXBUZW1wUmVnaXN0ZXIsIDEwKTsKKyAgICAg
ICAgICAgICAgICBtX2Fzc2VtYmxlci5ibHR6KGNtcFRlbXBSZWdpc3RlciwgMTQpOwogICAgICAg
ICAgICAgICAgIG1fYXNzZW1ibGVyLmFkZGl1KGRhdGFUZW1wUmVnaXN0ZXIsIGRhdGFUZW1wUmVn
aXN0ZXIsIGltbS5tX3ZhbHVlKTsKICAgICAgICAgICAgICAgICBzdG9yZTMyKGRhdGFUZW1wUmVn
aXN0ZXIsIGRlc3QubV9wdHIpOwogICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhvcmkoY21w
VGVtcFJlZ2lzdGVyLCBkYXRhVGVtcFJlZ2lzdGVyLCBpbW0ubV92YWx1ZSk7Ci0gICAgICAgICAg
ICAgICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIsIDcpOworICAgICAgICAgICAg
ICAgIG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJlZ2lzdGVyLCA5KTsKICAgICAgICAgICAgICAg
ICBtX2Fzc2VtYmxlci5ub3AoKTsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAg
ICAgbG9hZDMyKGRlc3QubV9wdHIsIGRhdGFUZW1wUmVnaXN0ZXIpOwogICAgICAgICAgICAgICAg
IG1vdmUoaW1tLCBpbW1UZW1wUmVnaXN0ZXIpOwogICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVy
Lnhvckluc24oY21wVGVtcFJlZ2lzdGVyLCBkYXRhVGVtcFJlZ2lzdGVyLCBpbW1UZW1wUmVnaXN0
ZXIpOwotICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJsdHooY21wVGVtcFJlZ2lzdGVyLCAx
MCk7CisgICAgICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmx0eihjbXBUZW1wUmVnaXN0ZXIsIDE0
KTsKICAgICAgICAgICAgICAgICBtX2Fzc2VtYmxlci5hZGRpdShkYXRhVGVtcFJlZ2lzdGVyLCBk
YXRhVGVtcFJlZ2lzdGVyLCBpbW1UZW1wUmVnaXN0ZXIpOwogICAgICAgICAgICAgICAgIHN0b3Jl
MzIoZGF0YVRlbXBSZWdpc3RlciwgZGVzdC5tX3B0cik7CiAgICAgICAgICAgICAgICAgbV9hc3Nl
bWJsZXIueG9yaShjbXBUZW1wUmVnaXN0ZXIsIGRhdGFUZW1wUmVnaXN0ZXIsIGltbVRlbXBSZWdp
c3Rlcik7Ci0gICAgICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIs
IDcpOworICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJlZ2lzdGVyLCA5
KTsKICAgICAgICAgICAgICAgICBtX2Fzc2VtYmxlci5ub3AoKTsKICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIHJldHVybiBqdW1wKCk7CkBAIC0xODAxLDcgKzE4MDEsNyBAQCBwdWJsaWM6CiAg
ICAgICAgICAgICBtX2Fzc2VtYmxlci5tZmhpKGRhdGFUZW1wUmVnaXN0ZXIpOwogICAgICAgICAg
ICAgbV9hc3NlbWJsZXIubWZsbyhkZXN0KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnNyYShh
ZGRyVGVtcFJlZ2lzdGVyLCBkZXN0LCAzMSk7Ci0gICAgICAgICAgICBtX2Fzc2VtYmxlci5iZXEo
ZGF0YVRlbXBSZWdpc3RlciwgYWRkclRlbXBSZWdpc3RlciwgNyk7CisgICAgICAgICAgICBtX2Fz
c2VtYmxlci5iZXEoZGF0YVRlbXBSZWdpc3RlciwgYWRkclRlbXBSZWdpc3RlciwgOSk7CiAgICAg
ICAgICAgICBtX2Fzc2VtYmxlci5ub3AoKTsKICAgICAgICAgICAgIHJldHVybiBqdW1wKCk7CiAg
ICAgICAgIH0KQEAgLTE4NDYsNyArMTg0Niw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fYXNz
ZW1ibGVyLm1maGkoZGF0YVRlbXBSZWdpc3Rlcik7CiAgICAgICAgICAgICBtX2Fzc2VtYmxlci5t
ZmxvKGRlc3QpOwogICAgICAgICAgICAgbV9hc3NlbWJsZXIuc3JhKGFkZHJUZW1wUmVnaXN0ZXIs
IGRlc3QsIDMxKTsKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJlcShkYXRhVGVtcFJlZ2lzdGVy
LCBhZGRyVGVtcFJlZ2lzdGVyLCA3KTsKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJlcShkYXRh
VGVtcFJlZ2lzdGVyLCBhZGRyVGVtcFJlZ2lzdGVyLCA5KTsKICAgICAgICAgICAgIG1fYXNzZW1i
bGVyLm5vcCgpOwogICAgICAgICAgICAgcmV0dXJuIGp1bXAoKTsKICAgICAgICAgfQpAQCAtMTg5
NiwxMCArMTg5NiwxMCBAQCBwdWJsaWM6CiAgICAgICAgICAgICAqLwogICAgICAgICAgICAgbW92
ZShkZXN0LCBkYXRhVGVtcFJlZ2lzdGVyKTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhvcklu
c24oY21wVGVtcFJlZ2lzdGVyLCBkYXRhVGVtcFJlZ2lzdGVyLCBzcmMpOwotICAgICAgICAgICAg
bV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIsIDEwKTsKKyAgICAgICAgICAgIG1fYXNz
ZW1ibGVyLmJnZXooY21wVGVtcFJlZ2lzdGVyLCAxMik7CiAgICAgICAgICAgICBtX2Fzc2VtYmxl
ci5zdWJ1KGRlc3QsIGRhdGFUZW1wUmVnaXN0ZXIsIHNyYyk7CiAgICAgICAgICAgICBtX2Fzc2Vt
Ymxlci54b3JJbnNuKGNtcFRlbXBSZWdpc3RlciwgZGVzdCwgZGF0YVRlbXBSZWdpc3Rlcik7Ci0g
ICAgICAgICAgICBtX2Fzc2VtYmxlci5iZ2V6KGNtcFRlbXBSZWdpc3RlciwgNyk7CisgICAgICAg
ICAgICBtX2Fzc2VtYmxlci5iZ2V6KGNtcFRlbXBSZWdpc3RlciwgOSk7CiAgICAgICAgICAgICBt
X2Fzc2VtYmxlci5ub3AoKTsKICAgICAgICAgICAgIHJldHVybiBqdW1wKCk7CiAgICAgICAgIH0K
QEAgLTE5NTUsMTAgKzE5NTUsMTAgQEAgcHVibGljOgogICAgICAgICAgICAgKi8KICAgICAgICAg
ICAgIG1vdmUob3AxLCBkYXRhVGVtcFJlZ2lzdGVyKTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVy
Lnhvckluc24oY21wVGVtcFJlZ2lzdGVyLCBkYXRhVGVtcFJlZ2lzdGVyLCBvcDIpOwotICAgICAg
ICAgICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIsIDEwKTsKKyAgICAgICAgICAg
IG1fYXNzZW1ibGVyLmJnZXooY21wVGVtcFJlZ2lzdGVyLCAxMik7CiAgICAgICAgICAgICBtX2Fz
c2VtYmxlci5zdWJ1KGRlc3QsIGRhdGFUZW1wUmVnaXN0ZXIsIG9wMik7CiAgICAgICAgICAgICBt
X2Fzc2VtYmxlci54b3JJbnNuKGNtcFRlbXBSZWdpc3RlciwgZGVzdCwgZGF0YVRlbXBSZWdpc3Rl
cik7Ci0gICAgICAgICAgICBtX2Fzc2VtYmxlci5iZ2V6KGNtcFRlbXBSZWdpc3RlciwgNyk7Cisg
ICAgICAgICAgICBtX2Fzc2VtYmxlci5iZ2V6KGNtcFRlbXBSZWdpc3RlciwgOSk7CiAgICAgICAg
ICAgICBtX2Fzc2VtYmxlci5ub3AoKTsKICAgICAgICAgICAgIHJldHVybiBqdW1wKCk7CiAgICAg
ICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>270897</attachid>
            <date>2016-02-08 17:23:23 -0800</date>
            <delta_ts>2016-02-08 17:23:23 -0800</delta_ts>
            <desc>Test to reproduce</desc>
            <filename>segment.js</filename>
            <type>application/javascript</type>
            <size>655</size>
            <attacher name="Guillaume Emont">guijemont</attacher>
            
              <data encoding="base64">Ci8qCiAqIGpzYyAtLXVzZUxMSW50PWZhbHNlIC0tdXNlSklUPXRydWUgLS11c2VERkdKSVQ9ZmFs
c2Ugc2VnbWVudC5qcyAKICovCgpmdW5jdGlvbiBnZW5lcmF0ZV9sb25nX2Z1bmMoeCkgewoKICAg
IHZhciBjb2RlID0gYAogICAgdmFyIGdlbmVyYXRlZCA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZh
ciB4ID0gMDsKICAgICAgICBmb3IgKHZhciBpPTA7IGk8MTsgaSsrKSB7CiAgICBgCgogICAgZm9y
ICh2YXIgaT0wOyBpPHg7IGkrKykgewogICAgICAgIGNvZGUgKz0gIngrKzsgeC0tO1xuIjsKICAg
IH0KCiAgICBjb2RlICs9IGAKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHg7CiAgICB9OwogICAg
Z2VuZXJhdGVkOwogICAgYAoKCiAgICBwcmludChjb2RlLmxlbmd0aCk7CiAgICByZXR1cm4gZXZh
bChjb2RlKTsKfQoKZnVuY3Rpb24gcnVuVGVzdCh4KSB7CiAgICB2YXIgZ2VuZXJhdGVkID0gZ2Vu
ZXJhdGVfbG9uZ19mdW5jKDcwMDAwICsgeCk7CiAgICBwcmludCgiZ2VuZXJhdGVkIikKICAgIGdl
bmVyYXRlZCgpOwogICAgcHJpbnQoImV4ZWN1dGVkIik7Cn0KCihmdW5jdGlvbiAgKCkgewogICAg
Zm9yICh2YXIgaT0wOyBpPDQ7IGkrKykgewogICAgICAgIHByaW50KCJydW46IiwgaSk7CiAgICAg
ICAgcnVuVGVzdChpKTsKICAgIH0KCn0pKCkKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>324703</attachid>
            <date>2017-10-24 12:53:39 -0700</date>
            <delta_ts>2017-10-24 13:36:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-153464-20171024145338.patch</filename>
            <type>text/plain</type>
            <size>6647</size>
            <attacher name="Guillaume Emont">guijemont</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIzODk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
MjI0YWQ5NDE2YTdlMmM2ZTQyMzUxMzg1NGVkMzY1NDhlZDRjZTAzLi5kYmY5MmNiNTMyODVmZTA0
ZDE3MWJjNDg0MGMwYzY0OWI0NGI5MzVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNyBAQAorMjAxNy0xMC0yNCAgR3VpbGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxp
YS5jb20+CisKKyAgICAgICAgW21pcHNdIGZpeCBvZmZzZXRzIG9mIGJyYW5jaGVzIHRoYXQgaGF2
ZSB0byBnbyBvdmVyIGEganVtcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTUzNDY0CisKKyAgICAgICAgVGhlIGp1bXAoKSBmdW5jdGlvbiBjcmVhdGVz
IDggaW5zdHJ1Y3Rpb25zLCBidXQgdGhlIG9mZnNldHMgb2YgYnJhbmNoZXMKKyAgICAgICAgbWVh
bnQgdG8gZ28gb3ZlciB0aGVtIG9ubHkgYWNjb3VudCBmb3IgNi4gSW4gbW9zdCBjYXNlcywgdGhp
cyBpcyBub3QgYW4KKyAgICAgICAgaXNzdWUgYXMgdGhlIGxhc3QgdHdvIGluc3RydWN0aW9ucyBv
ZiBqdW1wKCkgd291bGQgYmUgbm9wcywgYnV0IGluIHRoZQorICAgICAgICByYXJlciBjYXNlIHdo
ZXJlIHRoZSBqdW1wIGRlc3RpbmF0aW9uIGlzIGluIGEgZGlmZmVyZW50IDI1NiBNQiBzZWdtZW50
LAorICAgICAgICBNSVBTQXNzZW1ibGVyOjpsaW5rV2l0aE9mZnNldCgpIHdpbGwgcmV3cml0ZSB0
aGUgY29kZSBpbiBhIHdheSBpbiB3aGljaAorICAgICAgICB0aGUgbGFzdCA0IGluc3RydWN0aW9u
cyB3b3VsZCBiZSBhIDIgaW5zdHJ1Y3Rpb24gbG9hZCAobHVpL29yaSkgaW50bworICAgICAgICAk
dDksIGEgImogJHQ5IiBhbmQgdGhlbiBhIG5vcC4gVGhlIHdyb25nIG9mZnNldCB3aWxsIG1lYW4g
dGhhdCB0aGUKKyAgICAgICAgcHJldmlvdXMgYnJhbmNoZXMgbWVhbnQgdG8gZ28gb3ZlciB0aGUg
d2hvbGUganVtcCB3aWxsIGJyYW5jaCB0byB0aGUKKyAgICAgICAgImogJHQ5IiBpbnN0cnVjdGlv
biwgd2hpY2ggd291bGQganVtcCB0byB3aGF0ZXZlciBpcyBjdXJyZW50bHkgaW4gJHQ5CisgICAg
ICAgIChzaW5jZSBsdWkvb3JpIHdvdWxkIG5vdCBiZSBleGVjdXRlZCkuCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTWljaGFlbCBDYXRhbnphcm8uCisKKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9B
c3NlbWJsZXJNSVBTLmg6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyTUlQUzo6YnJhbmNo
QWRkMzIpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlck1JUFM6OmJyYW5jaE11bDMyKToK
KyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJNSVBTOjpicmFuY2hTdWIzMik6CisgICAgICAg
IEZpeCB0aGUgb2Zmc2V0cyBvZiBicmFuY2hlcyBtZWFudCB0byBnbyBvdmVyIGNvZGUgZ2VuZXJh
dGVkIGJ5IGp1bXAoKS4KKwogMjAxNy0xMC0xNSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVh
QGdtYWlsLmNvbT4KIAogICAgICAgICBbSlNDXSBtb2R1bGVzIGNhbiBiZSB2aXNpdGVkIG1vcmUg
dGhhbiBvbmNlIHdoZW4gcmVzb2x2aW5nIGJpbmRpbmdzIHRocm91Z2ggInN0YXIiIGV4cG9ydHMg
YXMgbG9uZyBhcyB0aGUgZXhwb3J0TmFtZSBpcyBkaWZmZXJlbnQgZWFjaCB0aW1lCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyTUlQUy5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMuaApp
bmRleCA4NDYzOTc2NDg0NTFkMzBkODU4OGFlOGU1ZGZkMWJhMWRlYzczYmVjLi4yM2QyN2VkODc5
YjU1NjAzYzQ0MGQ3NTUxNmI3NTAwOGQ5YWI0NTZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyTUlQUy5oCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJNSVBTLmgKQEAgLTE4MDksMTAgKzE4
MDksMTAgQEAgcHVibGljOgogICAgICAgICAgICAgKi8KICAgICAgICAgICAgIG1vdmUoZGVzdCwg
ZGF0YVRlbXBSZWdpc3Rlcik7CiAgICAgICAgICAgICBtX2Fzc2VtYmxlci54b3JJbnNuKGNtcFRl
bXBSZWdpc3RlciwgZGF0YVRlbXBSZWdpc3Rlciwgc3JjKTsKLSAgICAgICAgICAgIG1fYXNzZW1i
bGVyLmJsdHooY21wVGVtcFJlZ2lzdGVyLCAxMCk7CisgICAgICAgICAgICBtX2Fzc2VtYmxlci5i
bHR6KGNtcFRlbXBSZWdpc3RlciwgMTIpOwogICAgICAgICAgICAgbV9hc3NlbWJsZXIuYWRkdShk
ZXN0LCBkYXRhVGVtcFJlZ2lzdGVyLCBzcmMpOwogICAgICAgICAgICAgbV9hc3NlbWJsZXIueG9y
SW5zbihjbXBUZW1wUmVnaXN0ZXIsIGRlc3QsIGRhdGFUZW1wUmVnaXN0ZXIpOwotICAgICAgICAg
ICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIsIDcpOworICAgICAgICAgICAgbV9h
c3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIsIDkpOwogICAgICAgICAgICAgbV9hc3NlbWJs
ZXIubm9wKCk7CiAgICAgICAgICAgICByZXR1cm4ganVtcCgpOwogICAgICAgICB9CkBAIC0xODYy
LDEwICsxODYyLDEwIEBAIHB1YmxpYzoKICAgICAgICAgICAgICovCiAgICAgICAgICAgICBtb3Zl
KG9wMSwgZGF0YVRlbXBSZWdpc3Rlcik7CiAgICAgICAgICAgICBtX2Fzc2VtYmxlci54b3JJbnNu
KGNtcFRlbXBSZWdpc3RlciwgZGF0YVRlbXBSZWdpc3Rlciwgb3AyKTsKLSAgICAgICAgICAgIG1f
YXNzZW1ibGVyLmJsdHooY21wVGVtcFJlZ2lzdGVyLCAxMCk7CisgICAgICAgICAgICBtX2Fzc2Vt
Ymxlci5ibHR6KGNtcFRlbXBSZWdpc3RlciwgMTIpOwogICAgICAgICAgICAgbV9hc3NlbWJsZXIu
YWRkdShkZXN0LCBkYXRhVGVtcFJlZ2lzdGVyLCBvcDIpOwogICAgICAgICAgICAgbV9hc3NlbWJs
ZXIueG9ySW5zbihjbXBUZW1wUmVnaXN0ZXIsIGRlc3QsIGRhdGFUZW1wUmVnaXN0ZXIpOwotICAg
ICAgICAgICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIsIDcpOworICAgICAgICAg
ICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIsIDkpOwogICAgICAgICAgICAgbV9h
c3NlbWJsZXIubm9wKCk7CiAgICAgICAgICAgICByZXR1cm4ganVtcCgpOwogICAgICAgICB9CkBA
IC0xOTM2LDIxICsxOTM2LDIxIEBAIHB1YmxpYzoKICAgICAgICAgICAgIGlmIChpbW0ubV92YWx1
ZSA+PSAtMzI3NjggJiYgaW1tLm1fdmFsdWUgIDw9IDMyNzY3ICYmICFtX2ZpeGVkV2lkdGgpIHsK
ICAgICAgICAgICAgICAgICBsb2FkMzIoZGVzdC5tX3B0ciwgZGF0YVRlbXBSZWdpc3Rlcik7CiAg
ICAgICAgICAgICAgICAgbV9hc3NlbWJsZXIueG9yaShjbXBUZW1wUmVnaXN0ZXIsIGRhdGFUZW1w
UmVnaXN0ZXIsIGltbS5tX3ZhbHVlKTsKLSAgICAgICAgICAgICAgICBtX2Fzc2VtYmxlci5ibHR6
KGNtcFRlbXBSZWdpc3RlciwgMTApOworICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJsdHoo
Y21wVGVtcFJlZ2lzdGVyLCAxNCk7CiAgICAgICAgICAgICAgICAgbV9hc3NlbWJsZXIuYWRkaXUo
ZGF0YVRlbXBSZWdpc3RlciwgZGF0YVRlbXBSZWdpc3RlciwgaW1tLm1fdmFsdWUpOwogICAgICAg
ICAgICAgICAgIHN0b3JlMzIoZGF0YVRlbXBSZWdpc3RlciwgZGVzdC5tX3B0cik7CiAgICAgICAg
ICAgICAgICAgbV9hc3NlbWJsZXIueG9yaShjbXBUZW1wUmVnaXN0ZXIsIGRhdGFUZW1wUmVnaXN0
ZXIsIGltbS5tX3ZhbHVlKTsKLSAgICAgICAgICAgICAgICBtX2Fzc2VtYmxlci5iZ2V6KGNtcFRl
bXBSZWdpc3RlciwgNyk7CisgICAgICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1w
UmVnaXN0ZXIsIDkpOwogICAgICAgICAgICAgICAgIG1fYXNzZW1ibGVyLm5vcCgpOwogICAgICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBsb2FkMzIoZGVzdC5tX3B0ciwgZGF0YVRl
bXBSZWdpc3Rlcik7CiAgICAgICAgICAgICAgICAgbW92ZShpbW0sIGltbVRlbXBSZWdpc3Rlcik7
CiAgICAgICAgICAgICAgICAgbV9hc3NlbWJsZXIueG9ySW5zbihjbXBUZW1wUmVnaXN0ZXIsIGRh
dGFUZW1wUmVnaXN0ZXIsIGltbVRlbXBSZWdpc3Rlcik7Ci0gICAgICAgICAgICAgICAgbV9hc3Nl
bWJsZXIuYmx0eihjbXBUZW1wUmVnaXN0ZXIsIDEwKTsKKyAgICAgICAgICAgICAgICBtX2Fzc2Vt
Ymxlci5ibHR6KGNtcFRlbXBSZWdpc3RlciwgMTQpOwogICAgICAgICAgICAgICAgIG1fYXNzZW1i
bGVyLmFkZGl1KGRhdGFUZW1wUmVnaXN0ZXIsIGRhdGFUZW1wUmVnaXN0ZXIsIGltbVRlbXBSZWdp
c3Rlcik7CiAgICAgICAgICAgICAgICAgc3RvcmUzMihkYXRhVGVtcFJlZ2lzdGVyLCBkZXN0Lm1f
cHRyKTsKICAgICAgICAgICAgICAgICBtX2Fzc2VtYmxlci54b3JpKGNtcFRlbXBSZWdpc3Rlciwg
ZGF0YVRlbXBSZWdpc3RlciwgaW1tVGVtcFJlZ2lzdGVyKTsKLSAgICAgICAgICAgICAgICBtX2Fz
c2VtYmxlci5iZ2V6KGNtcFRlbXBSZWdpc3RlciwgNyk7CisgICAgICAgICAgICAgICAgbV9hc3Nl
bWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIsIDkpOwogICAgICAgICAgICAgICAgIG1fYXNzZW1i
bGVyLm5vcCgpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgcmV0dXJuIGp1bXAoKTsKQEAg
LTIwMDAsNyArMjAwMCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLm1maGko
ZGF0YVRlbXBSZWdpc3Rlcik7CiAgICAgICAgICAgICBtX2Fzc2VtYmxlci5tZmxvKGRlc3QpOwog
ICAgICAgICAgICAgbV9hc3NlbWJsZXIuc3JhKGFkZHJUZW1wUmVnaXN0ZXIsIGRlc3QsIDMxKTsK
LSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJlcShkYXRhVGVtcFJlZ2lzdGVyLCBhZGRyVGVtcFJl
Z2lzdGVyLCA3KTsKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJlcShkYXRhVGVtcFJlZ2lzdGVy
LCBhZGRyVGVtcFJlZ2lzdGVyLCA5KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLm5vcCgpOwog
ICAgICAgICAgICAgcmV0dXJuIGp1bXAoKTsKICAgICAgICAgfQpAQCAtMjA0NSw3ICsyMDQ1LDcg
QEAgcHVibGljOgogICAgICAgICAgICAgbV9hc3NlbWJsZXIubWZoaShkYXRhVGVtcFJlZ2lzdGVy
KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLm1mbG8oZGVzdCk7CiAgICAgICAgICAgICBtX2Fz
c2VtYmxlci5zcmEoYWRkclRlbXBSZWdpc3RlciwgZGVzdCwgMzEpOwotICAgICAgICAgICAgbV9h
c3NlbWJsZXIuYmVxKGRhdGFUZW1wUmVnaXN0ZXIsIGFkZHJUZW1wUmVnaXN0ZXIsIDcpOworICAg
ICAgICAgICAgbV9hc3NlbWJsZXIuYmVxKGRhdGFUZW1wUmVnaXN0ZXIsIGFkZHJUZW1wUmVnaXN0
ZXIsIDkpOwogICAgICAgICAgICAgbV9hc3NlbWJsZXIubm9wKCk7CiAgICAgICAgICAgICByZXR1
cm4ganVtcCgpOwogICAgICAgICB9CkBAIC0yMDk1LDEwICsyMDk1LDEwIEBAIHB1YmxpYzoKICAg
ICAgICAgICAgICovCiAgICAgICAgICAgICBtb3ZlKGRlc3QsIGRhdGFUZW1wUmVnaXN0ZXIpOwog
ICAgICAgICAgICAgbV9hc3NlbWJsZXIueG9ySW5zbihjbXBUZW1wUmVnaXN0ZXIsIGRhdGFUZW1w
UmVnaXN0ZXIsIHNyYyk7Ci0gICAgICAgICAgICBtX2Fzc2VtYmxlci5iZ2V6KGNtcFRlbXBSZWdp
c3RlciwgMTApOworICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVnaXN0ZXIs
IDEyKTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnN1YnUoZGVzdCwgZGF0YVRlbXBSZWdpc3Rl
ciwgc3JjKTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhvckluc24oY21wVGVtcFJlZ2lzdGVy
LCBkZXN0LCBkYXRhVGVtcFJlZ2lzdGVyKTsKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXoo
Y21wVGVtcFJlZ2lzdGVyLCA3KTsKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXooY21wVGVt
cFJlZ2lzdGVyLCA5KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLm5vcCgpOwogICAgICAgICAg
ICAgcmV0dXJuIGp1bXAoKTsKICAgICAgICAgfQpAQCAtMjE1NCwxMCArMjE1NCwxMCBAQCBwdWJs
aWM6CiAgICAgICAgICAgICAqLwogICAgICAgICAgICAgbW92ZShvcDEsIGRhdGFUZW1wUmVnaXN0
ZXIpOwogICAgICAgICAgICAgbV9hc3NlbWJsZXIueG9ySW5zbihjbXBUZW1wUmVnaXN0ZXIsIGRh
dGFUZW1wUmVnaXN0ZXIsIG9wMik7Ci0gICAgICAgICAgICBtX2Fzc2VtYmxlci5iZ2V6KGNtcFRl
bXBSZWdpc3RlciwgMTApOworICAgICAgICAgICAgbV9hc3NlbWJsZXIuYmdleihjbXBUZW1wUmVn
aXN0ZXIsIDEyKTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnN1YnUoZGVzdCwgZGF0YVRlbXBS
ZWdpc3Rlciwgb3AyKTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLnhvckluc24oY21wVGVtcFJl
Z2lzdGVyLCBkZXN0LCBkYXRhVGVtcFJlZ2lzdGVyKTsKLSAgICAgICAgICAgIG1fYXNzZW1ibGVy
LmJnZXooY21wVGVtcFJlZ2lzdGVyLCA3KTsKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmJnZXoo
Y21wVGVtcFJlZ2lzdGVyLCA5KTsKICAgICAgICAgICAgIG1fYXNzZW1ibGVyLm5vcCgpOwogICAg
ICAgICAgICAgcmV0dXJuIGp1bXAoKTsKICAgICAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>