<?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>117277</bug_id>
          
          <creation_ts>2013-06-05 14:52:27 -0700</creation_ts>
          <short_desc>[CSS Shapes] Shape methods and member variables should be guarded with the CSS_SHAPES flag</short_desc>
          <delta_ts>2013-07-25 09:39:29 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>89256</blocked>
    
    <blocked>119019</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Bear Travis">betravis</reporter>
          <assigned_to name="Bear Travis">betravis</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>897568</commentid>
    <comment_count>0</comment_count>
    <who name="Bear Travis">betravis</who>
    <bug_when>2013-06-05 14:52:27 -0700</bug_when>
    <thetext>See RenderStyle and RareNonInheritedData</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901173</commentid>
    <comment_count>1</comment_count>
      <attachid>204856</attachid>
    <who name="Bear Travis">betravis</who>
    <bug_when>2013-06-17 14:45:26 -0700</bug_when>
    <thetext>Created attachment 204856
Initial Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901232</commentid>
    <comment_count>2</comment_count>
      <attachid>204856</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-06-17 18:20:48 -0700</bug_when>
    <thetext>Comment on attachment 204856
Initial Patch

Attachment 204856 did not pass win-ews (win):
Output: http://webkit-queues.appspot.com/results/884145</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901428</commentid>
    <comment_count>3</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-06-18 09:32:49 -0700</bug_when>
    <thetext>This patch seems to break the Windows build.  Do we need to touch one of the *.in files to get a full regeneration for this patch to work?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901429</commentid>
    <comment_count>4</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-06-18 09:32:49 -0700</bug_when>
    <thetext>This patch seems to break the Windows build.  Do we need to touch one of the *.in files to get a full regeneration for this patch to work?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901446</commentid>
    <comment_count>5</comment_count>
    <who name="Bear Travis">betravis</who>
    <bug_when>2013-06-18 10:38:48 -0700</bug_when>
    <thetext>The cause looks to be a bit more mundane. I&apos;ve missed a couple segments of code that must also use the compile guard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901476</commentid>
    <comment_count>6</comment_count>
      <attachid>204930</attachid>
    <who name="Bear Travis">betravis</who>
    <bug_when>2013-06-18 12:37:08 -0700</bug_when>
    <thetext>Created attachment 204930
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901594</commentid>
    <comment_count>7</comment_count>
      <attachid>204930</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-06-18 17:17:05 -0700</bug_when>
    <thetext>Comment on attachment 204930
Updated patch

Attachment 204930 did not pass win-ews (win):
Output: http://webkit-queues.appspot.com/results/934040</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901899</commentid>
    <comment_count>8</comment_count>
      <attachid>205029</attachid>
    <who name="Bear Travis">betravis</who>
    <bug_when>2013-06-19 13:01:05 -0700</bug_when>
    <thetext>Created attachment 205029
Modifying one of the .in files</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>909231</commentid>
    <comment_count>9</comment_count>
      <attachid>205029</attachid>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2013-07-17 00:45:56 -0700</bug_when>
    <thetext>Comment on attachment 205029
Modifying one of the .in files

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

&gt; Source/WebCore/rendering/RenderBlock.cpp:1471
&gt;  static inline bool shapeInfoRequiresRelayout(const RenderBlock* block)
&gt;  {

I think we could fix RenderBlock::updateRegionsAndShapesBeforeChildLayout to not call this function when CSS_SHAPES is disabled. For example, the first lines in RenderBlock::updateRegionsAndShapesBeforeChildLayout are very hard to read.

&gt; Source/WebCore/rendering/RenderBlock.cpp:4457
&gt; +#else
&gt; +        UNUSED_PARAM(offsetMode);

You already have an unused_param for offset mode in that function. Should you remove the other one?

&gt; Source/WebCore/rendering/RenderBlock.cpp:4520
&gt; +        UNUSED_PARAM(offsetMode);

ditto

&gt; Source/WebCore/rendering/style/RenderStyle.cpp:403
&gt;          if (rareNonInheritedData-&gt;m_wrapFlow != other-&gt;rareNonInheritedData-&gt;m_wrapFlow

Is there a patch for adding these lines to the exclusions ifdef?

&gt; Source/WebCore/rendering/style/RenderStyle.cpp:707
&gt; +#if ENABLE(CSS_SHAPES)

The comment before this line seems related to the code inside the ifdef. I would move the comment inside the ifdef.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911136</commentid>
    <comment_count>10</comment_count>
      <attachid>207348</attachid>
    <who name="Bear Travis">betravis</who>
    <bug_when>2013-07-23 14:04:51 -0700</bug_when>
    <thetext>Created attachment 207348
Updated

Making requested changes, filed bug 119019 to track exclusions compile guard</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911521</commentid>
    <comment_count>11</comment_count>
      <attachid>207348</attachid>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2013-07-25 00:20:08 -0700</bug_when>
    <thetext>Comment on attachment 207348
Updated

Thanks! r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911649</commentid>
    <comment_count>12</comment_count>
      <attachid>207348</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-25 09:39:27 -0700</bug_when>
    <thetext>Comment on attachment 207348
Updated

Clearing flags on attachment: 207348

Committed r153330: &lt;http://trac.webkit.org/changeset/153330&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911650</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-25 09:39:29 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>204856</attachid>
            <date>2013-06-17 14:45:26 -0700</date>
            <delta_ts>2013-06-18 12:37:06 -0700</delta_ts>
            <desc>Initial Patch</desc>
            <filename>bug-117277-20130617144340.patch</filename>
            <type>text/plain</type>
            <size>6401</size>
            <attacher name="Bear Travis">betravis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxNjEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjUyZTM5YzQ3NDg0N2E0
MWNiMWE2YTU0NmU4NzUzMjM3YTUxZGMwZi4uMDUxZTU3NDBlYTk5MzRmMjE0ZDNhNThiZTY2MmQz
Nzg3MjkyNzRmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEzLTA2LTE3ICBCZWFy
IFRyYXZpcyAgPGJldHJhdmlzQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10gU2hh
cGUgbWV0aG9kcyBhbmQgbWVtYmVyIHZhcmlhYmxlcyBzaG91bGQgYmUgZ3VhcmRlZCB3aXRoIHRo
ZSBDU1NfU0hBUEVTIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTExNzI3NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBzb21lIGNvbXBpbGUgZ3VhcmRzIHRoYXQgd2VyZSBt
aXNzaW5nIGZyb20gdGhlIFJlbmRlclN0eWxlIGFuZAorICAgICAgICBTdHlsZVJhcmVOb25Jbmhl
cml0ZWREYXRhIGZpbGVzLgorCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpjaGFuZ2VSZXF1aXJlc1JlcGFp
bnQpOiBBZGQgY29tcGlsZSBndWFyZHMgdG8gQ1NTIFNoYXBlcyBjb2RlLgorICAgICAgICAqIHJl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oOiBEaXR0by4KKyAgICAgICAgKiByZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHA6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0
YSk6IERpdHRvLgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0
ZWREYXRhLmg6IERpdHRvLgorCiAyMDEzLTA2LTE0ICBQYXRyaWNrIEdhbnN0ZXJlciAgPHBhcm9n
YUB3ZWJraXQub3JnPgogCiAgICAgICAgIEludHJvZHVjZSBVU0UoV0lOR0RJKSBmb3IgdGhlIFdp
bmRvd3MgcG9ydApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1Jl
bmRlclN0eWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZS5jcHAKaW5kZXggM2JmN2QyZDhmZjRlOTI0ZjgzNmI5NDcwOTg3OTBiZDJjZmYxYzBhYS4uZDUy
NmMzMWNiYmI3ZmEwNzI4NmNmOWQ5NTg4YWNiNzE5M2RiOGUzZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCkBAIC03MDAsOCArNzAwLDEwIEBA
IGJvb2wgUmVuZGVyU3R5bGU6OmNoYW5nZVJlcXVpcmVzUmVwYWludChjb25zdCBSZW5kZXJTdHls
ZSogb3RoZXIsIHVuc2lnbmVkJikgY29uCiAgICAgLy8gdGhlIHBhcmVudCBjb250YWluZXIuIEZv
ciBzdXJlLCBJIHdpbGwgaGF2ZSB0byByZXZpc2l0IHRoaXMgY29kZSwgYnV0IGZvciBub3cgSSd2
ZSBhZGRlZCB0aGlzIGluIG9yZGVyIAogICAgIC8vIHRvIGF2b2lkIGhhdmluZyBkaWZmKCkgPT0g
U3R5bGVEaWZmZXJlbmNlRXF1YWwgd2hlcmUgd3JhcC1zaGFwZXMgYWN0dWFsbHkgZGlmZmVyLgog
ICAgIC8vIFRyYWNraW5nIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTYyOTkxCisjaWYgRU5BQkxFKENTU19TSEFQRVMpCiAgICAgaWYgKHJhcmVOb25Jbmhlcml0
ZWREYXRhLT5tX3NoYXBlT3V0c2lkZSAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERhdGEtPm1f
c2hhcGVPdXRzaWRlKQogICAgICAgICByZXR1cm4gdHJ1ZTsKKyNlbmRpZgogCiAgICAgaWYgKHJh
cmVOb25Jbmhlcml0ZWREYXRhLT5tX2NsaXBQYXRoICE9IG90aGVyLT5yYXJlTm9uSW5oZXJpdGVk
RGF0YS0+bV9jbGlwUGF0aCkKICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC0xNzMzLDEwICsxNzM1
LDExIEBAIHZvaWQgUmVuZGVyU3R5bGU6OnNldEJvcmRlckltYWdlT3V0c2V0KExlbmd0aEJveCBv
dXRzZXQpCiAgICAgc3Vycm91bmQuYWNjZXNzKCktPmJvcmRlci5tX2ltYWdlLnNldE91dHNldChv
dXRzZXQpOwogfQogCisjaWYgRU5BQkxFKENTU19TSEFQRVMpCiBTaGFwZVZhbHVlKiBSZW5kZXJT
dHlsZTo6aW5pdGlhbFNoYXBlSW5zaWRlKCkKIHsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFJl
ZlB0cjxTaGFwZVZhbHVlPiwgc091dHNpZGVWYWx1ZSwgKFNoYXBlVmFsdWU6OmNyZWF0ZU91dHNp
ZGVWYWx1ZSgpKSk7CiAgICAgcmV0dXJuIHNPdXRzaWRlVmFsdWUuZ2V0KCk7CiB9Ci0KKyNlbmRp
ZgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvUmVuZGVyU3R5bGUuaAppbmRleCBmOWNkMjUxMzUzYmNlZTE3ZWMwZTdlNGE0Zjc2Yzc3YjRi
YzlhZjYzLi41ZDZmNGExN2UxOGNiOGFkNmMyNGJiYTE5MDBiYjk4YzUzNzJjNWNmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaApAQCAtMTQ3MCw2ICsx
NDcwLDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0S2VybmluZyhTVkdMZW5ndGggaykgeyBhY2Nl
c3NTVkdTdHlsZSgpLT5zZXRLZXJuaW5nKGspOyB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShDU1Nf
U0hBUEVTKQogICAgIHZvaWQgc2V0U2hhcGVJbnNpZGUoUGFzc1JlZlB0cjxTaGFwZVZhbHVlPiB2
YWx1ZSkKICAgICB7CiAgICAgICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9zaGFwZUlu
c2lkZSA9PSB2YWx1ZSkKQEAgLTE0OTYsNiArMTQ5NywxNSBAQCBwdWJsaWM6CiAgICAgc3RhdGlj
IFNoYXBlVmFsdWUqIGluaXRpYWxTaGFwZUluc2lkZSgpOwogICAgIHN0YXRpYyBTaGFwZVZhbHVl
KiBpbml0aWFsU2hhcGVPdXRzaWRlKCkgeyByZXR1cm4gMDsgfQogCisgICAgTGVuZ3RoIHNoYXBl
UGFkZGluZygpIGNvbnN0IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlUGFk
ZGluZzsgfQorICAgIHZvaWQgc2V0U2hhcGVQYWRkaW5nKExlbmd0aCBzaGFwZVBhZGRpbmcpIHsg
U0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVkRGF0YSwgbV9zaGFwZVBhZGRpbmcsIHNoYXBlUGFkZGlu
Zyk7IH0KKyAgICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxTaGFwZVBhZGRpbmcoKSB7IHJldHVybiBM
ZW5ndGgoMCwgRml4ZWQpOyB9CisKKyAgICBMZW5ndGggc2hhcGVNYXJnaW4oKSBjb25zdCB7IHJl
dHVybiByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9zaGFwZU1hcmdpbjsgfQorICAgIHZvaWQgc2V0
U2hhcGVNYXJnaW4oTGVuZ3RoIHNoYXBlTWFyZ2luKSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRl
ZERhdGEsIG1fc2hhcGVNYXJnaW4sIHNoYXBlTWFyZ2luKTsgfQorICAgIHN0YXRpYyBMZW5ndGgg
aW5pdGlhbFNoYXBlTWFyZ2luKCkgeyByZXR1cm4gTGVuZ3RoKDAsIEZpeGVkKTsgfQorI2VuZGlm
CisKICAgICB2b2lkIHNldENsaXBQYXRoKFBhc3NSZWZQdHI8Q2xpcFBhdGhPcGVyYXRpb24+IG9w
ZXJhdGlvbikKICAgICB7CiAgICAgICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9jbGlw
UGF0aCAhPSBvcGVyYXRpb24pCkBAIC0xNTA1LDE0ICsxNTE1LDYgQEAgcHVibGljOgogCiAgICAg
c3RhdGljIENsaXBQYXRoT3BlcmF0aW9uKiBpbml0aWFsQ2xpcFBhdGgoKSB7IHJldHVybiAwOyB9
CiAKLSAgICBMZW5ndGggc2hhcGVQYWRkaW5nKCkgY29uc3QgeyByZXR1cm4gcmFyZU5vbkluaGVy
aXRlZERhdGEtPm1fc2hhcGVQYWRkaW5nOyB9Ci0gICAgdm9pZCBzZXRTaGFwZVBhZGRpbmcoTGVu
Z3RoIHNoYXBlUGFkZGluZykgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLCBtX3NoYXBl
UGFkZGluZywgc2hhcGVQYWRkaW5nKTsgfQotICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFNoYXBl
UGFkZGluZygpIHsgcmV0dXJuIExlbmd0aCgwLCBGaXhlZCk7IH0KLQotICAgIExlbmd0aCBzaGFw
ZU1hcmdpbigpIGNvbnN0IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlTWFy
Z2luOyB9Ci0gICAgdm9pZCBzZXRTaGFwZU1hcmdpbihMZW5ndGggc2hhcGVNYXJnaW4pIHsgU0VU
X1ZBUihyYXJlTm9uSW5oZXJpdGVkRGF0YSwgbV9zaGFwZU1hcmdpbiwgc2hhcGVNYXJnaW4pOyB9
Ci0gICAgc3RhdGljIExlbmd0aCBpbml0aWFsU2hhcGVNYXJnaW4oKSB7IHJldHVybiBMZW5ndGgo
MCwgRml4ZWQpOyB9Ci0KICAgICBib29sIGhhc0NvbnRlbnQoKSBjb25zdCB7IHJldHVybiBjb250
ZW50RGF0YSgpOyB9CiAgICAgY29uc3QgQ29udGVudERhdGEqIGNvbnRlbnREYXRhKCkgY29uc3Qg
eyByZXR1cm4gcmFyZU5vbkluaGVyaXRlZERhdGEtPm1fY29udGVudC5nZXQoKTsgfQogICAgIGJv
b2wgY29udGVudERhdGFFcXVpdmFsZW50KGNvbnN0IFJlbmRlclN0eWxlKiBvdGhlclN0eWxlKSBj
b25zdCB7IHJldHVybiBjb25zdF9jYXN0PFJlbmRlclN0eWxlKj4odGhpcyktPnJhcmVOb25Jbmhl
cml0ZWREYXRhLT5jb250ZW50RGF0YUVxdWl2YWxlbnQoKmNvbnN0X2Nhc3Q8UmVuZGVyU3R5bGUq
PihvdGhlclN0eWxlKS0+cmFyZU5vbkluaGVyaXRlZERhdGEpOyB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0
YS5jcHAKaW5kZXggOTY2YmZjYjE1NzM1YTQ1Y2NiNmVlNjY1MzFkNmY2YzRkNGQ4ZTkyNC4uYjI2
Y2RlN2RkMWU0ODVhNGU1MjhmYzFmZTBhNzYzMDkxNTY1NzIwZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWRE
YXRhLmNwcApAQCAtNDYsMTAgKzQ2LDEyIEBAIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6OlN0
eWxlUmFyZU5vbkluaGVyaXRlZERhdGEoKQogI2VuZGlmCiAgICAgLCBtX21hc2soRmlsbExheWVy
KE1hc2tGaWxsTGF5ZXIpKQogICAgICwgbV9wYWdlU2l6ZSgpCisjaWYgRU5BQkxFKENTU19TSEFQ
RVMpCiAgICAgLCBtX3NoYXBlSW5zaWRlKFJlbmRlclN0eWxlOjppbml0aWFsU2hhcGVJbnNpZGUo
KSkKICAgICAsIG1fc2hhcGVPdXRzaWRlKFJlbmRlclN0eWxlOjppbml0aWFsU2hhcGVPdXRzaWRl
KCkpCiAgICAgLCBtX3NoYXBlTWFyZ2luKFJlbmRlclN0eWxlOjppbml0aWFsU2hhcGVNYXJnaW4o
KSkKICAgICAsIG1fc2hhcGVQYWRkaW5nKFJlbmRlclN0eWxlOjppbml0aWFsU2hhcGVQYWRkaW5n
KCkpCisjZW5kaWYKICAgICAsIG1fY2xpcFBhdGgoUmVuZGVyU3R5bGU6OmluaXRpYWxDbGlwUGF0
aCgpKQogICAgICwgbV92aXNpdGVkTGlua0JhY2tncm91bmRDb2xvcihSZW5kZXJTdHlsZTo6aW5p
dGlhbEJhY2tncm91bmRDb2xvcigpKQogICAgICwgbV9vcmRlcihSZW5kZXJTdHlsZTo6aW5pdGlh
bE9yZGVyKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaAppbmRleCAxMTYyNWIzZGViN2VjOWZhMjViMzU1
ZjViMGYwODNkMTdlN2ZjOTNlLi4zM2ZkZjA4N2YxM2QwMmFiZGYzYjljOGZlMTBkYTA4MTc0ODBi
YjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJl
Tm9uSW5oZXJpdGVkRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9T
dHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmgKQEAgLTEzNiwxMCArMTM2LDEyIEBAIHB1YmxpYzoK
IAogICAgIExlbmd0aFNpemUgbV9wYWdlU2l6ZTsKIAorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQog
ICAgIFJlZlB0cjxTaGFwZVZhbHVlPiBtX3NoYXBlSW5zaWRlOwogICAgIFJlZlB0cjxTaGFwZVZh
bHVlPiBtX3NoYXBlT3V0c2lkZTsKICAgICBMZW5ndGggbV9zaGFwZU1hcmdpbjsKICAgICBMZW5n
dGggbV9zaGFwZVBhZGRpbmc7CisjZW5kaWYKIAogICAgIFJlZlB0cjxDbGlwUGF0aE9wZXJhdGlv
bj4gbV9jbGlwUGF0aDsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>204930</attachid>
            <date>2013-06-18 12:37:08 -0700</date>
            <delta_ts>2013-06-19 13:01:02 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>bug-117277-20130618123520.patch</filename>
            <type>text/plain</type>
            <size>13075</size>
            <attacher name="Bear Travis">betravis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxNjg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjEwNjEzNTcxMTU2ZTU5
MjE5Mjk0ZDFjYmJhNWM4Y2M4NDIxODI1Zi4uOWNhMjkyNjNkZmIyMzMzNTZiMjk0MzYxYjRhNGI0
ZjdlODdlODEyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDEzLTA2LTE4ICBCZWFy
IFRyYXZpcyAgPGJldHJhdmlzQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10gU2hh
cGUgbWV0aG9kcyBhbmQgbWVtYmVyIHZhcmlhYmxlcyBzaG91bGQgYmUgZ3VhcmRlZCB3aXRoIHRo
ZSBDU1NfU0hBUEVTIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTExNzI3NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBzb21lIGNvbXBpbGUgZ3VhcmRzIHRoYXQgd2VyZSBt
aXNzaW5nIGZyb20gdGhlIFJlbmRlclN0eWxlIGFuZAorICAgICAgICBTdHlsZVJhcmVOb25Jbmhl
cml0ZWREYXRhIGZpbGVzLiBXaGVuIHRoZSBjb21waWxlIGd1YXJkIGNhdXNlZCBwYXJhbWV0ZXJz
IHRvCisgICAgICAgIG5vdCBiZSB1c2VkLCB0aGUgcGFyYW1ldGVycyB3ZXJlIG1hcmtlZC4KKwor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCbG9jay5jcHA6CisgICAgICAgIChXZWJDb3JlOjpz
aGFwZUluZm9SZXF1aXJlc1JlbGF5b3V0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2Nr
Ojpsb2dpY2FsTGVmdE9mZnNldEZvckxpbmUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxv
Y2s6OmxvZ2ljYWxSaWdodE9mZnNldEZvckxpbmUpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6aXNDYW5kaWRhdGVGb3JPcGFxdWVuZXNzVGVz
dCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveC5oOgorICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJPYmplY3QuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmNoYW5nZVJlcXVpcmVzTGF5b3V0
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpjaGFuZ2VSZXF1aXJlc1JlcGFpbnQp
OgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oOgorICAgICAgICAqIHJl
bmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERh
dGEpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6b3BlcmF0
b3I9PSk6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERh
dGEuaDoKKwogMjAxMy0wNi0xOCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE1MTU0OS4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCmluZGV4IDQzOTYyZjZjNzY5YjgxMTQyNTcw
NmU0N2I2NGJkZmYxMTkzZmQ2M2EuLmE1MGYxZDU2MGVhOWE2NzRlNDU4Nzc1YTVkZTlmYTgxMWEx
YWQ0MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcApAQCAtMTQ3
MCw2ICsxNDcwLDcgQEAgdm9pZCBSZW5kZXJCbG9jazo6bWFya1NoYXBlSW5zaWRlRGVzY2VuZGFu
dHNGb3JMYXlvdXQoKQogc3RhdGljIGlubGluZSBib29sIHNoYXBlSW5mb1JlcXVpcmVzUmVsYXlv
dXQoY29uc3QgUmVuZGVyQmxvY2sqIGJsb2NrKQogewogI2lmICFFTkFCTEUoQ1NTX1NIQVBFUykK
KyAgICBVTlVTRURfUEFSQU0oYmxvY2spOwogICAgIHJldHVybiBmYWxzZTsKICNlbHNlCiAgICAg
U2hhcGVJbnNpZGVJbmZvKiBpbmZvID0gYmxvY2stPnNoYXBlSW5zaWRlSW5mbygpOwpAQCAtNDQ1
Miw2ICs0NDUzLDggQEAgTGF5b3V0VW5pdCBSZW5kZXJCbG9jazo6bG9naWNhbExlZnRPZmZzZXRG
b3JMaW5lKExheW91dFVuaXQgbG9naWNhbFRvcCwgTGF5b3V0VW4KICAgICAgICAgICAgICAgICBs
ZWZ0ICs9IHNoYXBlT3V0c2lkZS0+cmlnaHRTZWdtZW50U2hhcGVCb3VuZGluZ0JveERlbHRhKCk7
CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KKyNlbHNlCisgICAgICAgIFVOVVNFRF9QQVJBTShv
ZmZzZXRNb2RlKTsKICNlbmRpZgogICAgIH0KIApAQCAtNDUxMyw2ICs0NTE2LDggQEAgTGF5b3V0
VW5pdCBSZW5kZXJCbG9jazo6bG9naWNhbFJpZ2h0T2Zmc2V0Rm9yTGluZShMYXlvdXRVbml0IGxv
Z2ljYWxUb3AsIExheW91dFUKICAgICAgICAgICAgICAgICByaWdodEZsb2F0T2Zmc2V0ICs9IHNo
YXBlT3V0c2lkZS0+bGVmdFNlZ21lbnRTaGFwZUJvdW5kaW5nQm94RGVsdGEoKTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgfQorI2Vsc2UKKyAgICAgICAgVU5VU0VEX1BBUkFNKG9mZnNldE1vZGUp
OwogI2VuZGlmCiAKICAgICAgICAgcmlnaHQgPSBtaW4ocmlnaHQsIHJpZ2h0RmxvYXRPZmZzZXQp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAppbmRleCBhNDRkOWJhMjM2ZmJm
NzExNWM1Mjk1ZTUzZjVhMjBmY2NmN2RjZjJjLi5iOTliYzhjZGFmY2U3ZjhmYTQxNDc2MmNjNTZh
ODA3NTU3NTUwOWUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
Qm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcApAQCAt
MTIwNyw4ICsxMjA3LDEyIEBAIHN0YXRpYyBib29sIGlzQ2FuZGlkYXRlRm9yT3BhcXVlbmVzc1Rl
c3QoUmVuZGVyQm94KiBjaGlsZEJveCkKICAgICBSZW5kZXJTdHlsZSogY2hpbGRTdHlsZSA9IGNo
aWxkQm94LT5zdHlsZSgpOwogICAgIGlmIChjaGlsZFN0eWxlLT5wb3NpdGlvbigpICE9IFN0YXRp
Y1Bvc2l0aW9uICYmIGNoaWxkQm94LT5jb250YWluaW5nQmxvY2soKSAhPSBjaGlsZEJveC0+cGFy
ZW50KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoY2hpbGRTdHlsZS0+dmlzaWJp
bGl0eSgpICE9IFZJU0lCTEUgfHwgY2hpbGRTdHlsZS0+c2hhcGVPdXRzaWRlKCkpCisgICAgaWYg
KGNoaWxkU3R5bGUtPnZpc2liaWxpdHkoKSAhPSBWSVNJQkxFKQogICAgICAgICByZXR1cm4gZmFs
c2U7CisjaWYgRU5BQkxFKENTU19TSEFQRVMpCisgICAgaWYgKGNoaWxkU3R5bGUtPnNoYXBlT3V0
c2lkZSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKICAgICBpZiAoIWNoaWxkQm94
LT53aWR0aCgpIHx8ICFjaGlsZEJveC0+aGVpZ2h0KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
ICAgICBpZiAoUmVuZGVyTGF5ZXIqIGNoaWxkTGF5ZXIgPSBjaGlsZEJveC0+bGF5ZXIoKSkgewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5oIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5oCmluZGV4IDU3OTExYWQzMjhmMzc5OWNkNmM5
YWMzNWY5NjEyNTE5NzNkMDBiMzAuLjY3OWE5YzRkZGI4NmUzOGVlM2E3Mzc3OWNlNzQ4OGQ3MDhj
MWM2MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmgKQEAgLTQ5LDcgKzQ5LDE1
IEBAIHB1YmxpYzoKIAogICAgIC8vIGhhc0F1dG9aSW5kZXggb25seSByZXR1cm5zIHRydWUgaWYg
dGhlIGVsZW1lbnQgaXMgcG9zaXRpb25lZCBvciBhIGZsZXgtaXRlbSBzaW5jZQogICAgIC8vIHBv
c2l0aW9uOnN0YXRpYyBlbGVtZW50cyB0aGF0IGFyZSBub3QgZmxleC1pdGVtcyBnZXQgdGhlaXIg
ei1pbmRleCBjb2VyY2VkIHRvIGF1dG8uCi0gICAgdmlydHVhbCBib29sIHJlcXVpcmVzTGF5ZXIo
KSBjb25zdCBPVkVSUklERSB7IHJldHVybiBpc1Jvb3QoKSB8fCBpc1Bvc2l0aW9uZWQoKSB8fCBj
cmVhdGVzR3JvdXAoKSB8fCBoYXNDbGlwUGF0aCgpIHx8IGhhc092ZXJmbG93Q2xpcCgpIHx8IGhh
c1RyYW5zZm9ybSgpIHx8IGhhc0hpZGRlbkJhY2tmYWNlKCkgfHwgaGFzUmVmbGVjdGlvbigpIHx8
IHN0eWxlKCktPnNwZWNpZmllc0NvbHVtbnMoKSB8fCAhc3R5bGUoKS0+aGFzQXV0b1pJbmRleCgp
IHx8IGlzRmxvYXRpbmdXaXRoU2hhcGVPdXRzaWRlKCk7IH0KKyAgICB2aXJ0dWFsIGJvb2wgcmVx
dWlyZXNMYXllcigpIGNvbnN0IE9WRVJSSURFCisgICAgeworICAgICAgICByZXR1cm4gaXNSb290
KCkgfHwgaXNQb3NpdGlvbmVkKCkgfHwgY3JlYXRlc0dyb3VwKCkgfHwgaGFzQ2xpcFBhdGgoKSB8
fCBoYXNPdmVyZmxvd0NsaXAoKQorICAgICAgICAgICAgfHwgaGFzVHJhbnNmb3JtKCkgfHwgaGFz
SGlkZGVuQmFja2ZhY2UoKSB8fCBoYXNSZWZsZWN0aW9uKCkgfHwgc3R5bGUoKS0+c3BlY2lmaWVz
Q29sdW1ucygpCisjaWYgRU5BQkxFKENTU19TSEFQRVMpCisgICAgICAgICAgICB8fCBpc0Zsb2F0
aW5nV2l0aFNoYXBlT3V0c2lkZSgpCisjZW5kaWYKKyAgICAgICAgICAgIHx8ICFzdHlsZSgpLT5o
YXNBdXRvWkluZGV4KCk7CisgICAgfQogCiAgICAgdmlydHVhbCBib29sIGJhY2tncm91bmRJc0tu
b3duVG9CZU9wYXF1ZUluUmVjdChjb25zdCBMYXlvdXRSZWN0JiBsb2NhbFJlY3QpIGNvbnN0IE9W
RVJSSURFOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2Jq
ZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKaW5kZXggODA4
MDkyMzBlZDRiNzY5MDVkNDc4Y2E4OTA5YmE5YjBiYjY4ODY4MS4uYTY2OTg5MTgzNzU3YzQ2NWM2
NjFmYTg2YTgyZjI1YmRjZTQyYzNkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlck9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJP
YmplY3QuaApAQCAtODczLDcgKzg3Myw5IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHVuc2lnbmVk
IGludCBsZW5ndGgoKSBjb25zdCB7IHJldHVybiAxOyB9CiAKICAgICBib29sIGlzRmxvYXRpbmdP
ck91dE9mRmxvd1Bvc2l0aW9uZWQoKSBjb25zdCB7IHJldHVybiAoaXNGbG9hdGluZygpIHx8IGlz
T3V0T2ZGbG93UG9zaXRpb25lZCgpKTsgfQorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogICAgIGJv
b2wgaXNGbG9hdGluZ1dpdGhTaGFwZU91dHNpZGUoKSBjb25zdCB7IHJldHVybiBpc0JveCgpICYm
IGlzRmxvYXRpbmcoKSAmJiBzdHlsZSgpLT5zaGFwZU91dHNpZGUoKTsgfQorI2VuZGlmCiAKICAg
ICBib29sIGlzVHJhbnNwYXJlbnQoKSBjb25zdCB7IHJldHVybiBzdHlsZSgpLT5vcGFjaXR5KCkg
PCAxLjBmOyB9CiAgICAgZmxvYXQgb3BhY2l0eSgpIGNvbnN0IHsgcmV0dXJuIHN0eWxlKCktPm9w
YWNpdHkoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1Jl
bmRlclN0eWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZS5jcHAKaW5kZXggMzY0ZmMxMjcxODQzZDc4MzFlZDljNjdhNTljODJhZGZmZGJhMjNlMi4uM2Mx
YWZmODZlZDE5NGFjZjc2NTAwYTQ5ODE5MmJhNTM4NWM5NDIzZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCkBAIC00MDEsMTAgKzQwMSwxNCBA
QCBib29sIFJlbmRlclN0eWxlOjpjaGFuZ2VSZXF1aXJlc0xheW91dChjb25zdCBSZW5kZXJTdHls
ZSogb3RoZXIsIHVuc2lnbmVkJiBjaGFuZwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAg
ICAgICAgaWYgKHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3dyYXBGbG93ICE9IG90aGVyLT5yYXJl
Tm9uSW5oZXJpdGVkRGF0YS0+bV93cmFwRmxvdwotICAgICAgICAgICAgfHwgcmFyZU5vbkluaGVy
aXRlZERhdGEtPm1fd3JhcFRocm91Z2ggIT0gb3RoZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5t
X3dyYXBUaHJvdWdoCi0gICAgICAgICAgICB8fCByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9zaGFw
ZU1hcmdpbiAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2hhcGVNYXJnaW4KKyAg
ICAgICAgICAgIHx8IHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3dyYXBUaHJvdWdoICE9IG90aGVy
LT5yYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV93cmFwVGhyb3VnaCkKKyAgICAgICAgICAgIHJldHVy
biB0cnVlOworCisjaWYgRU5BQkxFKENTU19TSEFQRVMpCisgICAgICAgIGlmIChyYXJlTm9uSW5o
ZXJpdGVkRGF0YS0+bV9zaGFwZU1hcmdpbiAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERhdGEt
Pm1fc2hhcGVNYXJnaW4KICAgICAgICAgICAgIHx8IHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3No
YXBlUGFkZGluZyAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2hhcGVQYWRkaW5n
KQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CisjZW5kaWYKIAogICAgICAgICBpZiAocmFyZU5v
bkluaGVyaXRlZERhdGEtPm1fZGVwcmVjYXRlZEZsZXhpYmxlQm94LmdldCgpICE9IG90aGVyLT5y
YXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9kZXByZWNhdGVkRmxleGlibGVCb3guZ2V0KCkKICAgICAg
ICAgICAgICYmICpyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9kZXByZWNhdGVkRmxleGlibGVCb3gu
Z2V0KCkgIT0gKm90aGVyLT5yYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9kZXByZWNhdGVkRmxleGli
bGVCb3guZ2V0KCkpCkBAIC03MDAsOCArNzA0LDEwIEBAIGJvb2wgUmVuZGVyU3R5bGU6OmNoYW5n
ZVJlcXVpcmVzUmVwYWludChjb25zdCBSZW5kZXJTdHlsZSogb3RoZXIsIHVuc2lnbmVkJikgY29u
CiAgICAgLy8gdGhlIHBhcmVudCBjb250YWluZXIuIEZvciBzdXJlLCBJIHdpbGwgaGF2ZSB0byBy
ZXZpc2l0IHRoaXMgY29kZSwgYnV0IGZvciBub3cgSSd2ZSBhZGRlZCB0aGlzIGluIG9yZGVyIAog
ICAgIC8vIHRvIGF2b2lkIGhhdmluZyBkaWZmKCkgPT0gU3R5bGVEaWZmZXJlbmNlRXF1YWwgd2hl
cmUgd3JhcC1zaGFwZXMgYWN0dWFsbHkgZGlmZmVyLgogICAgIC8vIFRyYWNraW5nIGJ1ZzogaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYyOTkxCisjaWYgRU5BQkxFKENT
U19TSEFQRVMpCiAgICAgaWYgKHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlT3V0c2lkZSAh
PSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2hhcGVPdXRzaWRlKQogICAgICAgICBy
ZXR1cm4gdHJ1ZTsKKyNlbmRpZgogCiAgICAgaWYgKHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX2Ns
aXBQYXRoICE9IG90aGVyLT5yYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9jbGlwUGF0aCkKICAgICAg
ICAgcmV0dXJuIHRydWU7CkBAIC0xNzM3LDEwICsxNzQzLDExIEBAIHZvaWQgUmVuZGVyU3R5bGU6
OnNldEJvcmRlckltYWdlT3V0c2V0KExlbmd0aEJveCBvdXRzZXQpCiAgICAgc3Vycm91bmQuYWNj
ZXNzKCktPmJvcmRlci5tX2ltYWdlLnNldE91dHNldChvdXRzZXQpOwogfQogCisjaWYgRU5BQkxF
KENTU19TSEFQRVMpCiBTaGFwZVZhbHVlKiBSZW5kZXJTdHlsZTo6aW5pdGlhbFNoYXBlSW5zaWRl
KCkKIHsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFJlZlB0cjxTaGFwZVZhbHVlPiwgc091dHNp
ZGVWYWx1ZSwgKFNoYXBlVmFsdWU6OmNyZWF0ZU91dHNpZGVWYWx1ZSgpKSk7CiAgICAgcmV0dXJu
IHNPdXRzaWRlVmFsdWUuZ2V0KCk7CiB9Ci0KKyNlbmRpZgogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxl
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaAppbmRleCBm
MmI1MThlNjM4ZGJlZDA0YjdkMjI0YzBiZmE3Yzg1ZDkxYTQxNDJmLi4yNzBjZjAzM2MxM2YwZGVh
NmI2MjYwNTljODFhYmI5ZGRiNGY3Y2MyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvUmVuZGVyU3R5bGUuaApAQCAtMTQ3MCw2ICsxNDcwLDcgQEAgcHVibGljOgogICAgIHZv
aWQgc2V0S2VybmluZyhTVkdMZW5ndGggaykgeyBhY2Nlc3NTVkdTdHlsZSgpLT5zZXRLZXJuaW5n
KGspOyB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogICAgIHZvaWQgc2V0U2hh
cGVJbnNpZGUoUGFzc1JlZlB0cjxTaGFwZVZhbHVlPiB2YWx1ZSkKICAgICB7CiAgICAgICAgIGlm
IChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9zaGFwZUluc2lkZSA9PSB2YWx1ZSkKQEAgLTE0OTYs
NiArMTQ5NywxNSBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFNoYXBlVmFsdWUqIGluaXRpYWxTaGFw
ZUluc2lkZSgpOwogICAgIHN0YXRpYyBTaGFwZVZhbHVlKiBpbml0aWFsU2hhcGVPdXRzaWRlKCkg
eyByZXR1cm4gMDsgfQogCisgICAgTGVuZ3RoIHNoYXBlUGFkZGluZygpIGNvbnN0IHsgcmV0dXJu
IHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlUGFkZGluZzsgfQorICAgIHZvaWQgc2V0U2hh
cGVQYWRkaW5nKExlbmd0aCBzaGFwZVBhZGRpbmcpIHsgU0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVk
RGF0YSwgbV9zaGFwZVBhZGRpbmcsIHNoYXBlUGFkZGluZyk7IH0KKyAgICBzdGF0aWMgTGVuZ3Ro
IGluaXRpYWxTaGFwZVBhZGRpbmcoKSB7IHJldHVybiBMZW5ndGgoMCwgRml4ZWQpOyB9CisKKyAg
ICBMZW5ndGggc2hhcGVNYXJnaW4oKSBjb25zdCB7IHJldHVybiByYXJlTm9uSW5oZXJpdGVkRGF0
YS0+bV9zaGFwZU1hcmdpbjsgfQorICAgIHZvaWQgc2V0U2hhcGVNYXJnaW4oTGVuZ3RoIHNoYXBl
TWFyZ2luKSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRlZERhdGEsIG1fc2hhcGVNYXJnaW4sIHNo
YXBlTWFyZ2luKTsgfQorICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFNoYXBlTWFyZ2luKCkgeyBy
ZXR1cm4gTGVuZ3RoKDAsIEZpeGVkKTsgfQorI2VuZGlmCisKICAgICB2b2lkIHNldENsaXBQYXRo
KFBhc3NSZWZQdHI8Q2xpcFBhdGhPcGVyYXRpb24+IG9wZXJhdGlvbikKICAgICB7CiAgICAgICAg
IGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9jbGlwUGF0aCAhPSBvcGVyYXRpb24pCkBAIC0x
NTA1LDE0ICsxNTE1LDYgQEAgcHVibGljOgogCiAgICAgc3RhdGljIENsaXBQYXRoT3BlcmF0aW9u
KiBpbml0aWFsQ2xpcFBhdGgoKSB7IHJldHVybiAwOyB9CiAKLSAgICBMZW5ndGggc2hhcGVQYWRk
aW5nKCkgY29uc3QgeyByZXR1cm4gcmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2hhcGVQYWRkaW5n
OyB9Ci0gICAgdm9pZCBzZXRTaGFwZVBhZGRpbmcoTGVuZ3RoIHNoYXBlUGFkZGluZykgeyBTRVRf
VkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLCBtX3NoYXBlUGFkZGluZywgc2hhcGVQYWRkaW5nKTsg
fQotICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFNoYXBlUGFkZGluZygpIHsgcmV0dXJuIExlbmd0
aCgwLCBGaXhlZCk7IH0KLQotICAgIExlbmd0aCBzaGFwZU1hcmdpbigpIGNvbnN0IHsgcmV0dXJu
IHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlTWFyZ2luOyB9Ci0gICAgdm9pZCBzZXRTaGFw
ZU1hcmdpbihMZW5ndGggc2hhcGVNYXJnaW4pIHsgU0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVkRGF0
YSwgbV9zaGFwZU1hcmdpbiwgc2hhcGVNYXJnaW4pOyB9Ci0gICAgc3RhdGljIExlbmd0aCBpbml0
aWFsU2hhcGVNYXJnaW4oKSB7IHJldHVybiBMZW5ndGgoMCwgRml4ZWQpOyB9Ci0KICAgICBib29s
IGhhc0NvbnRlbnQoKSBjb25zdCB7IHJldHVybiBjb250ZW50RGF0YSgpOyB9CiAgICAgY29uc3Qg
Q29udGVudERhdGEqIGNvbnRlbnREYXRhKCkgY29uc3QgeyByZXR1cm4gcmFyZU5vbkluaGVyaXRl
ZERhdGEtPm1fY29udGVudC5nZXQoKTsgfQogICAgIGJvb2wgY29udGVudERhdGFFcXVpdmFsZW50
KGNvbnN0IFJlbmRlclN0eWxlKiBvdGhlclN0eWxlKSBjb25zdCB7IHJldHVybiBjb25zdF9jYXN0
PFJlbmRlclN0eWxlKj4odGhpcyktPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5jb250ZW50RGF0YUVx
dWl2YWxlbnQoKmNvbnN0X2Nhc3Q8UmVuZGVyU3R5bGUqPihvdGhlclN0eWxlKS0+cmFyZU5vbklu
aGVyaXRlZERhdGEpOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAKaW5kZXggOTY2YmZjYjE1NzM1
YTQ1Y2NiNmVlNjY1MzFkNmY2YzRkNGQ4ZTkyNC4uYTU5Mjk1NzAzZjJhMWYyMTM5MGM4ZTUyYzZi
NmY5M2ZlM2FhNjcxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcApAQCAtNDYsMTAgKzQ2LDEy
IEBAIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEo
KQogI2VuZGlmCiAgICAgLCBtX21hc2soRmlsbExheWVyKE1hc2tGaWxsTGF5ZXIpKQogICAgICwg
bV9wYWdlU2l6ZSgpCisjaWYgRU5BQkxFKENTU19TSEFQRVMpCiAgICAgLCBtX3NoYXBlSW5zaWRl
KFJlbmRlclN0eWxlOjppbml0aWFsU2hhcGVJbnNpZGUoKSkKICAgICAsIG1fc2hhcGVPdXRzaWRl
KFJlbmRlclN0eWxlOjppbml0aWFsU2hhcGVPdXRzaWRlKCkpCiAgICAgLCBtX3NoYXBlTWFyZ2lu
KFJlbmRlclN0eWxlOjppbml0aWFsU2hhcGVNYXJnaW4oKSkKICAgICAsIG1fc2hhcGVQYWRkaW5n
KFJlbmRlclN0eWxlOjppbml0aWFsU2hhcGVQYWRkaW5nKCkpCisjZW5kaWYKICAgICAsIG1fY2xp
cFBhdGgoUmVuZGVyU3R5bGU6OmluaXRpYWxDbGlwUGF0aCgpKQogICAgICwgbV92aXNpdGVkTGlu
a0JhY2tncm91bmRDb2xvcihSZW5kZXJTdHlsZTo6aW5pdGlhbEJhY2tncm91bmRDb2xvcigpKQog
ICAgICwgbV9vcmRlcihSZW5kZXJTdHlsZTo6aW5pdGlhbE9yZGVyKCkpCkBAIC0xMjAsMTAgKzEy
MiwxMiBAQCBTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWRE
YXRhKGNvbnN0IFN0eWxlUmFyZU5vbkluaGVyaXRlZAogICAgICwgbV9tYXNrKG8ubV9tYXNrKQog
ICAgICwgbV9tYXNrQm94SW1hZ2Uoby5tX21hc2tCb3hJbWFnZSkKICAgICAsIG1fcGFnZVNpemUo
by5tX3BhZ2VTaXplKQorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogICAgICwgbV9zaGFwZUluc2lk
ZShvLm1fc2hhcGVJbnNpZGUpCiAgICAgLCBtX3NoYXBlT3V0c2lkZShvLm1fc2hhcGVPdXRzaWRl
KQogICAgICwgbV9zaGFwZU1hcmdpbihvLm1fc2hhcGVNYXJnaW4pCiAgICAgLCBtX3NoYXBlUGFk
ZGluZyhvLm1fc2hhcGVQYWRkaW5nKQorI2VuZGlmCiAgICAgLCBtX2NsaXBQYXRoKG8ubV9jbGlw
UGF0aCkKICNpZiBFTkFCTEUoQ1NTM19URVhUKQogICAgICwgbV90ZXh0RGVjb3JhdGlvbkNvbG9y
KG8ubV90ZXh0RGVjb3JhdGlvbkNvbG9yKQpAQCAtMjA5LDEwICsyMTMsMTIgQEAgYm9vbCBTdHls
ZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpvcGVyYXRvcj09KGNvbnN0IFN0eWxlUmFyZU5vbkluaGVy
aXRlZERhdGEmIG8pIGMKICAgICAgICAgJiYgbV9tYXNrID09IG8ubV9tYXNrCiAgICAgICAgICYm
IG1fbWFza0JveEltYWdlID09IG8ubV9tYXNrQm94SW1hZ2UKICAgICAgICAgJiYgbV9wYWdlU2l6
ZSA9PSBvLm1fcGFnZVNpemUKKyNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKICAgICAgICAgJiYgbV9z
aGFwZUluc2lkZSA9PSBvLm1fc2hhcGVJbnNpZGUKICAgICAgICAgJiYgbV9zaGFwZU91dHNpZGUg
PT0gby5tX3NoYXBlT3V0c2lkZQogICAgICAgICAmJiBtX3NoYXBlTWFyZ2luID09IG8ubV9zaGFw
ZU1hcmdpbgogICAgICAgICAmJiBtX3NoYXBlUGFkZGluZyA9PSBvLm1fc2hhcGVQYWRkaW5nCisj
ZW5kaWYKICAgICAgICAgJiYgbV9jbGlwUGF0aCA9PSBvLm1fY2xpcFBhdGgKICNpZiBFTkFCTEUo
Q1NTM19URVhUKQogICAgICAgICAmJiBtX3RleHREZWNvcmF0aW9uQ29sb3IgPT0gby5tX3RleHRE
ZWNvcmF0aW9uQ29sb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oCmluZGV4IDExNjI1YjNkZWI3ZWM5ZmEy
NWIzNTVmNWIwZjA4M2QxN2U3ZmM5M2UuLjMzZmRmMDg3ZjEzZDAyYWJkZjNiOWM4ZmUxMGRhMDgx
NzQ4MGJiNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHls
ZVJhcmVOb25Jbmhlcml0ZWREYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaApAQCAtMTM2LDEwICsxMzYsMTIgQEAgcHVi
bGljOgogCiAgICAgTGVuZ3RoU2l6ZSBtX3BhZ2VTaXplOwogCisjaWYgRU5BQkxFKENTU19TSEFQ
RVMpCiAgICAgUmVmUHRyPFNoYXBlVmFsdWU+IG1fc2hhcGVJbnNpZGU7CiAgICAgUmVmUHRyPFNo
YXBlVmFsdWU+IG1fc2hhcGVPdXRzaWRlOwogICAgIExlbmd0aCBtX3NoYXBlTWFyZ2luOwogICAg
IExlbmd0aCBtX3NoYXBlUGFkZGluZzsKKyNlbmRpZgogCiAgICAgUmVmUHRyPENsaXBQYXRoT3Bl
cmF0aW9uPiBtX2NsaXBQYXRoOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>205029</attachid>
            <date>2013-06-19 13:01:05 -0700</date>
            <delta_ts>2013-07-23 14:04:49 -0700</delta_ts>
            <desc>Modifying one of the .in files</desc>
            <filename>bug-117277-20130619125916.patch</filename>
            <type>text/plain</type>
            <size>13571</size>
            <attacher name="Bear Travis">betravis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxNzQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGNkYTM5MmI2OWM4Y2Vi
NjFjMjRkYzkyNDU0MGY1MjJmYzg1YWNhNS4uY2IzYjNhNGQwMjljNzU2NzY3OTEwODFmMjFjYzQy
YjhhMDg3YTA4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDEzLTA2LTE5ICBCZWFy
IFRyYXZpcyAgPGJldHJhdmlzQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10gU2hh
cGUgbWV0aG9kcyBhbmQgbWVtYmVyIHZhcmlhYmxlcyBzaG91bGQgYmUgZ3VhcmRlZCB3aXRoIHRo
ZSBDU1NfU0hBUEVTIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTExNzI3NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBzb21lIGNvbXBpbGUgZ3VhcmRzIHRoYXQgd2VyZSBt
aXNzaW5nIGZyb20gdGhlIFJlbmRlclN0eWxlIGFuZAorICAgICAgICBTdHlsZVJhcmVOb25Jbmhl
cml0ZWREYXRhIGZpbGVzLiBXaGVuIHRoZSBjb21waWxlIGd1YXJkIGNhdXNlZCBwYXJhbWV0ZXJz
IHRvCisgICAgICAgIG5vdCBiZSB1c2VkLCB0aGUgcGFyYW1ldGVycyB3ZXJlIG1hcmtlZC4KKwor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCbG9jay5jcHA6CisgICAgICAgIChXZWJDb3JlOjpz
aGFwZUluZm9SZXF1aXJlc1JlbGF5b3V0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2Nr
Ojpsb2dpY2FsTGVmdE9mZnNldEZvckxpbmUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxv
Y2s6OmxvZ2ljYWxSaWdodE9mZnNldEZvckxpbmUpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6aXNDYW5kaWRhdGVGb3JPcGFxdWVuZXNzVGVz
dCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveC5oOgorICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJPYmplY3QuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmNoYW5nZVJlcXVpcmVzTGF5b3V0
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpjaGFuZ2VSZXF1aXJlc1JlcGFpbnQp
OgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oOgorICAgICAgICAqIHJl
bmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERh
dGEpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6b3BlcmF0
b3I9PSk6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERh
dGEuaDoKKwogMjAxMy0wNi0xOSAgQ2hyaXN0b3BoZSBEdW1leiAgPGNoLmR1bWV6QHNpc2Euc2Ft
c3VuZy5jb20+CiAKICAgICAgICAgSW1wbGVtZW50IFdlYklETCBpbXBsZW1lbnRzCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5pbiBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCmluZGV4IGM5MDg0ODMyMjNmNjBjMTg1MGUxNzAz
ZGE5NjNkZjc5YWJjN2I0YjIuLjk4ODk2NjNjOTQyYWEyOTc0MmI3MGQ0MTAzZTE2ZmJkZjFiMjlk
OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCkBAIC04LDYgKzgsNyBA
QAogLy8gaHR0cDovL21zZG4ubWljcm9zb2Z0LmNvbS93b3Jrc2hvcC9hdXRob3IvY3NzL3JlZmVy
ZW5jZS9hdHRyaWJ1dGVzLmFzcAogLy8gCiAKKwogLy8gaGlnaC1wcmlvcml0eSBwcm9wZXJ0eSBu
YW1lcyBoYXZlIHRvIGJlIGxpc3RlZCBmaXJzdCwgdG8gc2ltcGxpZnkgdGhlIGNoZWNrCiAvLyBm
b3IgYXBwbHlpbmcgdGhlbSBmaXJzdC4KIGNvbG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJsb2NrLmNwcAppbmRleCBjNTA4MjkxNGMwZjg1Yzg4YmI5NTlhNDQzMGIxYjNhYmU5YjUw
N2RiLi42NzhhYWU4MmU4ZGRhZDlkNTJjZDc0NWQ0NzIwYThkNzNmYjdhZjBjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKQEAgLTE0NzAsNiArMTQ3MCw3IEBAIHZv
aWQgUmVuZGVyQmxvY2s6Om1hcmtTaGFwZUluc2lkZURlc2NlbmRhbnRzRm9yTGF5b3V0KCkKIHN0
YXRpYyBpbmxpbmUgYm9vbCBzaGFwZUluZm9SZXF1aXJlc1JlbGF5b3V0KGNvbnN0IFJlbmRlckJs
b2NrKiBibG9jaykKIHsKICNpZiAhRU5BQkxFKENTU19TSEFQRVMpCisgICAgVU5VU0VEX1BBUkFN
KGJsb2NrKTsKICAgICByZXR1cm4gZmFsc2U7CiAjZWxzZQogICAgIFNoYXBlSW5zaWRlSW5mbyog
aW5mbyA9IGJsb2NrLT5zaGFwZUluc2lkZUluZm8oKTsKQEAgLTQ0NTIsNiArNDQ1Myw4IEBAIExh
eW91dFVuaXQgUmVuZGVyQmxvY2s6OmxvZ2ljYWxMZWZ0T2Zmc2V0Rm9yTGluZShMYXlvdXRVbml0
IGxvZ2ljYWxUb3AsIExheW91dFVuCiAgICAgICAgICAgICAgICAgbGVmdCArPSBzaGFwZU91dHNp
ZGUtPnJpZ2h0U2VnbWVudFNoYXBlQm91bmRpbmdCb3hEZWx0YSgpOwogICAgICAgICAgICAgfQog
ICAgICAgICB9CisjZWxzZQorICAgICAgICBVTlVTRURfUEFSQU0ob2Zmc2V0TW9kZSk7CiAjZW5k
aWYKICAgICB9CiAKQEAgLTQ1MTMsNiArNDUxNiw4IEBAIExheW91dFVuaXQgUmVuZGVyQmxvY2s6
OmxvZ2ljYWxSaWdodE9mZnNldEZvckxpbmUoTGF5b3V0VW5pdCBsb2dpY2FsVG9wLCBMYXlvdXRV
CiAgICAgICAgICAgICAgICAgcmlnaHRGbG9hdE9mZnNldCArPSBzaGFwZU91dHNpZGUtPmxlZnRT
ZWdtZW50U2hhcGVCb3VuZGluZ0JveERlbHRhKCk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0K
KyNlbHNlCisgICAgICAgIFVOVVNFRF9QQVJBTShvZmZzZXRNb2RlKTsKICNlbmRpZgogCiAgICAg
ICAgIHJpZ2h0ID0gbWluKHJpZ2h0LCByaWdodEZsb2F0T2Zmc2V0KTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJveC5jcHAKaW5kZXggYTQ0ZDliYTIzNmZiZjcxMTVjNTI5NWU1M2Y1YTIw
ZmNjZjdkY2YyYy4uYjk5YmM4Y2RhZmNlN2Y4ZmE0MTQ3NjJjYzU2YTgwNzU1NzU1MDllMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAKQEAgLTEyMDcsOCArMTIwNywxMiBA
QCBzdGF0aWMgYm9vbCBpc0NhbmRpZGF0ZUZvck9wYXF1ZW5lc3NUZXN0KFJlbmRlckJveCogY2hp
bGRCb3gpCiAgICAgUmVuZGVyU3R5bGUqIGNoaWxkU3R5bGUgPSBjaGlsZEJveC0+c3R5bGUoKTsK
ICAgICBpZiAoY2hpbGRTdHlsZS0+cG9zaXRpb24oKSAhPSBTdGF0aWNQb3NpdGlvbiAmJiBjaGls
ZEJveC0+Y29udGFpbmluZ0Jsb2NrKCkgIT0gY2hpbGRCb3gtPnBhcmVudCgpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgaWYgKGNoaWxkU3R5bGUtPnZpc2liaWxpdHkoKSAhPSBWSVNJQkxF
IHx8IGNoaWxkU3R5bGUtPnNoYXBlT3V0c2lkZSgpKQorICAgIGlmIChjaGlsZFN0eWxlLT52aXNp
YmlsaXR5KCkgIT0gVklTSUJMRSkKICAgICAgICAgcmV0dXJuIGZhbHNlOworI2lmIEVOQUJMRShD
U1NfU0hBUEVTKQorICAgIGlmIChjaGlsZFN0eWxlLT5zaGFwZU91dHNpZGUoKSkKKyAgICAgICAg
cmV0dXJuIGZhbHNlOworI2VuZGlmCiAgICAgaWYgKCFjaGlsZEJveC0+d2lkdGgoKSB8fCAhY2hp
bGRCb3gtPmhlaWdodCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKFJlbmRlckxh
eWVyKiBjaGlsZExheWVyID0gY2hpbGRCb3gtPmxheWVyKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCb3guaAppbmRleCA1NzkxMWFkMzI4ZjM3OTljZDZjOWFjMzVmOTYxMjUxOTczZDAw
YjMwLi42NzlhOWM0ZGRiODZlMzhlZTNhNzM3NzljZTc0ODhkNzA4YzFjNjE1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJveC5oCkBAIC00OSw3ICs0OSwxNSBAQCBwdWJsaWM6CiAKICAg
ICAvLyBoYXNBdXRvWkluZGV4IG9ubHkgcmV0dXJucyB0cnVlIGlmIHRoZSBlbGVtZW50IGlzIHBv
c2l0aW9uZWQgb3IgYSBmbGV4LWl0ZW0gc2luY2UKICAgICAvLyBwb3NpdGlvbjpzdGF0aWMgZWxl
bWVudHMgdGhhdCBhcmUgbm90IGZsZXgtaXRlbXMgZ2V0IHRoZWlyIHotaW5kZXggY29lcmNlZCB0
byBhdXRvLgotICAgIHZpcnR1YWwgYm9vbCByZXF1aXJlc0xheWVyKCkgY29uc3QgT1ZFUlJJREUg
eyByZXR1cm4gaXNSb290KCkgfHwgaXNQb3NpdGlvbmVkKCkgfHwgY3JlYXRlc0dyb3VwKCkgfHwg
aGFzQ2xpcFBhdGgoKSB8fCBoYXNPdmVyZmxvd0NsaXAoKSB8fCBoYXNUcmFuc2Zvcm0oKSB8fCBo
YXNIaWRkZW5CYWNrZmFjZSgpIHx8IGhhc1JlZmxlY3Rpb24oKSB8fCBzdHlsZSgpLT5zcGVjaWZp
ZXNDb2x1bW5zKCkgfHwgIXN0eWxlKCktPmhhc0F1dG9aSW5kZXgoKSB8fCBpc0Zsb2F0aW5nV2l0
aFNoYXBlT3V0c2lkZSgpOyB9CisgICAgdmlydHVhbCBib29sIHJlcXVpcmVzTGF5ZXIoKSBjb25z
dCBPVkVSUklERQorICAgIHsKKyAgICAgICAgcmV0dXJuIGlzUm9vdCgpIHx8IGlzUG9zaXRpb25l
ZCgpIHx8IGNyZWF0ZXNHcm91cCgpIHx8IGhhc0NsaXBQYXRoKCkgfHwgaGFzT3ZlcmZsb3dDbGlw
KCkKKyAgICAgICAgICAgIHx8IGhhc1RyYW5zZm9ybSgpIHx8IGhhc0hpZGRlbkJhY2tmYWNlKCkg
fHwgaGFzUmVmbGVjdGlvbigpIHx8IHN0eWxlKCktPnNwZWNpZmllc0NvbHVtbnMoKQorI2lmIEVO
QUJMRShDU1NfU0hBUEVTKQorICAgICAgICAgICAgfHwgaXNGbG9hdGluZ1dpdGhTaGFwZU91dHNp
ZGUoKQorI2VuZGlmCisgICAgICAgICAgICB8fCAhc3R5bGUoKS0+aGFzQXV0b1pJbmRleCgpOwor
ICAgIH0KIAogICAgIHZpcnR1YWwgYm9vbCBiYWNrZ3JvdW5kSXNLbm93blRvQmVPcGFxdWVJblJl
Y3QoY29uc3QgTGF5b3V0UmVjdCYgbG9jYWxSZWN0KSBjb25zdCBPVkVSUklERTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCmluZGV4IDgwODA5MjMwZWQ0Yjc2OTA1ZDQ3
OGNhODkwOWJhOWIwYmI2ODg2ODEuLmE2Njk4OTE4Mzc1N2M0NjVjNjYxZmE4NmE4MmYyNWJkY2U0
MmMzZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3Qu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKQEAgLTg3Myw3
ICs4NzMsOSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB1bnNpZ25lZCBpbnQgbGVuZ3RoKCkgY29u
c3QgeyByZXR1cm4gMTsgfQogCiAgICAgYm9vbCBpc0Zsb2F0aW5nT3JPdXRPZkZsb3dQb3NpdGlv
bmVkKCkgY29uc3QgeyByZXR1cm4gKGlzRmxvYXRpbmcoKSB8fCBpc091dE9mRmxvd1Bvc2l0aW9u
ZWQoKSk7IH0KKyNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKICAgICBib29sIGlzRmxvYXRpbmdXaXRo
U2hhcGVPdXRzaWRlKCkgY29uc3QgeyByZXR1cm4gaXNCb3goKSAmJiBpc0Zsb2F0aW5nKCkgJiYg
c3R5bGUoKS0+c2hhcGVPdXRzaWRlKCk7IH0KKyNlbmRpZgogCiAgICAgYm9vbCBpc1RyYW5zcGFy
ZW50KCkgY29uc3QgeyByZXR1cm4gc3R5bGUoKS0+b3BhY2l0eSgpIDwgMS4wZjsgfQogICAgIGZs
b2F0IG9wYWNpdHkoKSBjb25zdCB7IHJldHVybiBzdHlsZSgpLT5vcGFjaXR5KCk7IH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCmluZGV4IDM2NGZj
MTI3MTg0M2Q3ODMxZWQ5YzY3YTU5YzgyYWRmZmRiYTIzZTIuLjNjMWFmZjg2ZWQxOTRhY2Y3NjUw
MGE0OTgxOTJiYTUzODVjOTQyM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlLmNwcApAQCAtNDAxLDEwICs0MDEsMTQgQEAgYm9vbCBSZW5kZXJTdHls
ZTo6Y2hhbmdlUmVxdWlyZXNMYXlvdXQoY29uc3QgUmVuZGVyU3R5bGUqIG90aGVyLCB1bnNpZ25l
ZCYgY2hhbmcKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAgICAgIGlmIChyYXJlTm9u
SW5oZXJpdGVkRGF0YS0+bV93cmFwRmxvdyAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERhdGEt
Pm1fd3JhcEZsb3cKLSAgICAgICAgICAgIHx8IHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3dyYXBU
aHJvdWdoICE9IG90aGVyLT5yYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV93cmFwVGhyb3VnaAotICAg
ICAgICAgICAgfHwgcmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2hhcGVNYXJnaW4gIT0gb3RoZXIt
PnJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlTWFyZ2luCisgICAgICAgICAgICB8fCByYXJl
Tm9uSW5oZXJpdGVkRGF0YS0+bV93cmFwVGhyb3VnaCAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRl
ZERhdGEtPm1fd3JhcFRocm91Z2gpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKworI2lmIEVO
QUJMRShDU1NfU0hBUEVTKQorICAgICAgICBpZiAocmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2hh
cGVNYXJnaW4gIT0gb3RoZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlTWFyZ2luCiAg
ICAgICAgICAgICB8fCByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9zaGFwZVBhZGRpbmcgIT0gb3Ro
ZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlUGFkZGluZykKICAgICAgICAgICAgIHJl
dHVybiB0cnVlOworI2VuZGlmCiAKICAgICAgICAgaWYgKHJhcmVOb25Jbmhlcml0ZWREYXRhLT5t
X2RlcHJlY2F0ZWRGbGV4aWJsZUJveC5nZXQoKSAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERh
dGEtPm1fZGVwcmVjYXRlZEZsZXhpYmxlQm94LmdldCgpCiAgICAgICAgICAgICAmJiAqcmFyZU5v
bkluaGVyaXRlZERhdGEtPm1fZGVwcmVjYXRlZEZsZXhpYmxlQm94LmdldCgpICE9ICpvdGhlci0+
cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fZGVwcmVjYXRlZEZsZXhpYmxlQm94LmdldCgpKQpAQCAt
NzAwLDggKzcwNCwxMCBAQCBib29sIFJlbmRlclN0eWxlOjpjaGFuZ2VSZXF1aXJlc1JlcGFpbnQo
Y29uc3QgUmVuZGVyU3R5bGUqIG90aGVyLCB1bnNpZ25lZCYpIGNvbgogICAgIC8vIHRoZSBwYXJl
bnQgY29udGFpbmVyLiBGb3Igc3VyZSwgSSB3aWxsIGhhdmUgdG8gcmV2aXNpdCB0aGlzIGNvZGUs
IGJ1dCBmb3Igbm93IEkndmUgYWRkZWQgdGhpcyBpbiBvcmRlciAKICAgICAvLyB0byBhdm9pZCBo
YXZpbmcgZGlmZigpID09IFN0eWxlRGlmZmVyZW5jZUVxdWFsIHdoZXJlIHdyYXAtc2hhcGVzIGFj
dHVhbGx5IGRpZmZlci4KICAgICAvLyBUcmFja2luZyBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD02Mjk5MQorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogICAgIGlm
IChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9zaGFwZU91dHNpZGUgIT0gb3RoZXItPnJhcmVOb25J
bmhlcml0ZWREYXRhLT5tX3NoYXBlT3V0c2lkZSkKICAgICAgICAgcmV0dXJuIHRydWU7CisjZW5k
aWYKIAogICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9jbGlwUGF0aCAhPSBvdGhlci0+
cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fY2xpcFBhdGgpCiAgICAgICAgIHJldHVybiB0cnVlOwpA
QCAtMTczNywxMCArMTc0MywxMSBAQCB2b2lkIFJlbmRlclN0eWxlOjpzZXRCb3JkZXJJbWFnZU91
dHNldChMZW5ndGhCb3ggb3V0c2V0KQogICAgIHN1cnJvdW5kLmFjY2VzcygpLT5ib3JkZXIubV9p
bWFnZS5zZXRPdXRzZXQob3V0c2V0KTsKIH0KIAorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogU2hh
cGVWYWx1ZSogUmVuZGVyU3R5bGU6OmluaXRpYWxTaGFwZUluc2lkZSgpCiB7CiAgICAgREVGSU5F
X1NUQVRJQ19MT0NBTChSZWZQdHI8U2hhcGVWYWx1ZT4sIHNPdXRzaWRlVmFsdWUsIChTaGFwZVZh
bHVlOjpjcmVhdGVPdXRzaWRlVmFsdWUoKSkpOwogICAgIHJldHVybiBzT3V0c2lkZVZhbHVlLmdl
dCgpOwogfQotCisjZW5kaWYKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggZjJiNTE4ZTYzOGRiZWQwNGI3
ZDIyNGMwYmZhN2M4NWQ5MWE0MTQyZi4uMjcwY2YwMzNjMTNmMGRlYTZiNjI2MDU5YzgxYWJiOWRk
YjRmN2NjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRl
clN0eWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxl
LmgKQEAgLTE0NzAsNiArMTQ3MCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEtlcm5pbmcoU1ZH
TGVuZ3RoIGspIHsgYWNjZXNzU1ZHU3R5bGUoKS0+c2V0S2VybmluZyhrKTsgfQogI2VuZGlmCiAK
KyNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKICAgICB2b2lkIHNldFNoYXBlSW5zaWRlKFBhc3NSZWZQ
dHI8U2hhcGVWYWx1ZT4gdmFsdWUpCiAgICAgewogICAgICAgICBpZiAocmFyZU5vbkluaGVyaXRl
ZERhdGEtPm1fc2hhcGVJbnNpZGUgPT0gdmFsdWUpCkBAIC0xNDk2LDYgKzE0OTcsMTUgQEAgcHVi
bGljOgogICAgIHN0YXRpYyBTaGFwZVZhbHVlKiBpbml0aWFsU2hhcGVJbnNpZGUoKTsKICAgICBz
dGF0aWMgU2hhcGVWYWx1ZSogaW5pdGlhbFNoYXBlT3V0c2lkZSgpIHsgcmV0dXJuIDA7IH0KIAor
ICAgIExlbmd0aCBzaGFwZVBhZGRpbmcoKSBjb25zdCB7IHJldHVybiByYXJlTm9uSW5oZXJpdGVk
RGF0YS0+bV9zaGFwZVBhZGRpbmc7IH0KKyAgICB2b2lkIHNldFNoYXBlUGFkZGluZyhMZW5ndGgg
c2hhcGVQYWRkaW5nKSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRlZERhdGEsIG1fc2hhcGVQYWRk
aW5nLCBzaGFwZVBhZGRpbmcpOyB9CisgICAgc3RhdGljIExlbmd0aCBpbml0aWFsU2hhcGVQYWRk
aW5nKCkgeyByZXR1cm4gTGVuZ3RoKDAsIEZpeGVkKTsgfQorCisgICAgTGVuZ3RoIHNoYXBlTWFy
Z2luKCkgY29uc3QgeyByZXR1cm4gcmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2hhcGVNYXJnaW47
IH0KKyAgICB2b2lkIHNldFNoYXBlTWFyZ2luKExlbmd0aCBzaGFwZU1hcmdpbikgeyBTRVRfVkFS
KHJhcmVOb25Jbmhlcml0ZWREYXRhLCBtX3NoYXBlTWFyZ2luLCBzaGFwZU1hcmdpbik7IH0KKyAg
ICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxTaGFwZU1hcmdpbigpIHsgcmV0dXJuIExlbmd0aCgwLCBG
aXhlZCk7IH0KKyNlbmRpZgorCiAgICAgdm9pZCBzZXRDbGlwUGF0aChQYXNzUmVmUHRyPENsaXBQ
YXRoT3BlcmF0aW9uPiBvcGVyYXRpb24pCiAgICAgewogICAgICAgICBpZiAocmFyZU5vbkluaGVy
aXRlZERhdGEtPm1fY2xpcFBhdGggIT0gb3BlcmF0aW9uKQpAQCAtMTUwNSwxNCArMTUxNSw2IEBA
IHB1YmxpYzoKIAogICAgIHN0YXRpYyBDbGlwUGF0aE9wZXJhdGlvbiogaW5pdGlhbENsaXBQYXRo
KCkgeyByZXR1cm4gMDsgfQogCi0gICAgTGVuZ3RoIHNoYXBlUGFkZGluZygpIGNvbnN0IHsgcmV0
dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlUGFkZGluZzsgfQotICAgIHZvaWQgc2V0
U2hhcGVQYWRkaW5nKExlbmd0aCBzaGFwZVBhZGRpbmcpIHsgU0VUX1ZBUihyYXJlTm9uSW5oZXJp
dGVkRGF0YSwgbV9zaGFwZVBhZGRpbmcsIHNoYXBlUGFkZGluZyk7IH0KLSAgICBzdGF0aWMgTGVu
Z3RoIGluaXRpYWxTaGFwZVBhZGRpbmcoKSB7IHJldHVybiBMZW5ndGgoMCwgRml4ZWQpOyB9Ci0K
LSAgICBMZW5ndGggc2hhcGVNYXJnaW4oKSBjb25zdCB7IHJldHVybiByYXJlTm9uSW5oZXJpdGVk
RGF0YS0+bV9zaGFwZU1hcmdpbjsgfQotICAgIHZvaWQgc2V0U2hhcGVNYXJnaW4oTGVuZ3RoIHNo
YXBlTWFyZ2luKSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRlZERhdGEsIG1fc2hhcGVNYXJnaW4s
IHNoYXBlTWFyZ2luKTsgfQotICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFNoYXBlTWFyZ2luKCkg
eyByZXR1cm4gTGVuZ3RoKDAsIEZpeGVkKTsgfQotCiAgICAgYm9vbCBoYXNDb250ZW50KCkgY29u
c3QgeyByZXR1cm4gY29udGVudERhdGEoKTsgfQogICAgIGNvbnN0IENvbnRlbnREYXRhKiBjb250
ZW50RGF0YSgpIGNvbnN0IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX2NvbnRlbnQu
Z2V0KCk7IH0KICAgICBib29sIGNvbnRlbnREYXRhRXF1aXZhbGVudChjb25zdCBSZW5kZXJTdHls
ZSogb3RoZXJTdHlsZSkgY29uc3QgeyByZXR1cm4gY29uc3RfY2FzdDxSZW5kZXJTdHlsZSo+KHRo
aXMpLT5yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Y29udGVudERhdGFFcXVpdmFsZW50KCpjb25zdF9j
YXN0PFJlbmRlclN0eWxlKj4ob3RoZXJTdHlsZSktPnJhcmVOb25Jbmhlcml0ZWREYXRhKTsgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbklu
aGVyaXRlZERhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFy
ZU5vbkluaGVyaXRlZERhdGEuY3BwCmluZGV4IDk2NmJmY2IxNTczNWE0NWNjYjZlZTY2NTMxZDZm
NmM0ZDRkOGU5MjQuLmE1OTI5NTcwM2YyYTFmMjEzOTBjOGU1MmM2YjZmOTNmZTNhYTY3MWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhl
cml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVS
YXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTQ2LDEwICs0NiwxMiBAQCBTdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhKCkKICNlbmRpZgogICAgICwg
bV9tYXNrKEZpbGxMYXllcihNYXNrRmlsbExheWVyKSkKICAgICAsIG1fcGFnZVNpemUoKQorI2lm
IEVOQUJMRShDU1NfU0hBUEVTKQogICAgICwgbV9zaGFwZUluc2lkZShSZW5kZXJTdHlsZTo6aW5p
dGlhbFNoYXBlSW5zaWRlKCkpCiAgICAgLCBtX3NoYXBlT3V0c2lkZShSZW5kZXJTdHlsZTo6aW5p
dGlhbFNoYXBlT3V0c2lkZSgpKQogICAgICwgbV9zaGFwZU1hcmdpbihSZW5kZXJTdHlsZTo6aW5p
dGlhbFNoYXBlTWFyZ2luKCkpCiAgICAgLCBtX3NoYXBlUGFkZGluZyhSZW5kZXJTdHlsZTo6aW5p
dGlhbFNoYXBlUGFkZGluZygpKQorI2VuZGlmCiAgICAgLCBtX2NsaXBQYXRoKFJlbmRlclN0eWxl
Ojppbml0aWFsQ2xpcFBhdGgoKSkKICAgICAsIG1fdmlzaXRlZExpbmtCYWNrZ3JvdW5kQ29sb3Io
UmVuZGVyU3R5bGU6OmluaXRpYWxCYWNrZ3JvdW5kQ29sb3IoKSkKICAgICAsIG1fb3JkZXIoUmVu
ZGVyU3R5bGU6OmluaXRpYWxPcmRlcigpKQpAQCAtMTIwLDEwICsxMjIsMTIgQEAgU3R5bGVSYXJl
Tm9uSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YShjb25zdCBTdHlsZVJh
cmVOb25Jbmhlcml0ZWQKICAgICAsIG1fbWFzayhvLm1fbWFzaykKICAgICAsIG1fbWFza0JveElt
YWdlKG8ubV9tYXNrQm94SW1hZ2UpCiAgICAgLCBtX3BhZ2VTaXplKG8ubV9wYWdlU2l6ZSkKKyNp
ZiBFTkFCTEUoQ1NTX1NIQVBFUykKICAgICAsIG1fc2hhcGVJbnNpZGUoby5tX3NoYXBlSW5zaWRl
KQogICAgICwgbV9zaGFwZU91dHNpZGUoby5tX3NoYXBlT3V0c2lkZSkKICAgICAsIG1fc2hhcGVN
YXJnaW4oby5tX3NoYXBlTWFyZ2luKQogICAgICwgbV9zaGFwZVBhZGRpbmcoby5tX3NoYXBlUGFk
ZGluZykKKyNlbmRpZgogICAgICwgbV9jbGlwUGF0aChvLm1fY2xpcFBhdGgpCiAjaWYgRU5BQkxF
KENTUzNfVEVYVCkKICAgICAsIG1fdGV4dERlY29yYXRpb25Db2xvcihvLm1fdGV4dERlY29yYXRp
b25Db2xvcikKQEAgLTIwOSwxMCArMjEzLDEyIEBAIGJvb2wgU3R5bGVSYXJlTm9uSW5oZXJpdGVk
RGF0YTo6b3BlcmF0b3I9PShjb25zdCBTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhJiBvKSBjCiAg
ICAgICAgICYmIG1fbWFzayA9PSBvLm1fbWFzawogICAgICAgICAmJiBtX21hc2tCb3hJbWFnZSA9
PSBvLm1fbWFza0JveEltYWdlCiAgICAgICAgICYmIG1fcGFnZVNpemUgPT0gby5tX3BhZ2VTaXpl
CisjaWYgRU5BQkxFKENTU19TSEFQRVMpCiAgICAgICAgICYmIG1fc2hhcGVJbnNpZGUgPT0gby5t
X3NoYXBlSW5zaWRlCiAgICAgICAgICYmIG1fc2hhcGVPdXRzaWRlID09IG8ubV9zaGFwZU91dHNp
ZGUKICAgICAgICAgJiYgbV9zaGFwZU1hcmdpbiA9PSBvLm1fc2hhcGVNYXJnaW4KICAgICAgICAg
JiYgbV9zaGFwZVBhZGRpbmcgPT0gby5tX3NoYXBlUGFkZGluZworI2VuZGlmCiAgICAgICAgICYm
IG1fY2xpcFBhdGggPT0gby5tX2NsaXBQYXRoCiAjaWYgRU5BQkxFKENTUzNfVEVYVCkKICAgICAg
ICAgJiYgbV90ZXh0RGVjb3JhdGlvbkNvbG9yID09IG8ubV90ZXh0RGVjb3JhdGlvbkNvbG9yCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5o
ZXJpdGVkRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5v
bkluaGVyaXRlZERhdGEuaAppbmRleCAxMTYyNWIzZGViN2VjOWZhMjViMzU1ZjViMGYwODNkMTdl
N2ZjOTNlLi4zM2ZkZjA4N2YxM2QwMmFiZGYzYjljOGZlMTBkYTA4MTc0ODBiYjQ1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVk
RGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhLmgKQEAgLTEzNiwxMCArMTM2LDEyIEBAIHB1YmxpYzoKIAogICAgIExlbmd0
aFNpemUgbV9wYWdlU2l6ZTsKIAorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogICAgIFJlZlB0cjxT
aGFwZVZhbHVlPiBtX3NoYXBlSW5zaWRlOwogICAgIFJlZlB0cjxTaGFwZVZhbHVlPiBtX3NoYXBl
T3V0c2lkZTsKICAgICBMZW5ndGggbV9zaGFwZU1hcmdpbjsKICAgICBMZW5ndGggbV9zaGFwZVBh
ZGRpbmc7CisjZW5kaWYKIAogICAgIFJlZlB0cjxDbGlwUGF0aE9wZXJhdGlvbj4gbV9jbGlwUGF0
aDsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>207348</attachid>
            <date>2013-07-23 14:04:51 -0700</date>
            <delta_ts>2013-07-25 09:39:27 -0700</delta_ts>
            <desc>Updated</desc>
            <filename>bug-117277-20130723140451.patch</filename>
            <type>text/plain</type>
            <size>14894</size>
            <attacher name="Bear Travis">betravis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUzMDA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTc0ZTY0Y2RiMmQ3NzFm
ZTFkMDM5N2M4NDE2ODcxYTg1OTlhMzIxYS4uZDY0YjZmYTNhNjNhMWMzYjE4ZjZhYmZhYWI3NDA3
YWIzZGNhZDg1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEzLTA3LTIzICBCZWFy
IFRyYXZpcyAgPGJldHJhdmlzQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10gU2hh
cGUgbWV0aG9kcyBhbmQgbWVtYmVyIHZhcmlhYmxlcyBzaG91bGQgYmUgZ3VhcmRlZCB3aXRoIHRo
ZSBDU1NfU0hBUEVTIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTExNzI3NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBzb21lIGNvbXBpbGUgZ3VhcmRzIHRoYXQgd2VyZSBt
aXNzaW5nIGZyb20gdGhlIFJlbmRlclN0eWxlIGFuZAorICAgICAgICBTdHlsZVJhcmVOb25Jbmhl
cml0ZWREYXRhIGZpbGVzLiBXaGVuIHRoZSBjb21waWxlIGd1YXJkIGNhdXNlZCBwYXJhbWV0ZXJz
IHRvCisgICAgICAgIG5vdCBiZSB1c2VkLCB0aGUgcGFyYW1ldGVycyB3ZXJlIG1hcmtlZCB1c2lu
ZyBVTlVTRURfUEFSQU0uCisKKyAgICAgICAgKiBjc3MvQ1NTUHJvcGVydHlOYW1lcy5pbjogSW5z
ZXJ0aW5nIGEgbGluZSB0byB0cmlnZ2VyIGJ1aWxkLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJCbG9jay5jcHA6CisgICAgICAgIChXZWJDb3JlOjpzaGFwZUluZm9SZXF1aXJlc1JlbGF5b3V0
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjp1cGRhdGVSZWdpb25zQW5kU2hhcGVz
QmVmb3JlQ2hpbGRMYXlvdXQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmxvZ2lj
YWxSaWdodEZsb2F0T2Zmc2V0Rm9yTGluZSk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJv
eC5jcHA6CisgICAgICAgIChXZWJDb3JlOjppc0NhbmRpZGF0ZUZvck9wYXF1ZW5lc3NUZXN0KToK
KyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlck9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6Y2hhbmdlUmVxdWlyZXNMYXlvdXQpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmNoYW5nZVJlcXVpcmVzUmVwYWludCk6Cisg
ICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6CisgICAgICAgICogcmVuZGVy
aW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSk6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpvcGVyYXRvcj09
KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5o
OgorCiAyMDEzLTA3LTIyICBCZW5qYW1pbiBQb3VsYWluICA8YmVuamFtaW5Ad2Via2l0Lm9yZz4K
IAogICAgICAgICBEbyBub3QgYWxsb2NhdGUgMiBBdG9taWNTdHJpbmcganVzdCB0byBkbyBhIGNv
bXBhcmlzb24gaW4gSFRNTEFuY2hvckVsZW1lbnQ6OnNldFJlbCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcm9wZXJ0eU5hbWVzLmluCmluZGV4IDM1OGVlMmNiYmQzNDM4YWEzYWY3OWE4NDE2NmYzZGQw
MGE0YWFkNDEuLmUwN2EyM2MxMWQzYTAyNWYzNzg3Y2JkZTU5YTQwYmY1M2NhNTI4ZTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCkBAIC04LDYgKzgsNyBAQAogLy8gaHR0
cDovL21zZG4ubWljcm9zb2Z0LmNvbS93b3Jrc2hvcC9hdXRob3IvY3NzL3JlZmVyZW5jZS9hdHRy
aWJ1dGVzLmFzcAogLy8gCiAKKwogLy8gaGlnaC1wcmlvcml0eSBwcm9wZXJ0eSBuYW1lcyBoYXZl
IHRvIGJlIGxpc3RlZCBmaXJzdCwgdG8gc2ltcGxpZnkgdGhlIGNoZWNrCiAvLyBmb3IgYXBwbHlp
bmcgdGhlbSBmaXJzdC4KIGNvbG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyQmxvY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2Nr
LmNwcAppbmRleCBlNjk2ZjMxZDI3NTZjOGM0ZGQ2NmRhMjk3N2I2MzA5ZDg4ZWVhNWY4Li4yNjcz
ZWFjNmI4ZGQ5ODAxNzVjNWFjY2Y5OGY4MWMxMTQwN2FlM2YwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJCbG9jay5jcHAKQEAgLTE0NjgsMjggKzE0NjgsMjcgQEAgdm9pZCBSZW5k
ZXJCbG9jazo6bWFya1NoYXBlSW5zaWRlRGVzY2VuZGFudHNGb3JMYXlvdXQoKQogfQogI2VuZGlm
CiAKKyNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKIHN0YXRpYyBpbmxpbmUgYm9vbCBzaGFwZUluZm9S
ZXF1aXJlc1JlbGF5b3V0KGNvbnN0IFJlbmRlckJsb2NrKiBibG9jaykKIHsKLSNpZiAhRU5BQkxF
KENTU19TSEFQRVMpCi0gICAgcmV0dXJuIGZhbHNlOwotI2Vsc2UKICAgICBTaGFwZUluc2lkZUlu
Zm8qIGluZm8gPSBibG9jay0+c2hhcGVJbnNpZGVJbmZvKCk7CiAgICAgaWYgKGluZm8pCiAgICAg
ICAgIGluZm8tPnNldE5lZWRzTGF5b3V0KGluZm8tPnNoYXBlU2l6ZURpcnR5KCkpOwogICAgIGVs
c2UKICAgICAgICAgaW5mbyA9IGJsb2NrLT5sYXlvdXRTaGFwZUluc2lkZUluZm8oKTsKICAgICBy
ZXR1cm4gaW5mbyAmJiBpbmZvLT5uZWVkc0xheW91dCgpOwotI2VuZGlmCiB9CisjZW5kaWYKIAog
Ym9vbCBSZW5kZXJCbG9jazo6dXBkYXRlUmVnaW9uc0FuZFNoYXBlc0JlZm9yZUNoaWxkTGF5b3V0
KFJlbmRlckZsb3dUaHJlYWQqIGZsb3dUaHJlYWQpCiB7CiAjaWYgRU5BQkxFKENTU19TSEFQRVMp
CiAgICAgaWYgKCFmbG93VGhyZWFkICYmICFzaGFwZUluc2lkZUluZm8oKSkKKyAgICAgICAgcmV0
dXJuIHNoYXBlSW5mb1JlcXVpcmVzUmVsYXlvdXQodGhpcyk7CiAjZWxzZQogICAgIGlmICghZmxv
d1RocmVhZCkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogI2VuZGlmCi0gICAgICAgIHJldHVybiBz
aGFwZUluZm9SZXF1aXJlc1JlbGF5b3V0KHRoaXMpOwogCiAgICAgTGF5b3V0VW5pdCBvbGRIZWln
aHQgPSBsb2dpY2FsSGVpZ2h0KCk7CiAgICAgTGF5b3V0VW5pdCBvbGRUb3AgPSBsb2dpY2FsVG9w
KCk7CkBAIC0xNTA5LDggKzE1MDgsMTIgQEAgYm9vbCBSZW5kZXJCbG9jazo6dXBkYXRlUmVnaW9u
c0FuZFNoYXBlc0JlZm9yZUNoaWxkTGF5b3V0KFJlbmRlckZsb3dUaHJlYWQqIGZsb3cKIAogICAg
IHNldExvZ2ljYWxIZWlnaHQob2xkSGVpZ2h0KTsKICAgICBzZXRMb2dpY2FsVG9wKG9sZFRvcCk7
Ci0gICAgCisKKyNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKICAgICByZXR1cm4gc2hhcGVJbmZvUmVx
dWlyZXNSZWxheW91dCh0aGlzKTsKKyNlbHNlCisgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCiB9
CiAKICNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKQEAgLTQ1NTEsNiArNDU1NCw4IEBAIExheW91dFVu
aXQgUmVuZGVyQmxvY2s6OmxvZ2ljYWxSaWdodEZsb2F0T2Zmc2V0Rm9yTGluZShMYXlvdXRVbml0
IGxvZ2ljYWxUb3AsIExhCiAgICAgICAgICAgICAgICAgcmlnaHRGbG9hdE9mZnNldCArPSBzaGFw
ZU91dHNpZGUtPmxlZnRTZWdtZW50TWFyZ2luQm94RGVsdGEoKTsKICAgICAgICAgICAgIH0KICAg
ICAgICAgfQorI2Vsc2UKKyAgICAgICAgVU5VU0VEX1BBUkFNKG9mZnNldE1vZGUpOwogI2VuZGlm
CiAKICAgICAgICAgcmlnaHQgPSBtaW4ocmlnaHQsIHJpZ2h0RmxvYXRPZmZzZXQpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAppbmRleCBkOTNkYmYwNGRlZWJmYTI4ODA4MTBm
ZmU4MWFhZjE5ZWQ5YjMxNzhhLi44MTIxOTU2YjAwN2ViYTY4MzU0YTQ2MzA4MTNlZTYxMTg3ZDIy
YmY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcApAQCAtMTIyNCw4ICsx
MjI0LDEyIEBAIHN0YXRpYyBib29sIGlzQ2FuZGlkYXRlRm9yT3BhcXVlbmVzc1Rlc3QoUmVuZGVy
Qm94KiBjaGlsZEJveCkKICAgICBSZW5kZXJTdHlsZSogY2hpbGRTdHlsZSA9IGNoaWxkQm94LT5z
dHlsZSgpOwogICAgIGlmIChjaGlsZFN0eWxlLT5wb3NpdGlvbigpICE9IFN0YXRpY1Bvc2l0aW9u
ICYmIGNoaWxkQm94LT5jb250YWluaW5nQmxvY2soKSAhPSBjaGlsZEJveC0+cGFyZW50KCkpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoY2hpbGRTdHlsZS0+dmlzaWJpbGl0eSgpICE9
IFZJU0lCTEUgfHwgY2hpbGRTdHlsZS0+c2hhcGVPdXRzaWRlKCkpCisgICAgaWYgKGNoaWxkU3R5
bGUtPnZpc2liaWxpdHkoKSAhPSBWSVNJQkxFKQogICAgICAgICByZXR1cm4gZmFsc2U7CisjaWYg
RU5BQkxFKENTU19TSEFQRVMpCisgICAgaWYgKGNoaWxkU3R5bGUtPnNoYXBlT3V0c2lkZSgpKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKICAgICBpZiAoIWNoaWxkQm94LT53aWR0aCgp
IHx8ICFjaGlsZEJveC0+aGVpZ2h0KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAo
UmVuZGVyTGF5ZXIqIGNoaWxkTGF5ZXIgPSBjaGlsZEJveC0+bGF5ZXIoKSkgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckJveC5oCmluZGV4IDIwMmIxZTIyMmU1N2Q4NjUxNGM5ZTkyNjdjYzFj
NDBkOTcyOTkzMDguLmQwOTMzZjE2ZTFiNTRkZjI4YzQ5NTM5MTEzYTdjOTVlNTRhYjc2MDkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmgKQEAgLTQ5LDcgKzQ5LDE1IEBAIHB1Ymxp
YzoKIAogICAgIC8vIGhhc0F1dG9aSW5kZXggb25seSByZXR1cm5zIHRydWUgaWYgdGhlIGVsZW1l
bnQgaXMgcG9zaXRpb25lZCBvciBhIGZsZXgtaXRlbSBzaW5jZQogICAgIC8vIHBvc2l0aW9uOnN0
YXRpYyBlbGVtZW50cyB0aGF0IGFyZSBub3QgZmxleC1pdGVtcyBnZXQgdGhlaXIgei1pbmRleCBj
b2VyY2VkIHRvIGF1dG8uCi0gICAgdmlydHVhbCBib29sIHJlcXVpcmVzTGF5ZXIoKSBjb25zdCBP
VkVSUklERSB7IHJldHVybiBpc1Jvb3QoKSB8fCBpc1Bvc2l0aW9uZWQoKSB8fCBjcmVhdGVzR3Jv
dXAoKSB8fCBoYXNDbGlwUGF0aCgpIHx8IGhhc092ZXJmbG93Q2xpcCgpIHx8IGhhc1RyYW5zZm9y
bSgpIHx8IGhhc0hpZGRlbkJhY2tmYWNlKCkgfHwgaGFzUmVmbGVjdGlvbigpIHx8IHN0eWxlKCkt
PnNwZWNpZmllc0NvbHVtbnMoKSB8fCAhc3R5bGUoKS0+aGFzQXV0b1pJbmRleCgpIHx8IGlzRmxv
YXRpbmdXaXRoU2hhcGVPdXRzaWRlKCk7IH0KKyAgICB2aXJ0dWFsIGJvb2wgcmVxdWlyZXNMYXll
cigpIGNvbnN0IE9WRVJSSURFCisgICAgeworICAgICAgICByZXR1cm4gaXNSb290KCkgfHwgaXNQ
b3NpdGlvbmVkKCkgfHwgY3JlYXRlc0dyb3VwKCkgfHwgaGFzQ2xpcFBhdGgoKSB8fCBoYXNPdmVy
Zmxvd0NsaXAoKQorICAgICAgICAgICAgfHwgaGFzVHJhbnNmb3JtKCkgfHwgaGFzSGlkZGVuQmFj
a2ZhY2UoKSB8fCBoYXNSZWZsZWN0aW9uKCkgfHwgc3R5bGUoKS0+c3BlY2lmaWVzQ29sdW1ucygp
CisjaWYgRU5BQkxFKENTU19TSEFQRVMpCisgICAgICAgICAgICB8fCBpc0Zsb2F0aW5nV2l0aFNo
YXBlT3V0c2lkZSgpCisjZW5kaWYKKyAgICAgICAgICAgIHx8ICFzdHlsZSgpLT5oYXNBdXRvWklu
ZGV4KCk7CisgICAgfQogCiAgICAgdmlydHVhbCBib29sIGJhY2tncm91bmRJc0tub3duVG9CZU9w
YXF1ZUluUmVjdChjb25zdCBMYXlvdXRSZWN0JiBsb2NhbFJlY3QpIGNvbnN0IE9WRVJSSURFOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmggYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKaW5kZXggYWM4M2U4NGY0NDU0
Njc4NThmZmI1OTcwNTliNTFjZDk0MWU3YjcyYy4uM2ExMzUwYWU4MTg1YjA3NDVhYjY0NTY4M2Yw
NGFmMTYyNDUwZDU5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ck9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaApA
QCAtODY0LDcgKzg2NCw5IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHVuc2lnbmVkIGludCBsZW5n
dGgoKSBjb25zdCB7IHJldHVybiAxOyB9CiAKICAgICBib29sIGlzRmxvYXRpbmdPck91dE9mRmxv
d1Bvc2l0aW9uZWQoKSBjb25zdCB7IHJldHVybiAoaXNGbG9hdGluZygpIHx8IGlzT3V0T2ZGbG93
UG9zaXRpb25lZCgpKTsgfQorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogICAgIGJvb2wgaXNGbG9h
dGluZ1dpdGhTaGFwZU91dHNpZGUoKSBjb25zdCB7IHJldHVybiBpc0JveCgpICYmIGlzRmxvYXRp
bmcoKSAmJiBzdHlsZSgpLT5zaGFwZU91dHNpZGUoKTsgfQorI2VuZGlmCiAKICAgICBib29sIGlz
VHJhbnNwYXJlbnQoKSBjb25zdCB7IHJldHVybiBzdHlsZSgpLT5vcGFjaXR5KCkgPCAxLjBmOyB9
CiAgICAgZmxvYXQgb3BhY2l0eSgpIGNvbnN0IHsgcmV0dXJuIHN0eWxlKCktPm9wYWNpdHkoKTsg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKaW5k
ZXggM2U1NTkwYzA5OWM2YjQ0Mjc5NGI5YTM3NTdmZDFlYTU1MWY3YjRlOC4uZGFlNzU5MjlmY2Q2
NTcxMTBmYjE2N2Y2YzQwNDM1OTJmNGYxZmFiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCkBAIC00MDIsMTAgKzQwMiwxNCBAQCBib29sIFJl
bmRlclN0eWxlOjpjaGFuZ2VSZXF1aXJlc0xheW91dChjb25zdCBSZW5kZXJTdHlsZSogb3RoZXIs
IHVuc2lnbmVkJiBjaGFuZwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAgICAgICAgaWYg
KHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3dyYXBGbG93ICE9IG90aGVyLT5yYXJlTm9uSW5oZXJp
dGVkRGF0YS0+bV93cmFwRmxvdwotICAgICAgICAgICAgfHwgcmFyZU5vbkluaGVyaXRlZERhdGEt
Pm1fd3JhcFRocm91Z2ggIT0gb3RoZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3dyYXBUaHJv
dWdoCi0gICAgICAgICAgICB8fCByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9zaGFwZU1hcmdpbiAh
PSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2hhcGVNYXJnaW4KKyAgICAgICAgICAg
IHx8IHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3dyYXBUaHJvdWdoICE9IG90aGVyLT5yYXJlTm9u
SW5oZXJpdGVkRGF0YS0+bV93cmFwVGhyb3VnaCkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOwor
CisjaWYgRU5BQkxFKENTU19TSEFQRVMpCisgICAgICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0
YS0+bV9zaGFwZU1hcmdpbiAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2hhcGVN
YXJnaW4KICAgICAgICAgICAgIHx8IHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlUGFkZGlu
ZyAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2hhcGVQYWRkaW5nKQogICAgICAg
ICAgICAgcmV0dXJuIHRydWU7CisjZW5kaWYKIAogICAgICAgICBpZiAocmFyZU5vbkluaGVyaXRl
ZERhdGEtPm1fZGVwcmVjYXRlZEZsZXhpYmxlQm94LmdldCgpICE9IG90aGVyLT5yYXJlTm9uSW5o
ZXJpdGVkRGF0YS0+bV9kZXByZWNhdGVkRmxleGlibGVCb3guZ2V0KCkKICAgICAgICAgICAgICYm
ICpyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9kZXByZWNhdGVkRmxleGlibGVCb3guZ2V0KCkgIT0g
Km90aGVyLT5yYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9kZXByZWNhdGVkRmxleGlibGVCb3guZ2V0
KCkpCkBAIC02OTUsNyArNjk5LDggQEAgYm9vbCBSZW5kZXJTdHlsZTo6Y2hhbmdlUmVxdWlyZXNS
ZXBhaW50KGNvbnN0IFJlbmRlclN0eWxlKiBvdGhlciwgdW5zaWduZWQmKSBjb24KICAgICAgICAg
fHwgcmFyZU5vbkluaGVyaXRlZERhdGEtPm1fYm9yZGVyRml0ICE9IG90aGVyLT5yYXJlTm9uSW5o
ZXJpdGVkRGF0YS0+bV9ib3JkZXJGaXQKICAgICAgICAgfHwgcmFyZUluaGVyaXRlZERhdGEtPm1f
aW1hZ2VSZW5kZXJpbmcgIT0gb3RoZXItPnJhcmVJbmhlcml0ZWREYXRhLT5tX2ltYWdlUmVuZGVy
aW5nKQogICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgCisKKyNpZiBFTkFCTEUoQ1NTX1NI
QVBFUykKICAgICAvLyBGSVhNRTogVGhlIGN1cnJlbnQgc3BlYyBpcyBiZWluZyByZXdvcmtlZCB0
byByZW1vdmUgZGVwZW5kZW5jaWVzIGJldHdlZW4gZXhjbHVzaW9ucyBhbmQgYWZmZWN0ZWQgCiAg
ICAgLy8gY29udGVudC4gVGhlcmUncyBhIHByb3Bvc2FsIHRvIHVzZSBmbG9hdHMgaW5zdGVhZC4g
SW4gdGhhdCBjYXNlLCB3cmFwLXNoYXBlIHNob3VsZCBhY3R1YWxseSByZWxheW91dCAKICAgICAv
LyB0aGUgcGFyZW50IGNvbnRhaW5lci4gRm9yIHN1cmUsIEkgd2lsbCBoYXZlIHRvIHJldmlzaXQg
dGhpcyBjb2RlLCBidXQgZm9yIG5vdyBJJ3ZlIGFkZGVkIHRoaXMgaW4gb3JkZXIgCkBAIC03MDMs
NiArNzA4LDcgQEAgYm9vbCBSZW5kZXJTdHlsZTo6Y2hhbmdlUmVxdWlyZXNSZXBhaW50KGNvbnN0
IFJlbmRlclN0eWxlKiBvdGhlciwgdW5zaWduZWQmKSBjb24KICAgICAvLyBUcmFja2luZyBidWc6
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02Mjk5MQogICAgIGlmIChy
YXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9zaGFwZU91dHNpZGUgIT0gb3RoZXItPnJhcmVOb25Jbmhl
cml0ZWREYXRhLT5tX3NoYXBlT3V0c2lkZSkKICAgICAgICAgcmV0dXJuIHRydWU7CisjZW5kaWYK
IAogICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9jbGlwUGF0aCAhPSBvdGhlci0+cmFy
ZU5vbkluaGVyaXRlZERhdGEtPm1fY2xpcFBhdGgpCiAgICAgICAgIHJldHVybiB0cnVlOwpAQCAt
MTczOCwxMSArMTc0NCwxMyBAQCB2b2lkIFJlbmRlclN0eWxlOjpzZXRCb3JkZXJJbWFnZU91dHNl
dChMZW5ndGhCb3ggb3V0c2V0KQogICAgIHN1cnJvdW5kLmFjY2VzcygpLT5ib3JkZXIubV9pbWFn
ZS5zZXRPdXRzZXQob3V0c2V0KTsKIH0KIAorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogU2hhcGVW
YWx1ZSogUmVuZGVyU3R5bGU6OmluaXRpYWxTaGFwZUluc2lkZSgpCiB7CiAgICAgREVGSU5FX1NU
QVRJQ19MT0NBTChSZWZQdHI8U2hhcGVWYWx1ZT4sIHNPdXRzaWRlVmFsdWUsIChTaGFwZVZhbHVl
OjpjcmVhdGVPdXRzaWRlVmFsdWUoKSkpOwogICAgIHJldHVybiBzT3V0c2lkZVZhbHVlLmdldCgp
OwogfQorI2VuZGlmCiAKIHZvaWQgUmVuZGVyU3R5bGU6OnNldENvbHVtblN0eWxlc0Zyb21QYWdp
bmF0aW9uTW9kZShjb25zdCBQYWdpbmF0aW9uOjpNb2RlJiBwYWdpbmF0aW9uTW9kZSkKIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggNmE2MGQ3
YThhZjhjOThhNGQzNTA5N2Q3ZjEyZGJkMjliZWI4M2NlNS4uZmIwODhlNDY1NjhmOTFjOTYyNGZk
ODU3YzczODQ1NWNmZWM2NTBlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlLmgKQEAgLTE0NjUsNiArMTQ2NSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNl
dEtlcm5pbmcoU1ZHTGVuZ3RoIGspIHsgYWNjZXNzU1ZHU3R5bGUoKS0+c2V0S2VybmluZyhrKTsg
fQogI2VuZGlmCiAKKyNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKICAgICB2b2lkIHNldFNoYXBlSW5z
aWRlKFBhc3NSZWZQdHI8U2hhcGVWYWx1ZT4gdmFsdWUpCiAgICAgewogICAgICAgICBpZiAocmFy
ZU5vbkluaGVyaXRlZERhdGEtPm1fc2hhcGVJbnNpZGUgPT0gdmFsdWUpCkBAIC0xNDkxLDYgKzE0
OTIsMTUgQEAgcHVibGljOgogICAgIHN0YXRpYyBTaGFwZVZhbHVlKiBpbml0aWFsU2hhcGVJbnNp
ZGUoKTsKICAgICBzdGF0aWMgU2hhcGVWYWx1ZSogaW5pdGlhbFNoYXBlT3V0c2lkZSgpIHsgcmV0
dXJuIDA7IH0KIAorICAgIExlbmd0aCBzaGFwZVBhZGRpbmcoKSBjb25zdCB7IHJldHVybiByYXJl
Tm9uSW5oZXJpdGVkRGF0YS0+bV9zaGFwZVBhZGRpbmc7IH0KKyAgICB2b2lkIHNldFNoYXBlUGFk
ZGluZyhMZW5ndGggc2hhcGVQYWRkaW5nKSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRlZERhdGEs
IG1fc2hhcGVQYWRkaW5nLCBzaGFwZVBhZGRpbmcpOyB9CisgICAgc3RhdGljIExlbmd0aCBpbml0
aWFsU2hhcGVQYWRkaW5nKCkgeyByZXR1cm4gTGVuZ3RoKDAsIEZpeGVkKTsgfQorCisgICAgTGVu
Z3RoIHNoYXBlTWFyZ2luKCkgY29uc3QgeyByZXR1cm4gcmFyZU5vbkluaGVyaXRlZERhdGEtPm1f
c2hhcGVNYXJnaW47IH0KKyAgICB2b2lkIHNldFNoYXBlTWFyZ2luKExlbmd0aCBzaGFwZU1hcmdp
bikgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLCBtX3NoYXBlTWFyZ2luLCBzaGFwZU1h
cmdpbik7IH0KKyAgICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxTaGFwZU1hcmdpbigpIHsgcmV0dXJu
IExlbmd0aCgwLCBGaXhlZCk7IH0KKyNlbmRpZgorCiAgICAgdm9pZCBzZXRDbGlwUGF0aChQYXNz
UmVmUHRyPENsaXBQYXRoT3BlcmF0aW9uPiBvcGVyYXRpb24pCiAgICAgewogICAgICAgICBpZiAo
cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fY2xpcFBhdGggIT0gb3BlcmF0aW9uKQpAQCAtMTUwMCwx
NCArMTUxMCw2IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBDbGlwUGF0aE9wZXJhdGlvbiogaW5p
dGlhbENsaXBQYXRoKCkgeyByZXR1cm4gMDsgfQogCi0gICAgTGVuZ3RoIHNoYXBlUGFkZGluZygp
IGNvbnN0IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlUGFkZGluZzsgfQot
ICAgIHZvaWQgc2V0U2hhcGVQYWRkaW5nKExlbmd0aCBzaGFwZVBhZGRpbmcpIHsgU0VUX1ZBUihy
YXJlTm9uSW5oZXJpdGVkRGF0YSwgbV9zaGFwZVBhZGRpbmcsIHNoYXBlUGFkZGluZyk7IH0KLSAg
ICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxTaGFwZVBhZGRpbmcoKSB7IHJldHVybiBMZW5ndGgoMCwg
Rml4ZWQpOyB9Ci0KLSAgICBMZW5ndGggc2hhcGVNYXJnaW4oKSBjb25zdCB7IHJldHVybiByYXJl
Tm9uSW5oZXJpdGVkRGF0YS0+bV9zaGFwZU1hcmdpbjsgfQotICAgIHZvaWQgc2V0U2hhcGVNYXJn
aW4oTGVuZ3RoIHNoYXBlTWFyZ2luKSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRlZERhdGEsIG1f
c2hhcGVNYXJnaW4sIHNoYXBlTWFyZ2luKTsgfQotICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFNo
YXBlTWFyZ2luKCkgeyByZXR1cm4gTGVuZ3RoKDAsIEZpeGVkKTsgfQotCiAgICAgYm9vbCBoYXND
b250ZW50KCkgY29uc3QgeyByZXR1cm4gY29udGVudERhdGEoKTsgfQogICAgIGNvbnN0IENvbnRl
bnREYXRhKiBjb250ZW50RGF0YSgpIGNvbnN0IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRh
LT5tX2NvbnRlbnQuZ2V0KCk7IH0KICAgICBib29sIGNvbnRlbnREYXRhRXF1aXZhbGVudChjb25z
dCBSZW5kZXJTdHlsZSogb3RoZXJTdHlsZSkgY29uc3QgeyByZXR1cm4gY29uc3RfY2FzdDxSZW5k
ZXJTdHlsZSo+KHRoaXMpLT5yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Y29udGVudERhdGFFcXVpdmFs
ZW50KCpjb25zdF9jYXN0PFJlbmRlclN0eWxlKj4ob3RoZXJTdHlsZSktPnJhcmVOb25Jbmhlcml0
ZWREYXRhKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwCmluZGV4IDk2NmJmY2IxNTczNWE0NWNj
YjZlZTY2NTMxZDZmNmM0ZDRkOGU5MjQuLmE1OTI5NTcwM2YyYTFmMjEzOTBjOGU1MmM2YjZmOTNm
ZTNhYTY3MWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHls
ZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTQ2LDEwICs0NiwxMiBAQCBT
dHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhKCkKICNl
bmRpZgogICAgICwgbV9tYXNrKEZpbGxMYXllcihNYXNrRmlsbExheWVyKSkKICAgICAsIG1fcGFn
ZVNpemUoKQorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogICAgICwgbV9zaGFwZUluc2lkZShSZW5k
ZXJTdHlsZTo6aW5pdGlhbFNoYXBlSW5zaWRlKCkpCiAgICAgLCBtX3NoYXBlT3V0c2lkZShSZW5k
ZXJTdHlsZTo6aW5pdGlhbFNoYXBlT3V0c2lkZSgpKQogICAgICwgbV9zaGFwZU1hcmdpbihSZW5k
ZXJTdHlsZTo6aW5pdGlhbFNoYXBlTWFyZ2luKCkpCiAgICAgLCBtX3NoYXBlUGFkZGluZyhSZW5k
ZXJTdHlsZTo6aW5pdGlhbFNoYXBlUGFkZGluZygpKQorI2VuZGlmCiAgICAgLCBtX2NsaXBQYXRo
KFJlbmRlclN0eWxlOjppbml0aWFsQ2xpcFBhdGgoKSkKICAgICAsIG1fdmlzaXRlZExpbmtCYWNr
Z3JvdW5kQ29sb3IoUmVuZGVyU3R5bGU6OmluaXRpYWxCYWNrZ3JvdW5kQ29sb3IoKSkKICAgICAs
IG1fb3JkZXIoUmVuZGVyU3R5bGU6OmluaXRpYWxPcmRlcigpKQpAQCAtMTIwLDEwICsxMjIsMTIg
QEAgU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YShj
b25zdCBTdHlsZVJhcmVOb25Jbmhlcml0ZWQKICAgICAsIG1fbWFzayhvLm1fbWFzaykKICAgICAs
IG1fbWFza0JveEltYWdlKG8ubV9tYXNrQm94SW1hZ2UpCiAgICAgLCBtX3BhZ2VTaXplKG8ubV9w
YWdlU2l6ZSkKKyNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKICAgICAsIG1fc2hhcGVJbnNpZGUoby5t
X3NoYXBlSW5zaWRlKQogICAgICwgbV9zaGFwZU91dHNpZGUoby5tX3NoYXBlT3V0c2lkZSkKICAg
ICAsIG1fc2hhcGVNYXJnaW4oby5tX3NoYXBlTWFyZ2luKQogICAgICwgbV9zaGFwZVBhZGRpbmco
by5tX3NoYXBlUGFkZGluZykKKyNlbmRpZgogICAgICwgbV9jbGlwUGF0aChvLm1fY2xpcFBhdGgp
CiAjaWYgRU5BQkxFKENTUzNfVEVYVCkKICAgICAsIG1fdGV4dERlY29yYXRpb25Db2xvcihvLm1f
dGV4dERlY29yYXRpb25Db2xvcikKQEAgLTIwOSwxMCArMjEzLDEyIEBAIGJvb2wgU3R5bGVSYXJl
Tm9uSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PShjb25zdCBTdHlsZVJhcmVOb25Jbmhlcml0ZWRE
YXRhJiBvKSBjCiAgICAgICAgICYmIG1fbWFzayA9PSBvLm1fbWFzawogICAgICAgICAmJiBtX21h
c2tCb3hJbWFnZSA9PSBvLm1fbWFza0JveEltYWdlCiAgICAgICAgICYmIG1fcGFnZVNpemUgPT0g
by5tX3BhZ2VTaXplCisjaWYgRU5BQkxFKENTU19TSEFQRVMpCiAgICAgICAgICYmIG1fc2hhcGVJ
bnNpZGUgPT0gby5tX3NoYXBlSW5zaWRlCiAgICAgICAgICYmIG1fc2hhcGVPdXRzaWRlID09IG8u
bV9zaGFwZU91dHNpZGUKICAgICAgICAgJiYgbV9zaGFwZU1hcmdpbiA9PSBvLm1fc2hhcGVNYXJn
aW4KICAgICAgICAgJiYgbV9zaGFwZVBhZGRpbmcgPT0gby5tX3NoYXBlUGFkZGluZworI2VuZGlm
CiAgICAgICAgICYmIG1fY2xpcFBhdGggPT0gby5tX2NsaXBQYXRoCiAjaWYgRU5BQkxFKENTUzNf
VEVYVCkKICAgICAgICAgJiYgbV90ZXh0RGVjb3JhdGlvbkNvbG9yID09IG8ubV90ZXh0RGVjb3Jh
dGlvbkNvbG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaAppbmRleCAxMTYyNWIzZGViN2VjOWZhMjViMzU1
ZjViMGYwODNkMTdlN2ZjOTNlLi4zM2ZkZjA4N2YxM2QwMmFiZGYzYjljOGZlMTBkYTA4MTc0ODBi
YjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJl
Tm9uSW5oZXJpdGVkRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9T
dHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmgKQEAgLTEzNiwxMCArMTM2LDEyIEBAIHB1YmxpYzoK
IAogICAgIExlbmd0aFNpemUgbV9wYWdlU2l6ZTsKIAorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQog
ICAgIFJlZlB0cjxTaGFwZVZhbHVlPiBtX3NoYXBlSW5zaWRlOwogICAgIFJlZlB0cjxTaGFwZVZh
bHVlPiBtX3NoYXBlT3V0c2lkZTsKICAgICBMZW5ndGggbV9zaGFwZU1hcmdpbjsKICAgICBMZW5n
dGggbV9zaGFwZVBhZGRpbmc7CisjZW5kaWYKIAogICAgIFJlZlB0cjxDbGlwUGF0aE9wZXJhdGlv
bj4gbV9jbGlwUGF0aDsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>