<?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>55368</bug_id>
          
          <creation_ts>2011-02-28 05:49:07 -0800</creation_ts>
          <short_desc>Fix alignment warnings in ARMv7</short_desc>
          <delta_ts>2012-02-03 12:59:20 -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>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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="Xan Lopez">xan.lopez</reporter>
          <assigned_to name="Rob Buis">rwlbuis</assigned_to>
          <cc>barraclough</cc>
    
    <cc>chutten</cc>
    
    <cc>efidler</cc>
    
    <cc>loki</cc>
    
    <cc>manyoso</cc>
    
    <cc>oliver</cc>
    
    <cc>ossy</cc>
    
    <cc>rwlbuis</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>staikos</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zherczeg</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>359004</commentid>
    <comment_count>0</comment_count>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2011-02-28 05:49:07 -0800</bug_when>
    <thetext>ToT in ARMv7 has a lot of alignment related warnings, which makes really difficult any other kind of warning in the build. Attached patch uses reinterpret_cast_ptr macro in wtf/StdLibExtras to get rid of most of them, since in ARM this adjusts the alignment properly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>359015</commentid>
    <comment_count>1</comment_count>
      <attachid>84048</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2011-02-28 06:11:05 -0800</bug_when>
    <thetext>Created attachment 84048
alignment.diff</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>359831</commentid>
    <comment_count>2</comment_count>
      <attachid>84048</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2011-03-01 05:39:06 -0800</bug_when>
    <thetext>Comment on attachment 84048
alignment.diff

OK, this fails in a few places in debug builds because there&apos;s an ASSERT checking the correctness of the cast that uses __alignof__, which needs the size of the class, which is not available in many places (since we forward declare instead of including the header). I&apos;ll see if I can either fix it for good or at least attach a patch with the easy fixes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532199</commentid>
    <comment_count>3</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-01-09 07:48:04 -0800</bug_when>
    <thetext>Xan, any update? This seems useful since it may obscure more important warnings, like not returning a value in a method that should return a value.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>536322</commentid>
    <comment_count>4</comment_count>
      <attachid>122580</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-01-15 19:16:11 -0800</bug_when>
    <thetext>Created attachment 122580
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>536323</commentid>
    <comment_count>5</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-01-15 19:18:25 -0800</bug_when>
    <thetext>Adapted patch to compile against HEAD. The use of reinterpret_cast_ptr for debug builds everywhere turned out to be hard (at the very least intrusive) to fix (the __alignof__ problem), so I chose static_cast in a few places.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>536327</commentid>
    <comment_count>6</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-01-15 19:25:21 -0800</bug_when>
    <thetext>*** Bug 60690 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548954</commentid>
    <comment_count>7</comment_count>
      <attachid>122580</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-02-03 12:39:37 -0800</bug_when>
    <thetext>Comment on attachment 122580
Patch

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

&gt; Source/JavaScriptCore/heap/HandleTypes.h:38
&gt; +    static ExternalType getFromSlot(HandleSlot slot) { return (slot &amp;&amp; *slot) ? reinterpret_cast&lt;ExternalType&gt;(static_cast&lt;void*&gt;(slot-&gt;asCell())) : 0; }

What, exactly, are you getting by putting in this static_cast?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548971</commentid>
    <comment_count>8</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-02-03 12:55:26 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 122580 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=122580&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/heap/HandleTypes.h:38
&gt; &gt; +    static ExternalType getFromSlot(HandleSlot slot) { return (slot &amp;&amp; *slot) ? reinterpret_cast&lt;ExternalType&gt;(static_cast&lt;void*&gt;(slot-&gt;asCell())) : 0; }
&gt; 
&gt; What, exactly, are you getting by putting in this static_cast?

I am trying to emulate reinterpret_cast_ptr, which implicitly casts to void*, because actually using it and including StdLibExtras.h for these two files would mean including a lot more include files to fix build problems. In fact I gave up on that approach simply because there were so many files to fix.
Cheers,

Rob.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548978</commentid>
    <comment_count>9</comment_count>
      <attachid>122580</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-03 12:59:14 -0800</bug_when>
    <thetext>Comment on attachment 122580
Patch

Clearing flags on attachment: 122580

Committed r106686: &lt;http://trac.webkit.org/changeset/106686&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548979</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-03 12:59:20 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84048</attachid>
            <date>2011-02-28 06:11:05 -0800</date>
            <delta_ts>2012-01-15 19:15:11 -0800</delta_ts>
            <desc>alignment.diff</desc>
            <filename>alignment.diff</filename>
            <type>text/plain</type>
            <size>11504</size>
            <attacher name="Xan Lopez">xan.lopez</attacher>
            
              <data encoding="base64">RnJvbSAzYjA5NjEwMjcxNmM5MjM4ODhiOGEwNmViYzE2NzY2YzJjZmM4NjBmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBYYW4gTG9wZXogPHhsb3BlekBpZ2FsaWEuY29tPgpEYXRlOiBN
b24sIDI4IEZlYiAyMDExIDE0OjUzOjE0ICswMTAwClN1YmplY3Q6IFtQQVRDSF0gMjAxMS0wMi0y
OCAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgoKICAgICAgICBGaXggYWxpZ25tZW50IHdhcm5pbmdzIGluIEFSTXY3CiAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU1MzY4CgogICAg
ICAgIFVzZSByZWludGVycHJldF9jYXN0X3B0ciB0byBnZXQgcmlkIG9mIGFsaWdubWVudCBpc3N1
ZXMgaW4gQVJNdjcKICAgICAgICB0aHJvdWdoIEpTQy4KCiAgICAgICAgKiBhc3NlbWJsZXIvQVJN
djdBc3NlbWJsZXIuaDoKICAgICAgICAoSlNDOjpBUk12N0Fzc2VtYmxlcjo6Y29tcHV0ZUp1bXBU
eXBlKTogdXNlIHJlaW50ZXJwcmV0X2Nhc3RfcHRyCiAgICAgICAgZm9yIHByb3Blcmx5IGFsaWdu
ZWQgY2FzdC4KICAgICAgICAoSlNDOjpBUk12N0Fzc2VtYmxlcjo6bGluayk6IGRpdHRvLgogICAg
ICAgICogY29sbGVjdG9yL2hhbmRsZXMvSGFuZGxlLmg6CiAgICAgICAgKEpTQzo6SGFuZGxlVHlw
ZXM6OmdldEZyb21TbG90KTogZGl0dG8uCiAgICAgICAgKEpTQzo6SGFuZGxlVHlwZXM6OnRvSlNW
YWx1ZSk6IGRpdHRvLgogICAgICAgICogcnVudGltZS9KU0NlbGwuaDoKICAgICAgICAoSlNDOjpK
U0NlbGw6Ok1hcmtlZEJsb2NrOjphbGxvY2F0ZSk6IGRpdHRvLgogICAgICAgICogcnVudGltZS9N
YXJrZWRCbG9jay5jcHA6CiAgICAgICAgKEpTQzo6TWFya2VkQmxvY2s6OmRlc3Ryb3kpOiBkaXR0
by4KICAgICAgICAoSlNDOjpNYXJrZWRCbG9jazo6c3dlZXApOiBkaXR0by4KICAgICAgICAqIHJ1
bnRpbWUvTWFya2VkQmxvY2suaDoKICAgICAgICAoSlNDOjpNYXJrZWRCbG9jazo6Zm9yRWFjaCk6
IGRpdHRvLgogICAgICAgICogcnVudGltZS9Xcml0ZUJhcnJpZXIuaDoKICAgICAgICAoSlNDOjpE
ZXByZWNhdGVkUHRyOjpnZXQpOiBkaXR0by4KICAgICAgICAoSlNDOjpXcml0ZUJhcnJpZXJCYXNl
OjpnZXQpOiBkaXR0by4KLS0tCiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICAgfCAgIDI4ICsrKysrKysrKysrKysrKysrKysrKysKIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9hc3NlbWJsZXIvQVJNdjdBc3NlbWJsZXIuaCB8ICAgMjQgKysrKysrKysrLS0tLS0t
LS0tCiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvY29sbGVjdG9yL2hhbmRsZXMvSGFuZGxlLmggfCAg
ICA0ICstCiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaCAgICAgICAgICAg
fCAgICAyICstCiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXJrZWRCbG9jay5jcHAg
ICAgfCAgICA0ICstCiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXJrZWRCbG9jay5o
ICAgICAgfCAgICAyICstCiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Xcml0ZUJhcnJp
ZXIuaCAgICAgfCAgICA1ICsrLQogNyBmaWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCAy
MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBmYjBlNzJlLi5hZDAy
YTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMSBAQAorMjAxMS0wMi0y
OCAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRml4IGFsaWdubWVudCB3YXJuaW5ncyBpbiBBUk12
NworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTUzNjgK
KworICAgICAgICBVc2UgcmVpbnRlcnByZXRfY2FzdF9wdHIgdG8gZ2V0IHJpZCBvZiBhbGlnbm1l
bnQgaXNzdWVzIGluIEFSTXY3CisgICAgICAgIHRocm91Z2ggSlNDLgorCisgICAgICAgICogYXNz
ZW1ibGVyL0FSTXY3QXNzZW1ibGVyLmg6CisgICAgICAgIChKU0M6OkFSTXY3QXNzZW1ibGVyOjpj
b21wdXRlSnVtcFR5cGUpOiB1c2UgcmVpbnRlcnByZXRfY2FzdF9wdHIKKyAgICAgICAgZm9yIHBy
b3Blcmx5IGFsaWduZWQgY2FzdC4KKyAgICAgICAgKEpTQzo6QVJNdjdBc3NlbWJsZXI6Omxpbmsp
OiBkaXR0by4KKyAgICAgICAgKiBjb2xsZWN0b3IvaGFuZGxlcy9IYW5kbGUuaDoKKyAgICAgICAg
KEpTQzo6SGFuZGxlVHlwZXM6OmdldEZyb21TbG90KTogZGl0dG8uCisgICAgICAgIChKU0M6Okhh
bmRsZVR5cGVzOjp0b0pTVmFsdWUpOiBkaXR0by4KKyAgICAgICAgKiBydW50aW1lL0pTQ2VsbC5o
OgorICAgICAgICAoSlNDOjpKU0NlbGw6Ok1hcmtlZEJsb2NrOjphbGxvY2F0ZSk6IGRpdHRvLgor
ICAgICAgICAqIHJ1bnRpbWUvTWFya2VkQmxvY2suY3BwOgorICAgICAgICAoSlNDOjpNYXJrZWRC
bG9jazo6ZGVzdHJveSk6IGRpdHRvLgorICAgICAgICAoSlNDOjpNYXJrZWRCbG9jazo6c3dlZXAp
OiBkaXR0by4KKyAgICAgICAgKiBydW50aW1lL01hcmtlZEJsb2NrLmg6CisgICAgICAgIChKU0M6
Ok1hcmtlZEJsb2NrOjpmb3JFYWNoKTogZGl0dG8uCisgICAgICAgICogcnVudGltZS9Xcml0ZUJh
cnJpZXIuaDoKKyAgICAgICAgKEpTQzo6RGVwcmVjYXRlZFB0cjo6Z2V0KTogZGl0dG8uCisgICAg
ICAgIChKU0M6OldyaXRlQmFycmllckJhc2U6OmdldCk6IGRpdHRvLgorCiAyMDExLTAyLTI0ICBY
YW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
QVJNdjdBc3NlbWJsZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvQVJNdjdB
c3NlbWJsZXIuaAppbmRleCBmMDNlNTU0Li5jOGE1NzU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYXNzZW1ibGVyL0FSTXY3QXNzZW1ibGVyLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2Fzc2VtYmxlci9BUk12N0Fzc2VtYmxlci5oCkBAIC0xNjc5LDI5ICsxNjc5LDI5
IEBAIHB1YmxpYzoKICAgICAgICAgCiAgICAgICAgIGlmIChqdW1wVHlwZSA9PSBKdW1wQ29uZGl0
aW9uKSB7CiAgICAgICAgICAgICAvLyAyLWJ5dGUgY29uZGl0aW9uYWwgVDEKLSAgICAgICAgICAg
IGNvbnN0IHVpbnQxNl90KiBqdW1wVDFMb2NhdGlvbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qg
dWludDE2X3QqPihmcm9tIC0gKHBhZGRpbmdTaXplIC0gSnVtcFNpemVzW0xpbmtKdW1wVDFdKSk7
CisgICAgICAgICAgICBjb25zdCB1aW50MTZfdCoganVtcFQxTG9jYXRpb24gPSByZWludGVycHJl
dF9jYXN0X3B0cjxjb25zdCB1aW50MTZfdCo+KGZyb20gLSAocGFkZGluZ1NpemUgLSBKdW1wU2l6
ZXNbTGlua0p1bXBUMV0pKTsKICAgICAgICAgICAgIGlmIChjYW5CZUp1bXBUMShqdW1wVDFMb2Nh
dGlvbiwgdG8pKQogICAgICAgICAgICAgICAgIHJldHVybiBMaW5rSnVtcFQxOwogICAgICAgICAg
ICAgLy8gNC1ieXRlIGNvbmRpdGlvbmFsIFQzCi0gICAgICAgICAgICBjb25zdCB1aW50MTZfdCog
anVtcFQzTG9jYXRpb24gPSByZWludGVycHJldF9jYXN0PGNvbnN0IHVpbnQxNl90Kj4oZnJvbSAt
IChwYWRkaW5nU2l6ZSAtIEp1bXBTaXplc1tMaW5rSnVtcFQzXSkpOworICAgICAgICAgICAgY29u
c3QgdWludDE2X3QqIGp1bXBUM0xvY2F0aW9uID0gcmVpbnRlcnByZXRfY2FzdF9wdHI8Y29uc3Qg
dWludDE2X3QqPihmcm9tIC0gKHBhZGRpbmdTaXplIC0gSnVtcFNpemVzW0xpbmtKdW1wVDNdKSk7
CiAgICAgICAgICAgICBpZiAoY2FuQmVKdW1wVDMoanVtcFQzTG9jYXRpb24sIHRvLCBtYXlUcmln
Z2VyRXJyYXRhKSkgewogICAgICAgICAgICAgICAgIGlmICghbWF5VHJpZ2dlckVycmF0YSkKICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIExpbmtKdW1wVDM7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICAvLyA0LWJ5dGUgY29uZGl0aW9uYWwgVDQgd2l0aCBJVAogICAgICAgICAgICAgY29u
c3QgdWludDE2X3QqIGNvbmRpdGlvbmFsSnVtcFQ0TG9jYXRpb24gPSAKLSAgICAgICAgICAgIHJl
aW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDE2X3QqPihmcm9tIC0gKHBhZGRpbmdTaXplIC0gSnVt
cFNpemVzW0xpbmtDb25kaXRpb25hbEp1bXBUNF0pKTsKKyAgICAgICAgICAgIHJlaW50ZXJwcmV0
X2Nhc3RfcHRyPGNvbnN0IHVpbnQxNl90Kj4oZnJvbSAtIChwYWRkaW5nU2l6ZSAtIEp1bXBTaXpl
c1tMaW5rQ29uZGl0aW9uYWxKdW1wVDRdKSk7CiAgICAgICAgICAgICBpZiAoY2FuQmVKdW1wVDQo
Y29uZGl0aW9uYWxKdW1wVDRMb2NhdGlvbiwgdG8sIG1heVRyaWdnZXJFcnJhdGEpKSB7CiAgICAg
ICAgICAgICAgICAgaWYgKCFtYXlUcmlnZ2VyRXJyYXRhKQogICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gTGlua0NvbmRpdGlvbmFsSnVtcFQ0OwogICAgICAgICAgICAgfQogICAgICAgICB9IGVs
c2UgewogICAgICAgICAgICAgLy8gMi1ieXRlIHVuY29uZGl0aW9uYWwgVDIKLSAgICAgICAgICAg
IGNvbnN0IHVpbnQxNl90KiBqdW1wVDJMb2NhdGlvbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qg
dWludDE2X3QqPihmcm9tIC0gKHBhZGRpbmdTaXplIC0gSnVtcFNpemVzW0xpbmtKdW1wVDJdKSk7
CisgICAgICAgICAgICBjb25zdCB1aW50MTZfdCoganVtcFQyTG9jYXRpb24gPSByZWludGVycHJl
dF9jYXN0X3B0cjxjb25zdCB1aW50MTZfdCo+KGZyb20gLSAocGFkZGluZ1NpemUgLSBKdW1wU2l6
ZXNbTGlua0p1bXBUMl0pKTsKICAgICAgICAgICAgIGlmIChjYW5CZUp1bXBUMihqdW1wVDJMb2Nh
dGlvbiwgdG8pKQogICAgICAgICAgICAgICAgIHJldHVybiBMaW5rSnVtcFQyOwogICAgICAgICAg
ICAgLy8gNC1ieXRlIHVuY29uZGl0aW9uYWwgVDQKLSAgICAgICAgICAgIGNvbnN0IHVpbnQxNl90
KiBqdW1wVDRMb2NhdGlvbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDE2X3QqPihmcm9t
IC0gKHBhZGRpbmdTaXplIC0gSnVtcFNpemVzW0xpbmtKdW1wVDRdKSk7CisgICAgICAgICAgICBj
b25zdCB1aW50MTZfdCoganVtcFQ0TG9jYXRpb24gPSByZWludGVycHJldF9jYXN0X3B0cjxjb25z
dCB1aW50MTZfdCo+KGZyb20gLSAocGFkZGluZ1NpemUgLSBKdW1wU2l6ZXNbTGlua0p1bXBUNF0p
KTsKICAgICAgICAgICAgIGlmIChjYW5CZUp1bXBUNChqdW1wVDRMb2NhdGlvbiwgdG8sIG1heVRy
aWdnZXJFcnJhdGEpKSB7CiAgICAgICAgICAgICAgICAgaWYgKCFtYXlUcmlnZ2VyRXJyYXRhKQog
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gTGlua0p1bXBUNDsKQEAgLTE3NDAsMjUgKzE3NDAs
MjUgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgc3dpdGNoIChyZWNvcmQubGlua1R5cGUoKSkg
ewogICAgICAgICBjYXNlIExpbmtKdW1wVDE6Ci0gICAgICAgICAgICBsaW5rSnVtcFQxKHJlY29y
ZC5jb25kaXRpb24oKSwgcmVpbnRlcnByZXRfY2FzdDx1aW50MTZfdCo+KGZyb20pLCB0byk7Cisg
ICAgICAgICAgICBsaW5rSnVtcFQxKHJlY29yZC5jb25kaXRpb24oKSwgcmVpbnRlcnByZXRfY2Fz
dF9wdHI8dWludDE2X3QqPihmcm9tKSwgdG8pOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
IGNhc2UgTGlua0p1bXBUMjoKLSAgICAgICAgICAgIGxpbmtKdW1wVDIocmVpbnRlcnByZXRfY2Fz
dDx1aW50MTZfdCo+KGZyb20pLCB0byk7CisgICAgICAgICAgICBsaW5rSnVtcFQyKHJlaW50ZXJw
cmV0X2Nhc3RfcHRyPHVpbnQxNl90Kj4oZnJvbSksIHRvKTsKICAgICAgICAgICAgIGJyZWFrOwog
ICAgICAgICBjYXNlIExpbmtKdW1wVDM6Ci0gICAgICAgICAgICBsaW5rSnVtcFQzKHJlY29yZC5j
b25kaXRpb24oKSwgcmVpbnRlcnByZXRfY2FzdDx1aW50MTZfdCo+KGZyb20pLCB0byk7CisgICAg
ICAgICAgICBsaW5rSnVtcFQzKHJlY29yZC5jb25kaXRpb24oKSwgcmVpbnRlcnByZXRfY2FzdF9w
dHI8dWludDE2X3QqPihmcm9tKSwgdG8pOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNh
c2UgTGlua0p1bXBUNDoKLSAgICAgICAgICAgIGxpbmtKdW1wVDQocmVpbnRlcnByZXRfY2FzdDx1
aW50MTZfdCo+KGZyb20pLCB0byk7CisgICAgICAgICAgICBsaW5rSnVtcFQ0KHJlaW50ZXJwcmV0
X2Nhc3RfcHRyPHVpbnQxNl90Kj4oZnJvbSksIHRvKTsKICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICBjYXNlIExpbmtDb25kaXRpb25hbEp1bXBUNDoKLSAgICAgICAgICAgIGxpbmtDb25kaXRp
b25hbEp1bXBUNChyZWNvcmQuY29uZGl0aW9uKCksIHJlaW50ZXJwcmV0X2Nhc3Q8dWludDE2X3Qq
Pihmcm9tKSwgdG8pOworICAgICAgICAgICAgbGlua0NvbmRpdGlvbmFsSnVtcFQ0KHJlY29yZC5j
b25kaXRpb24oKSwgcmVpbnRlcnByZXRfY2FzdF9wdHI8dWludDE2X3QqPihmcm9tKSwgdG8pOwog
ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgTGlua0NvbmRpdGlvbmFsQlg6Ci0gICAg
ICAgICAgICBsaW5rQ29uZGl0aW9uYWxCWChyZWNvcmQuY29uZGl0aW9uKCksIHJlaW50ZXJwcmV0
X2Nhc3Q8dWludDE2X3QqPihmcm9tKSwgdG8pOworICAgICAgICAgICAgbGlua0NvbmRpdGlvbmFs
QlgocmVjb3JkLmNvbmRpdGlvbigpLCByZWludGVycHJldF9jYXN0X3B0cjx1aW50MTZfdCo+KGZy
b20pLCB0byk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBMaW5rQlg6Ci0gICAg
ICAgICAgICBsaW5rQlgocmVpbnRlcnByZXRfY2FzdDx1aW50MTZfdCo+KGZyb20pLCB0byk7Cisg
ICAgICAgICAgICBsaW5rQlgocmVpbnRlcnByZXRfY2FzdF9wdHI8dWludDE2X3QqPihmcm9tKSwg
dG8pOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9j
b2xsZWN0b3IvaGFuZGxlcy9IYW5kbGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9jb2xsZWN0
b3IvaGFuZGxlcy9IYW5kbGUuaAppbmRleCA5OGM2MGVjLi5lYzk3NzBkIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvY29sbGVjdG9yL2hhbmRsZXMvSGFuZGxlLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2NvbGxlY3Rvci9oYW5kbGVzL0hhbmRsZS5oCkBAIC05MSw4ICs5
MSw4IEBAIHByaXZhdGU6CiAKIHRlbXBsYXRlIDx0eXBlbmFtZSBUPiBzdHJ1Y3QgSGFuZGxlVHlw
ZXMgewogICAgIHR5cGVkZWYgVCogRXh0ZXJuYWxUeXBlOwotICAgIHN0YXRpYyBFeHRlcm5hbFR5
cGUgZ2V0RnJvbVNsb3QoSGFuZGxlU2xvdCBzbG90KSB7IHJldHVybiAoc2xvdCAmJiAqc2xvdCkg
PyByZWludGVycHJldF9jYXN0PEV4dGVybmFsVHlwZT4oc2xvdC0+YXNDZWxsKCkpIDogMDsgfQot
ICAgIHN0YXRpYyBKU1ZhbHVlIHRvSlNWYWx1ZShUKiBjZWxsKSB7IHJldHVybiByZWludGVycHJl
dF9jYXN0PEpTQ2VsbCo+KGNlbGwpOyB9CisgICAgc3RhdGljIEV4dGVybmFsVHlwZSBnZXRGcm9t
U2xvdChIYW5kbGVTbG90IHNsb3QpIHsgcmV0dXJuIChzbG90ICYmICpzbG90KSA/IHJlaW50ZXJw
cmV0X2Nhc3RfcHRyPEV4dGVybmFsVHlwZT4oc2xvdC0+YXNDZWxsKCkpIDogMDsgfQorICAgIHN0
YXRpYyBKU1ZhbHVlIHRvSlNWYWx1ZShUKiBjZWxsKSB7IHJldHVybiByZWludGVycHJldF9jYXN0
X3B0cjxKU0NlbGwqPihjZWxsKTsgfQogICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBVPiBzdGF0aWMg
dm9pZCB2YWxpZGF0ZVVwY2FzdCgpIHsgVCogdGVtcDsgdGVtcCA9IChVKikwOyB9CiB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5oCmluZGV4IDBiNDg2MjMuLjk0YTIxZGUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5oCkBAIC00MDYsNyArNDA2LDcg
QEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgewogICAgICAgICB3aGlsZSAobV9uZXh0QXRvbSA8IG1f
ZW5kQXRvbSkgewogICAgICAgICAgICAgaWYgKCFtX21hcmtzLnRlc3RBbmRTZXQobV9uZXh0QXRv
bSkpIHsKLSAgICAgICAgICAgICAgICBKU0NlbGwqIGNlbGwgPSByZWludGVycHJldF9jYXN0PEpT
Q2VsbCo+KCZhdG9tcygpW21fbmV4dEF0b21dKTsKKyAgICAgICAgICAgICAgICBKU0NlbGwqIGNl
bGwgPSByZWludGVycHJldF9jYXN0X3B0cjxKU0NlbGwqPigmYXRvbXMoKVttX25leHRBdG9tXSk7
CiAgICAgICAgICAgICAgICAgbV9uZXh0QXRvbSArPSBtX2F0b21zUGVyQ2VsbDsKICAgICAgICAg
ICAgICAgICBjZWxsLT5+SlNDZWxsKCk7CiAgICAgICAgICAgICAgICAgcmV0dXJuIGNlbGw7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXJrZWRCbG9jay5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXJrZWRCbG9jay5jcHAKaW5kZXggYjM4
YWM0YS4uNTM0ZmQ0YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFya2VkQmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcmtl
ZEJsb2NrLmNwcApAQCAtNDEsNyArNDEsNyBAQCBNYXJrZWRCbG9jayogTWFya2VkQmxvY2s6OmNy
ZWF0ZShKU0dsb2JhbERhdGEqIGdsb2JhbERhdGEsIHNpemVfdCBjZWxsU2l6ZSkKIHZvaWQgTWFy
a2VkQmxvY2s6OmRlc3Ryb3koTWFya2VkQmxvY2sqIGJsb2NrKQogewogICAgIGZvciAoc2l6ZV90
IGkgPSBibG9jay0+Zmlyc3RBdG9tKCk7IGkgPCBibG9jay0+bV9lbmRBdG9tOyBpICs9IGJsb2Nr
LT5tX2F0b21zUGVyQ2VsbCkKLSAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxKU0NlbGwqPigmYmxv
Y2stPmF0b21zKClbaV0pLT5+SlNDZWxsKCk7CisgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3RfcHRy
PEpTQ2VsbCo+KCZibG9jay0+YXRvbXMoKVtpXSktPn5KU0NlbGwoKTsKICAgICBibG9jay0+bV9h
bGxvY2F0aW9uLmRlYWxsb2NhdGUoKTsKIH0KIApAQCAtNzAsNyArNzAsNyBAQCB2b2lkIE1hcmtl
ZEJsb2NrOjpzd2VlcCgpCiAgICAgICAgIGlmIChtX21hcmtzLmdldChpKSkKICAgICAgICAgICAg
IGNvbnRpbnVlOwogCi0gICAgICAgIEpTQ2VsbCogY2VsbCA9IHJlaW50ZXJwcmV0X2Nhc3Q8SlND
ZWxsKj4oJmF0b21zKClbaV0pOworICAgICAgICBKU0NlbGwqIGNlbGwgPSByZWludGVycHJldF9j
YXN0X3B0cjxKU0NlbGwqPigmYXRvbXMoKVtpXSk7CiAjaWYgRU5BQkxFKEpTQ19aT01CSUVTKQog
ICAgICAgICBpZiAoIWNlbGwtPmlzWm9tYmllKCkpIHsKICAgICAgICAgICAgIGNvbnN0IENsYXNz
SW5mbyogaW5mbyA9IGNlbGwtPmNsYXNzSW5mbygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTWFya2VkQmxvY2suaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL01hcmtlZEJsb2NrLmgKaW5kZXggMGIyZGZiZC4uM2IxYzVmZSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFya2VkQmxvY2suaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXJrZWRCbG9jay5oCkBAIC0yMjYsNyArMjI2LDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSBmaXJzdEF0b20oKTsgaSA8
IG1fZW5kQXRvbTsgaSArPSBtX2F0b21zUGVyQ2VsbCkgewogICAgICAgICAgICAgaWYgKCFtX21h
cmtzLmdldChpKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIGZ1bmN0
b3IocmVpbnRlcnByZXRfY2FzdDxKU0NlbGwqPigmYXRvbXMoKVtpXSkpOworICAgICAgICAgICAg
ZnVuY3RvcihyZWludGVycHJldF9jYXN0X3B0cjxKU0NlbGwqPigmYXRvbXMoKVtpXSkpOwogICAg
ICAgICB9CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Xcml0ZUJhcnJpZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dyaXRlQmFy
cmllci5oCmluZGV4IDQ0ODQwYWQuLmVjNTZlNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1dyaXRlQmFycmllci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1dyaXRlQmFycmllci5oCkBAIC0yNyw2ICsyNyw3IEBACiAjZGVmaW5lIFdyaXRl
QmFycmllcl9oCiAKICNpbmNsdWRlICJKU1ZhbHVlLmgiCisjaW5jbHVkZSA8d3RmL1N0ZExpYkV4
dHJhcy5oPgogCiBuYW1lc3BhY2UgSlNDIHsKIGNsYXNzIEpTQ2VsbDsKQEAgLTM5LDcgKzQwLDcg
QEAgdGVtcGxhdGUgPGNsYXNzIFQ+IGNsYXNzIERlcHJlY2F0ZWRQdHIgewogcHVibGljOgogICAg
IERlcHJlY2F0ZWRQdHIoKSA6IG1fY2VsbCgwKSB7IH0KICAgICBEZXByZWNhdGVkUHRyKFQqIGNl
bGwpIDogbV9jZWxsKHJlaW50ZXJwcmV0X2Nhc3Q8SlNDZWxsKj4oY2VsbCkpIHsgfQotICAgIFQq
IGdldCgpIGNvbnN0IHsgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8VCo+KG1fY2VsbCk7IH0KKyAg
ICBUKiBnZXQoKSBjb25zdCB7IHJldHVybiByZWludGVycHJldF9jYXN0X3B0cjxUKj4obV9jZWxs
KTsgfQogICAgIFQqIG9wZXJhdG9yKigpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PFQqPiht
X2NlbGwpOyB9CiAgICAgVCogb3BlcmF0b3ItPigpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0
PFQqPihtX2NlbGwpOyB9CiAgICAgCkBAIC04Niw3ICs4Nyw3IEBAIHB1YmxpYzoKICAgICBDT01Q
SUxFX0FTU0VSVCghV3JpdGVCYXJyaWVyQ2hlY2s8VD46OklzSlNWYWx1ZSwgV3JpdGVCYXJyaWVy
X0pTVmFsdWVfaXNfaW52YWxpZF9fdXNlX3Vua25vd24pOwogICAgIHZvaWQgc2V0KEpTR2xvYmFs
RGF0YSYsIGNvbnN0IEpTQ2VsbCosIFQqIHZhbHVlKSB7IHRoaXMtPm1fY2VsbCA9IHJlaW50ZXJw
cmV0X2Nhc3Q8SlNDZWxsKj4odmFsdWUpOyB9CiAgICAgCi0gICAgVCogZ2V0KCkgY29uc3QgeyBy
ZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxUKj4obV9jZWxsKTsgfQorICAgIFQqIGdldCgpIGNvbnN0
IHsgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3RfcHRyPFQqPihtX2NlbGwpOyB9CiAgICAgVCogb3Bl
cmF0b3IqKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8VCo+KG1fY2VsbCk7IH0KICAgICBU
KiBvcGVyYXRvci0+KCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8VCo+KG1fY2VsbCk7IH0K
ICAgICB2b2lkIGNsZWFyKCkgeyBtX2NlbGwgPSAwOyB9Ci0tIAoxLjcuMy40Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>122580</attachid>
            <date>2012-01-15 19:16:11 -0800</date>
            <delta_ts>2012-02-03 12:59:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-55368-20120115221559.patch</filename>
            <type>text/plain</type>
            <size>4040</size>
            <attacher name="Rob Buis">rwlbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA1MDMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
MTNkNGNiNjYzZjVkMTJiMjQ4OWZjYWNhMDZjMmJlNzc3NGVmOGMzLi5jMTZmZTY1MWE0NmIwYWEx
N2Y0ZWFlMDRiZTgwNWY0MzkxZWM3MGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMiBAQAorMjAxMi0wMS0xNSAgUm9iIEJ1aXMgIDxyYnVpc0ByaW0uY29tPgorCisgICAg
ICAgIEZpeCBhbGlnbm1lbnQgd2FybmluZ3MgaW4gQVJNdjcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU1MzY4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIHJlaW50ZXJwcmV0X2Nhc3RfcHRyIGFuZCBz
dGF0aWNfY2FzdCB0byBnZXQgcmlkIG9mIGFsaWdubWVudCBpc3N1ZXMgaW4gQVJNdjcgY29kZS4K
KworICAgICAgICAqIGhlYXAvSGFuZGxlVHlwZXMuaDoKKyAgICAgICAgKEpTQzo6SGFuZGxlVHlw
ZXM6OmdldEZyb21TbG90KToKKyAgICAgICAgKiBoZWFwL01hcmtlZEJsb2NrLmNwcDoKKyAgICAg
ICAgKEpTQzo6TWFya2VkQmxvY2s6OnNwZWNpYWxpemVkU3dlZXApOgorICAgICAgICAqIGhlYXAv
TWFya2VkQmxvY2suaDoKKyAgICAgICAgKEpTQzo6TWFya2VkQmxvY2s6OmZvckVhY2hDZWxsKToK
KyAgICAgICAgKiBydW50aW1lL1dyaXRlQmFycmllci5oOgorICAgICAgICAoSlNDOjpXcml0ZUJh
cnJpZXJCYXNlOjpnZXQpOgorICAgICAgICAoSlNDOjpXcml0ZUJhcnJpZXJCYXNlOjp1bnZhbGlk
YXRlZEdldCk6CisKIDIwMTItMDEtMTQgIERhdmlkIExldmluICA8bGV2aW5AY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIEhXbmREQyBzaG91bGQgYmUgaW4gcGxhdGZvcm0vd2luIGluc3RlYWQgb2Yg
d3RmLgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGFuZGxlVHlwZXMu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hhbmRsZVR5cGVzLmgKaW5kZXggNzgwYWI4
NWNkZDU0MjJhYTM3NjliNWFhM2E0MTI5MDdmNmU4ZTM3MC4uYmRmYmNmZGEzMTI5NDljM2RmZTU1
ZGRlOTE0NzRjYzdhOTJlODhmMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvSGFuZGxlVHlwZXMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IYW5kbGVU
eXBlcy5oCkBAIC0zNSw3ICszNSw3IEBAIHR5cGVkZWYgSlNWYWx1ZSogSGFuZGxlU2xvdDsKIAog
dGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IEhhbmRsZVR5cGVzIHsKICAgICB0eXBlZGVmIFQq
IEV4dGVybmFsVHlwZTsKLSAgICBzdGF0aWMgRXh0ZXJuYWxUeXBlIGdldEZyb21TbG90KEhhbmRs
ZVNsb3Qgc2xvdCkgeyByZXR1cm4gKHNsb3QgJiYgKnNsb3QpID8gcmVpbnRlcnByZXRfY2FzdDxF
eHRlcm5hbFR5cGU+KHNsb3QtPmFzQ2VsbCgpKSA6IDA7IH0KKyAgICBzdGF0aWMgRXh0ZXJuYWxU
eXBlIGdldEZyb21TbG90KEhhbmRsZVNsb3Qgc2xvdCkgeyByZXR1cm4gKHNsb3QgJiYgKnNsb3Qp
ID8gcmVpbnRlcnByZXRfY2FzdDxFeHRlcm5hbFR5cGU+KHN0YXRpY19jYXN0PHZvaWQqPihzbG90
LT5hc0NlbGwoKSkpIDogMDsgfQogICAgIHN0YXRpYyBKU1ZhbHVlIHRvSlNWYWx1ZShUKiBjZWxs
KSB7IHJldHVybiByZWludGVycHJldF9jYXN0PEpTQ2VsbCo+KGNlbGwpOyB9CiAgICAgdGVtcGxh
dGU8dHlwZW5hbWUgVT4gc3RhdGljIHZvaWQgdmFsaWRhdGVVcGNhc3QoKSB7IFQqIHRlbXA7IHRl
bXAgPSAoVSopMDsgfQogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFw
L01hcmtlZEJsb2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZEJsb2Nr
LmNwcAppbmRleCA3NzFjOWMwODJmNWNmZWVjZmQ1ZTMyYTllNDAzYjg4ZTQzMzRmYWMxLi5iZjgz
M2NiNTU4ZTJiZDk4MTU3OWNiMmFjMjlhOTUwYTFhMzY2OGYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2hlYXAvTWFya2VkQmxvY2suY3BwCkBAIC04OCw3ICs4OCw3IEBAIE1hcmtlZEJsb2Nr
OjpGcmVlQ2VsbCogTWFya2VkQmxvY2s6OnNwZWNpYWxpemVkU3dlZXAoKQogICAgICAgICBpZiAo
YmxvY2tTdGF0ZSA9PSBNYXJrZWQgJiYgbV9tYXJrcy5nZXQoaSkpCiAgICAgICAgICAgICBjb250
aW51ZTsKIAotICAgICAgICBKU0NlbGwqIGNlbGwgPSByZWludGVycHJldF9jYXN0PEpTQ2VsbCo+
KCZhdG9tcygpW2ldKTsKKyAgICAgICAgSlNDZWxsKiBjZWxsID0gcmVpbnRlcnByZXRfY2FzdF9w
dHI8SlNDZWxsKj4oJmF0b21zKClbaV0pOwogICAgICAgICBpZiAoYmxvY2tTdGF0ZSA9PSBaYXBw
ZWQgJiYgIWNlbGwtPmlzWmFwcGVkKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkQmxvY2suaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZEJsb2NrLmgKaW5kZXggOGM2NjVkZDViZWQ1YjI0MTNk
ZDMwMjE3ZmY3NGU0MDA3YWYxYzk3YS4uN2Y3MTUxYWY5YWVmZjcyMjIzN2QxOGNjZWE2ZDNhMmFi
ZGVlZDdkMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkQmxv
Y2suaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRCbG9jay5oCkBAIC0z
MjAsNyArMzIwLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIEZ1
bmN0b3I+IGlubGluZSB2b2lkIE1hcmtlZEJsb2NrOjpmb3JFYWNoQ2VsbChGdW5jdG9yJiBmdW5j
dG9yKQogICAgIHsKICAgICAgICAgZm9yIChzaXplX3QgaSA9IGZpcnN0QXRvbSgpOyBpIDwgbV9l
bmRBdG9tOyBpICs9IG1fYXRvbXNQZXJDZWxsKSB7Ci0gICAgICAgICAgICBKU0NlbGwqIGNlbGwg
PSByZWludGVycHJldF9jYXN0PEpTQ2VsbCo+KCZhdG9tcygpW2ldKTsKKyAgICAgICAgICAgIEpT
Q2VsbCogY2VsbCA9IHJlaW50ZXJwcmV0X2Nhc3RfcHRyPEpTQ2VsbCo+KCZhdG9tcygpW2ldKTsK
ICAgICAgICAgICAgIGlmICghaXNMaXZlKGNlbGwpKQogICAgICAgICAgICAgICAgIGNvbnRpbnVl
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Xcml0ZUJhcnJp
ZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dyaXRlQmFycmllci5oCmluZGV4
IGE3YmQ3YTEwMGRjYTYyMzAwMDIzY2I4NTY5NzU4ZmFlYTk2NTE4YWIuLjZhYzUyYjdjNzEyYWRh
YmM3M2FlYzEzNDc2YjViMGI5Yzk0ZTI1N2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1dyaXRlQmFycmllci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1dyaXRlQmFycmllci5oCkBAIC05Myw3ICs5Myw3IEBAIHB1YmxpYzoKICAgICB7CiAg
ICAgICAgIGlmIChtX2NlbGwpCiAgICAgICAgICAgICB2YWxpZGF0ZUNlbGwobV9jZWxsKTsKLSAg
ICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8VCo+KG1fY2VsbCk7CisgICAgICAgIHJldHVy
biByZWludGVycHJldF9jYXN0PFQqPihzdGF0aWNfY2FzdDx2b2lkKj4obV9jZWxsKSk7CiAgICAg
fQogCiAgICAgVCogb3BlcmF0b3IqKCkgY29uc3QKQEAgLTEyOCw3ICsxMjgsNyBAQCBwdWJsaWM6
CiAgICAgfQogCiAjaWYgRU5BQkxFKEdDX1ZBTElEQVRJT04pCi0gICAgVCogdW52YWxpZGF0ZWRH
ZXQoKSBjb25zdCB7IHJldHVybiByZWludGVycHJldF9jYXN0PFQqPihtX2NlbGwpOyB9CisgICAg
VCogdW52YWxpZGF0ZWRHZXQoKSBjb25zdCB7IHJldHVybiByZWludGVycHJldF9jYXN0PFQqPihz
dGF0aWNfY2FzdDx2b2lkKj4obV9jZWxsKSk7IH0KICNlbmRpZgogCiBwcml2YXRlOgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>