<?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>79313</bug_id>
          
          <creation_ts>2012-02-22 17:58:44 -0800</creation_ts>
          <short_desc>IsSynchronizingStyleAttributeFlag could be purged</short_desc>
          <delta_ts>2012-02-29 17:03:50 -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>DOM</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>77860</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Hajime Morrita">morrita</reporter>
          <assigned_to name="Hajime Morrita">morrita</assigned_to>
          <cc>gustavo</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>pnormand</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>562645</commentid>
    <comment_count>0</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-02-22 17:58:44 -0800</bug_when>
    <thetext>It looks this flag can be implemented in another way to save a bit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>562808</commentid>
    <comment_count>1</comment_count>
      <attachid>128389</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-02-22 21:48:22 -0800</bug_when>
    <thetext>Created attachment 128389
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>562809</commentid>
    <comment_count>2</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-02-22 21:49:43 -0800</bug_when>
    <thetext>Kling, Antti, What do you think about this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563581</commentid>
    <comment_count>3</comment_count>
      <attachid>128389</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2012-02-23 15:48:56 -0800</bug_when>
    <thetext>Comment on attachment 128389
Patch

I don&apos;t see why this static needs be in Node. It should be pushed down to StyledElement. Even better would be figuring out how to get rid of this mechanism completely.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563702</commentid>
    <comment_count>4</comment_count>
      <attachid>128608</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-02-23 16:55:58 -0800</bug_when>
    <thetext>Created attachment 128608
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563707</commentid>
    <comment_count>5</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-02-23 16:57:19 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; I don&apos;t see why this static needs be in Node. It should be pushed down to StyledElement. Even better would be figuring out how to get rid of this mechanism completely.
Right. I pushed down the flag to StyledElement. 
At this time, I yet found no good way to eliminate this flag entirely.
Could you take another look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563715</commentid>
    <comment_count>6</comment_count>
      <attachid>128608</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-02-23 17:11:41 -0800</bug_when>
    <thetext>Comment on attachment 128608
Patch

Attachment 128608 did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/11600516</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563757</commentid>
    <comment_count>7</comment_count>
      <attachid>128620</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-02-23 17:44:05 -0800</bug_when>
    <thetext>Created attachment 128620
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>565089</commentid>
    <comment_count>8</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2012-02-25 20:45:10 -0800</bug_when>
    <thetext>Seems like it would be even cleaner to remove the flag and devise a way to update the style attribute without causing attributeChanged() &amp; friends to be called.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>565239</commentid>
    <comment_count>9</comment_count>
      <attachid>128620</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-02-26 17:14:50 -0800</bug_when>
    <thetext>Comment on attachment 128620
Patch

Hmm. Okay, I&apos;ll investigate later. Clearing r? for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>566106</commentid>
    <comment_count>10</comment_count>
      <attachid>129127</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2012-02-27 16:39:36 -0800</bug_when>
    <thetext>Created attachment 129127
Patch

Alternate approach.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>566112</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-27 16:42:35 -0800</bug_when>
    <thetext>Attachment 129127 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/dom/ElementAttributeData.h:72:  The parameter name &quot;name&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 1 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>566300</commentid>
    <comment_count>12</comment_count>
      <attachid>129127</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-02-27 19:42:46 -0800</bug_when>
    <thetext>Comment on attachment 129127
Patch

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

&gt; Source/WebCore/dom/ElementAttributeData.cpp:205
&gt; +

It&apos;s sad to have this kind of duplication.
How about to move Element::setAttributeInternal() here to ElementAttributeData::setAttribute() and pass an element for invoking callbacks?
So that we can pass it a null to suppress callbacks and we&apos;d no longer need this code duplication.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>567285</commentid>
    <comment_count>13</comment_count>
      <attachid>129127</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-02-28 17:46:44 -0800</bug_when>
    <thetext>Comment on attachment 129127
Patch

r- for pinging purpose. Feel free to turn r? again. It looks we need to fix style error anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>567951</commentid>
    <comment_count>14</comment_count>
      <attachid>129519</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2012-02-29 14:31:48 -0800</bug_when>
    <thetext>Created attachment 129519
Patch v2

Add a &apos;notifyChanged&apos; parameter to setAttribute() instead to minimize copypasta.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>568114</commentid>
    <comment_count>15</comment_count>
      <attachid>129519</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2012-02-29 17:03:40 -0800</bug_when>
    <thetext>Comment on attachment 129519
Patch v2

Clearing flags on attachment: 129519

Committed r109285: &lt;http://trac.webkit.org/changeset/109285&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>568115</commentid>
    <comment_count>16</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2012-02-29 17:03:50 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>128389</attachid>
            <date>2012-02-22 21:48:22 -0800</date>
            <delta_ts>2012-02-23 16:55:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-79313-20120223144821.patch</filename>
            <type>text/plain</type>
            <size>4922</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA4NTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmJiZWY1YmVjOTZhZTg0
NzNlYjQ1NWE2ZDMyZDhmZGE5NDU1MmQ2Mi4uNzkxZDdhMmMwOTg5OGY3YmE3NzA1ZTQwODZmZTZm
MjU2NTZkZGE1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEyLTAyLTIyICBNT1JJ
VEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgorCisgICAgICAgIElzU3luY2hyb25pemlu
Z1N0eWxlQXR0cmlidXRlRmxhZyBjb3VsZCBiZSBwdXJnZWQuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTMxMworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNpbmNlIHRoZSBzdHlsZSBzeW5jaW5nIHByb2Nl
c3MgaXNuJ3QgcmUtZW50cmFudCwKKyAgICAgICAgd2UgY2FuIHJlcGFsY2UgdGhlIHBlci1pbnN0
YW5jZSBmbGFnIHdpdGggYSBzaW5nbGV0b24gZmxhZy4KKworICAgICAgICBObyBuZXcgdGVzdHMu
IE5vIGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIGRvbS9Ob2RlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Tm9kZTo6fk5vZGUpOgorICAgICAgICAqIGRv
bS9Ob2RlLmg6CisgICAgICAgIChOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6OmlzU3lu
Y2hyb25pemluZ1N0eWxlQXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6OnNldElz
U3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAg
ICAoV2ViQ29yZTo6Tm9kZTo6Y2xlYXJJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSk6Cisg
ICAgICAgICogaHRtbC9IVE1MRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRF
bGVtZW50Ojpjb3B5Tm9uQXR0cmlidXRlUHJvcGVydGllcyk6CisKIDIwMTItMDItMjIgIEFuZHJl
YXMgS2xpbmcgIDxhd2Vzb21la2xpbmdAYXBwbGUuY29tPgogCiAgICAgICAgIE1ha2UgcGFyc2lu
ZyBjb2xvciBwcmVzZW50YXRpb24gYXR0cmlidXRlcyBkbyBsZXNzIHBvaW50bGVzcyB3b3JrLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZG9tL05vZGUuY3BwCmluZGV4IDkxZjE1MWYwMTI4NTM3YmVmZjIxOGRkZjA5YTc2ZWUzMTBkYzIx
ZDEuLmQ5OGJhOGU5ZjE3ZWVjMGI1YzIzNmYxZGI3NGE0NDY3M2IyY2VkMTcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9k
ZS5jcHAKQEAgLTEyOCw2ICsxMjgsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5h
bWVzcGFjZSBIVE1MTmFtZXM7CiAKK2NvbnN0IE5vZGUqIE5vZGU6OnNfc3R5bGVTdHlsZUF0dHJp
YnV0ZVN5bmNocm9uaXppbmdOb2RlOworCiBib29sIE5vZGU6OmlzU3VwcG9ydGVkKGNvbnN0IFN0
cmluZyYgZmVhdHVyZSwgY29uc3QgU3RyaW5nJiB2ZXJzaW9uKQogewogICAgIHJldHVybiBET01J
bXBsZW1lbnRhdGlvbjo6aGFzRmVhdHVyZShmZWF0dXJlLCB2ZXJzaW9uKTsKQEAgLTQwNiw2ICs0
MDgsMTAgQEAgTm9kZTo6fk5vZGUoKQogICAgIGlmIChkb2MpCiAgICAgICAgIGRvYy0+Z3VhcmRE
ZXJlZigpOwogCisgICAgLy8gQmVjYXVzZSB0aGUgZmxhZyBpcyBzaW5nbGV0b24sIGVhY2ggbm9k
ZSBpcyByZXNwb25zaWJsZSBmb3IgY2xlYXJpbmcgaXQuCisgICAgaWYgKGlzU3luY2hyb25pemlu
Z1N0eWxlQXR0cmlidXRlKCkpCisgICAgICAgIGNsZWFySXNTeW5jaHJvbml6aW5nU3R5bGVBdHRy
aWJ1dGUoKTsKKwogICAgIEluc3BlY3RvckNvdW50ZXJzOjpkZWNyZW1lbnRDb3VudGVyKEluc3Bl
Y3RvckNvdW50ZXJzOjpOb2RlQ291bnRlcik7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Ob2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oCmluZGV4IGU0MmVhNTBh
NTY1M2FjZjdlYTExYTc1NGJkOThlN2FlNzEzZDg3MmQuLmU4ZjkyMTdhZWVjZWUyNTEzNzM1Yzc5
M2YzODIzMTM5NjJlMjRhOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaApAQCAtNzgyLDYgKzc4Miw4IEBAIHByaXZh
dGU6CiAgICAgTm9kZSogbV9uZXh0OwogICAgIFJlbmRlck9iamVjdCogbV9yZW5kZXJlcjsKIAor
ICAgIHN0YXRpYyBjb25zdCBOb2RlKiBzX3N0eWxlU3R5bGVBdHRyaWJ1dGVTeW5jaHJvbml6aW5n
Tm9kZTsKKwogcHJvdGVjdGVkOgogICAgIGJvb2wgaXNQYXJzaW5nQ2hpbGRyZW5GaW5pc2hlZCgp
IGNvbnN0IHsgcmV0dXJuIGdldEZsYWcoSXNQYXJzaW5nQ2hpbGRyZW5GaW5pc2hlZEZsYWcpOyB9
CiAgICAgdm9pZCBzZXRJc1BhcnNpbmdDaGlsZHJlbkZpbmlzaGVkKCkgeyBzZXRGbGFnKElzUGFy
c2luZ0NoaWxkcmVuRmluaXNoZWRGbGFnKTsgfQpAQCAtNzkwLDEwICs3OTIsMTAgQEAgcHJvdGVj
dGVkOgogICAgIHZvaWQgc2V0SXNTdHlsZUF0dHJpYnV0ZVZhbGlkKGJvb2wgZikgeyBzZXRGbGFn
KGYsIElzU3R5bGVBdHRyaWJ1dGVWYWxpZEZsYWcpOyB9CiAgICAgdm9pZCBzZXRJc1N0eWxlQXR0
cmlidXRlVmFsaWQoKSBjb25zdCB7IHNldEZsYWcoSXNTdHlsZUF0dHJpYnV0ZVZhbGlkRmxhZyk7
IH0KICAgICB2b2lkIGNsZWFySXNTdHlsZUF0dHJpYnV0ZVZhbGlkKCkgeyBjbGVhckZsYWcoSXNT
dHlsZUF0dHJpYnV0ZVZhbGlkRmxhZyk7IH0KLSAgICBib29sIGlzU3luY2hyb25pemluZ1N0eWxl
QXR0cmlidXRlKCkgY29uc3QgeyByZXR1cm4gZ2V0RmxhZyhJc1N5bmNocm9uaXppbmdTdHlsZUF0
dHJpYnV0ZUZsYWcpOyB9Ci0gICAgdm9pZCBzZXRJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0
ZShib29sIGYpIHsgc2V0RmxhZyhmLCBJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZUZsYWcp
OyB9Ci0gICAgdm9pZCBzZXRJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpIGNvbnN0IHsg
c2V0RmxhZyhJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZUZsYWcpOyB9Ci0gICAgdm9pZCBj
bGVhcklzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCkgY29uc3QgeyBjbGVhckZsYWcoSXNT
eW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGVGbGFnKTsgfQorCisgICAgYm9vbCBpc1N5bmNocm9u
aXppbmdTdHlsZUF0dHJpYnV0ZSgpIGNvbnN0IHsgcmV0dXJuIHRoaXMgPT0gc19zdHlsZVN0eWxl
QXR0cmlidXRlU3luY2hyb25pemluZ05vZGU7IH0KKyAgICB2b2lkIHNldElzU3luY2hyb25pemlu
Z1N0eWxlQXR0cmlidXRlKCkgY29uc3Q7CisgICAgdm9pZCBjbGVhcklzU3luY2hyb25pemluZ1N0
eWxlQXR0cmlidXRlKCkgY29uc3Q7CiAKICNpZiBFTkFCTEUoU1ZHKQogICAgIGJvb2wgYXJlU1ZH
QXR0cmlidXRlc1ZhbGlkKCkgY29uc3QgeyByZXR1cm4gZ2V0RmxhZyhBcmVTVkdBdHRyaWJ1dGVz
VmFsaWRGbGFnKTsgfQpAQCAtODUwLDYgKzg1MiwxOCBAQCBpbmxpbmUgdm9pZCBOb2RlOjpyZWF0
dGFjaElmQXR0YWNoZWQoKQogICAgICAgICByZWF0dGFjaCgpOwogfQogCitpbmxpbmUgdm9pZCBO
b2RlOjpzZXRJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpIGNvbnN0Cit7CisgICAgQVNT
RVJUKCFzX3N0eWxlU3R5bGVBdHRyaWJ1dGVTeW5jaHJvbml6aW5nTm9kZSk7CisgICAgc19zdHls
ZVN0eWxlQXR0cmlidXRlU3luY2hyb25pemluZ05vZGUgPSB0aGlzOworfQorCitpbmxpbmUgdm9p
ZCBOb2RlOjpjbGVhcklzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCkgY29uc3QKK3sKKyAg
ICBBU1NFUlQoc19zdHlsZVN0eWxlQXR0cmlidXRlU3luY2hyb25pemluZ05vZGUgPT0gdGhpcyk7
CisgICAgc19zdHlsZVN0eWxlQXR0cmlidXRlU3luY2hyb25pemluZ05vZGUgPSAwOworfQorCiB9
IC8vbmFtZXNwYWNlCiAKICNpZm5kZWYgTkRFQlVHCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQu
Y3BwCmluZGV4IDA5MmE3NWM0ZWY3NzBiM2E1YmVhZDMyODY2NDMyNDAzYzhmMTE3NDMuLjYyNDEz
Y2RjZmU3YTQ0Y2E2YTgxMjZlNDM5MzQyYzFlZTllMWJlYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TEVsZW1lbnQuY3BwCkBAIC0xMTkzLDkgKzExOTMsOCBAQCB2b2lkIFN0eWxlZEVsZW1lbnQ6OmNv
cHlOb25BdHRyaWJ1dGVQcm9wZXJ0aWVzKGNvbnN0IEVsZW1lbnQqIHNvdXJjZUVsZW1lbnQpCiAg
ICAgU3R5bGVQcm9wZXJ0eVNldCogaW5saW5lU3R5bGUgPSBlbnN1cmVJbmxpbmVTdHlsZURlY2wo
KTsKICAgICBpbmxpbmVTdHlsZS0+Y29weVByb3BlcnRpZXNGcm9tKCpzb3VyY2UtPmlubGluZVN0
eWxlRGVjbCgpKTsKICAgICBpbmxpbmVTdHlsZS0+c2V0U3RyaWN0UGFyc2luZyhzb3VyY2UtPmlu
bGluZVN0eWxlRGVjbCgpLT51c2VTdHJpY3RQYXJzaW5nKCkpOwotCiAgICAgc2V0SXNTdHlsZUF0
dHJpYnV0ZVZhbGlkKHNvdXJjZS0+aXNTdHlsZUF0dHJpYnV0ZVZhbGlkKCkpOwotICAgIHNldElz
U3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKHNvdXJjZS0+aXNTeW5jaHJvbml6aW5nU3R5bGVB
dHRyaWJ1dGUoKSk7CisgICAgQVNTRVJUKCFzb3VyY2UtPmlzU3luY2hyb25pemluZ1N0eWxlQXR0
cmlidXRlKCkpOwogICAgIAogICAgIEVsZW1lbnQ6OmNvcHlOb25BdHRyaWJ1dGVQcm9wZXJ0aWVz
KHNvdXJjZUVsZW1lbnQpOwogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>128608</attachid>
            <date>2012-02-23 16:55:58 -0800</date>
            <delta_ts>2012-02-23 17:43:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-79313-20120224095556.patch</filename>
            <type>text/plain</type>
            <size>8697</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA4NTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmJiZWY1YmVjOTZhZTg0
NzNlYjQ1NWE2ZDMyZDhmZGE5NDU1MmQ2Mi4uMjNiNDA4OTVkNDJmZjgxMjZkODQ5MzIyZmY0ZmMz
YWNkY2NmY2M3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEyLTAyLTIzICBNT1JJ
VEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgorCisgICAgICAgIElzU3luY2hyb25pemlu
Z1N0eWxlQXR0cmlidXRlRmxhZyBjb3VsZCBiZSBwdXJnZWQuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTMxMworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSBzdHlsZSBzeW5jaW5nIHByb2Nlc3MgaXNu
J3QgcmUtZW50cmFudCwgc28gd2UgY2FuIHJlcGFsY2UgdGhlCisgICAgICAgIHBlci1pbnN0YW5j
ZSBmbGFnIHdpdGggYSBzaW5nbGV0b24gZmxhZy4gVGhlIGZsYWcgaXMgbm8gbG9uZ2VyIGEKKyAg
ICAgICAgcGFydCBvZiB0aGUgYml0bWFzaywgbm93IGl0IGNhbiBiZSBwdXNoZWQgZG93biB0byBT
dHlsZWRFbGVtZW50LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gTm8gYmVoYXZpb3IgY2hhbmdl
LgorCisgICAgICAgICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6aXNTeW5j
aHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChX
ZWJDb3JlOjpFbGVtZW50Ojp3aWxsTW9kaWZ5QXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmU6
OkVsZW1lbnQ6OmRpZE1vZGlmeUF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50
OjpkaWRSZW1vdmVBdHRyaWJ1dGUpOgorICAgICAgICAqIGRvbS9Ob2RlLmg6CisgICAgICAgICog
ZG9tL1N0eWxlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlRWxlbWVudDo6flN0eWxlRWxlbWVudCk6CisgICAgICAgICogZG9tL1N0eWxlRWxl
bWVudC5oOgorICAgICAgICAoU3R5bGVFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxl
ZEVsZW1lbnQ6OnNldElzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKToKKyAgICAgICAgKFdl
YkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6Y2xlYXJJc1N5bmNocm9u
aXppbmdTdHlsZUF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRFbGVtZW50Ojpp
c1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSk6CisgICAgICAgICogaHRtbC9IVE1MRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRFbGVtZW50Ojpjb3B5Tm9uQXR0cmlidXRl
UHJvcGVydGllcyk6CisKIDIwMTItMDItMjIgIEFuZHJlYXMgS2xpbmcgIDxhd2Vzb21la2xpbmdA
YXBwbGUuY29tPgogCiAgICAgICAgIE1ha2UgcGFyc2luZyBjb2xvciBwcmVzZW50YXRpb24gYXR0
cmlidXRlcyBkbyBsZXNzIHBvaW50bGVzcyB3b3JrLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCmluZGV4
IDlmMjYxOTU3MjQyMWRhMzhjMzllYjFjMThiZDkzY2U3NjM4NWI5YTMuLmE1ZTRiMjRiZjdmNGM1
YzhiNDVmM2YxZDc2MzcwYmM5OTdjMTMzYWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAgLTYy
LDYgKzYyLDcgQEAKICNpbmNsdWRlICJSZW5kZXJXaWRnZXQuaCIKICNpbmNsdWRlICJTZXR0aW5n
cy5oIgogI2luY2x1ZGUgIlNoYWRvd1Jvb3QuaCIKKyNpbmNsdWRlICJTdHlsZWRFbGVtZW50Lmgi
CiAjaW5jbHVkZSAiVGV4dC5oIgogI2luY2x1ZGUgIlRleHRJdGVyYXRvci5oIgogI2luY2x1ZGUg
IldlYktpdE11dGF0aW9uT2JzZXJ2ZXIuaCIKQEAgLTE5ODYsNiArMTk4NywxMSBAQCBib29sIEVs
ZW1lbnQ6OmZhc3RBdHRyaWJ1dGVMb29rdXBBbGxvd2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5h
bWUpIGNvbnN0CiB9CiAjZW5kaWYKIAorc3RhdGljIGlubGluZSBib29sIGlzU3luY2hyb25pemlu
Z1N0eWxlQXR0cmlidXRlKGNvbnN0IEVsZW1lbnQqIGVsZW1lbnQpCit7CisgICAgZWxlbWVudC0+
aXNTdHlsZWRFbGVtZW50KCkgJiYgc3RhdGljX2Nhc3Q8Y29uc3QgU3R5bGVkRWxlbWVudCo+KGVs
ZW1lbnQpLT5pc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpOworfQorCiB2b2lkIEVsZW1l
bnQ6OndpbGxNb2RpZnlBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSwgY29uc3Qg
QXRvbWljU3RyaW5nJiBvbGRWYWx1ZSwgY29uc3QgQXRvbWljU3RyaW5nJiBuZXdWYWx1ZSkKIHsK
ICAgICBkb2N1bWVudCgpLT5pbmNET01UcmVlVmVyc2lvbigpOwpAQCAtMTk5NiwxNCArMjAwMiwx
NCBAQCB2b2lkIEVsZW1lbnQ6OndpbGxNb2RpZnlBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFt
ZSYgbmFtZSwgY29uc3QgQXRvbWljU3RyaW5nJgogICAgICAgICB1cGRhdGVOYW1lKG9sZFZhbHVl
LCBuZXdWYWx1ZSk7CiAKICNpZiBFTkFCTEUoTVVUQVRJT05fT0JTRVJWRVJTKQotICAgIGlmICgh
aXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoKSkgeworICAgIGlmICghaXNTeW5jaHJvbml6
aW5nU3R5bGVBdHRyaWJ1dGUodGhpcykpIHsKICAgICAgICAgaWYgKE93blB0cjxNdXRhdGlvbk9i
c2VydmVySW50ZXJlc3RHcm91cD4gcmVjaXBpZW50cyA9IE11dGF0aW9uT2JzZXJ2ZXJJbnRlcmVz
dEdyb3VwOjpjcmVhdGVGb3JBdHRyaWJ1dGVzTXV0YXRpb24odGhpcywgbmFtZSkpCiAgICAgICAg
ICAgICByZWNpcGllbnRzLT5lbnF1ZXVlTXV0YXRpb25SZWNvcmQoTXV0YXRpb25SZWNvcmQ6OmNy
ZWF0ZUF0dHJpYnV0ZXModGhpcywgbmFtZSwgb2xkVmFsdWUpKTsKICAgICB9CiAjZW5kaWYKIAog
I2lmIEVOQUJMRShJTlNQRUNUT1IpCi0gICAgaWYgKCFpc1N5bmNocm9uaXppbmdTdHlsZUF0dHJp
YnV0ZSgpKQorICAgIGlmICghaXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUodGhpcykpCiAg
ICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbE1vZGlmeURPTUF0dHIoZG9jdW1l
bnQoKSwgdGhpcywgb2xkVmFsdWUsIG5ld1ZhbHVlKTsKICNlbmRpZgogfQpAQCAtMjAxMiw3ICsy
MDE4LDcgQEAgdm9pZCBFbGVtZW50OjpkaWRNb2RpZnlBdHRyaWJ1dGUoQXR0cmlidXRlKiBhdHRy
KQogewogICAgIGF0dHJpYnV0ZUNoYW5nZWQoYXR0cik7CiAKLSAgICBpZiAoIWlzU3luY2hyb25p
emluZ1N0eWxlQXR0cmlidXRlKCkpIHsKKyAgICBpZiAoIWlzU3luY2hyb25pemluZ1N0eWxlQXR0
cmlidXRlKHRoaXMpKSB7CiAgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkTW9k
aWZ5RE9NQXR0cihkb2N1bWVudCgpLCB0aGlzLCBhdHRyLT5uYW1lKCkubG9jYWxOYW1lKCksIGF0
dHItPnZhbHVlKCkpOwogICAgICAgICBkaXNwYXRjaFN1YnRyZWVNb2RpZmllZEV2ZW50KCk7CiAg
ICAgfQpAQCAtMjAyOCw3ICsyMDM0LDcgQEAgdm9pZCBFbGVtZW50OjpkaWRSZW1vdmVBdHRyaWJ1
dGUoQXR0cmlidXRlKiBhdHRyKQogICAgIGF0dHJpYnV0ZUNoYW5nZWQoYXR0cik7CiAgICAgYXR0
ci0+c2V0VmFsdWUoc2F2ZWRWYWx1ZSk7CiAKLSAgICBpZiAoIWlzU3luY2hyb25pemluZ1N0eWxl
QXR0cmlidXRlKCkpIHsKKyAgICBpZiAoIWlzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKHRo
aXMpKSB7CiAgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVtb3ZlRE9NQXR0
cihkb2N1bWVudCgpLCB0aGlzLCBhdHRyLT5uYW1lKCkubG9jYWxOYW1lKCkpOwogICAgICAgICBk
aXNwYXRjaFN1YnRyZWVNb2RpZmllZEV2ZW50KCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL05vZGUuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKaW5kZXggZTQy
ZWE1MGE1NjUzYWNmN2VhMTFhNzU0YmQ5OGU3YWU3MTNkODcyZC4uNjI5NzZjZmE4NzZjMWZhZGZh
ODdjNzQxNjZkNGEzMWQxNjNhOGUwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL05v
ZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oCkBAIC02NjgsNyArNjY4LDYgQEAg
cHJpdmF0ZToKICAgICAgICAgLy8gYmUgc3RvcmVkIGluIHRoZSBzYW1lIG1lbW9yeSB3b3JkIGFz
IHRoZSBOb2RlIGJpdHMgYWJvdmUuCiAgICAgICAgIElzUGFyc2luZ0NoaWxkcmVuRmluaXNoZWRG
bGFnID0gMSA8PCAxNywgLy8gRWxlbWVudAogICAgICAgICBJc1N0eWxlQXR0cmlidXRlVmFsaWRG
bGFnID0gMSA8PCAxOCwgLy8gU3R5bGVkRWxlbWVudAotICAgICAgICBJc1N5bmNocm9uaXppbmdT
dHlsZUF0dHJpYnV0ZUZsYWcgPSAxIDw8IDE5LCAvLyBTdHlsZWRFbGVtZW50CiAjaWYgRU5BQkxF
KFNWRykKICAgICAgICAgQXJlU1ZHQXR0cmlidXRlc1ZhbGlkRmxhZyA9IDEgPDwgMjAsIC8vIEVs
ZW1lbnQKICAgICAgICAgSXNTeW5jaHJvbml6aW5nU1ZHQXR0cmlidXRlc0ZsYWcgPSAxIDw8IDIx
LCAvLyBTVkdFbGVtZW50CkBAIC03OTAsMTAgKzc4OSw2IEBAIHByb3RlY3RlZDoKICAgICB2b2lk
IHNldElzU3R5bGVBdHRyaWJ1dGVWYWxpZChib29sIGYpIHsgc2V0RmxhZyhmLCBJc1N0eWxlQXR0
cmlidXRlVmFsaWRGbGFnKTsgfQogICAgIHZvaWQgc2V0SXNTdHlsZUF0dHJpYnV0ZVZhbGlkKCkg
Y29uc3QgeyBzZXRGbGFnKElzU3R5bGVBdHRyaWJ1dGVWYWxpZEZsYWcpOyB9CiAgICAgdm9pZCBj
bGVhcklzU3R5bGVBdHRyaWJ1dGVWYWxpZCgpIHsgY2xlYXJGbGFnKElzU3R5bGVBdHRyaWJ1dGVW
YWxpZEZsYWcpOyB9Ci0gICAgYm9vbCBpc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpIGNv
bnN0IHsgcmV0dXJuIGdldEZsYWcoSXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGVGbGFnKTsg
fQotICAgIHZvaWQgc2V0SXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoYm9vbCBmKSB7IHNl
dEZsYWcoZiwgSXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGVGbGFnKTsgfQotICAgIHZvaWQg
c2V0SXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoKSBjb25zdCB7IHNldEZsYWcoSXNTeW5j
aHJvbml6aW5nU3R5bGVBdHRyaWJ1dGVGbGFnKTsgfQotICAgIHZvaWQgY2xlYXJJc1N5bmNocm9u
aXppbmdTdHlsZUF0dHJpYnV0ZSgpIGNvbnN0IHsgY2xlYXJGbGFnKElzU3luY2hyb25pemluZ1N0
eWxlQXR0cmlidXRlRmxhZyk7IH0KIAogI2lmIEVOQUJMRShTVkcpCiAgICAgYm9vbCBhcmVTVkdB
dHRyaWJ1dGVzVmFsaWQoKSBjb25zdCB7IHJldHVybiBnZXRGbGFnKEFyZVNWR0F0dHJpYnV0ZXNW
YWxpZEZsYWcpOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVtZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuY3BwCmluZGV4IDc2NTc0OTRh
YjE1YWU5ZTdiNzVmMTJhZGZlNTNiYzg1NjFhZjNjMWUuLjY2MTY5OWUyNTgyZTJiMzVjNDg3M2Ey
ZGQ1YzZjNzk4Nzc4Y2IzMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVs
ZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZUVsZW1lbnQuY3BwCkBAIC00
NCw2ICs0NCw4IEBAIHN0YXRpYyBib29sIGlzQ1NTKEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0IEF0
b21pY1N0cmluZyYgdHlwZSkKICAgICByZXR1cm4gdHlwZS5pc0VtcHR5KCkgfHwgKGVsZW1lbnQt
PmlzSFRNTEVsZW1lbnQoKSA/IGVxdWFsSWdub3JpbmdDYXNlKHR5cGUsICJ0ZXh0L2NzcyIpIDog
KHR5cGUgPT0gInRleHQvY3NzIikpOwogfQogCitjb25zdCBTdHlsZWRFbGVtZW50KiBTdHlsZUVs
ZW1lbnQ6OnNfc3R5bGVTdHlsZUF0dHJpYnV0ZVN5bmNocm9uaXppbmdOb2RlOworCiBTdHlsZUVs
ZW1lbnQ6OlN0eWxlRWxlbWVudChEb2N1bWVudCogZG9jdW1lbnQsIGJvb2wgY3JlYXRlZEJ5UGFy
c2VyKQogICAgIDogbV9jcmVhdGVkQnlQYXJzZXIoY3JlYXRlZEJ5UGFyc2VyKQogICAgICwgbV9s
b2FkaW5nKGZhbHNlKQpAQCAtNTUsNiArNTcsOSBAQCBTdHlsZUVsZW1lbnQ6OlN0eWxlRWxlbWVu
dChEb2N1bWVudCogZG9jdW1lbnQsIGJvb2wgY3JlYXRlZEJ5UGFyc2VyKQogCiBTdHlsZUVsZW1l
bnQ6On5TdHlsZUVsZW1lbnQoKQogeworICAgIC8vIEJlY2F1c2UgdGhlIGZsYWcgaXMgc2luZ2xl
dG9uLCBlYWNoIG5vZGUgaXMgcmVzcG9uc2libGUgZm9yIGNsZWFyaW5nIGl0LgorICAgIGlmIChp
c1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpKQorICAgICAgICBjbGVhcklzU3luY2hyb25p
emluZ1N0eWxlQXR0cmlidXRlKCk7CiB9CiAKIHZvaWQgU3R5bGVFbGVtZW50OjppbnNlcnRlZElu
dG9Eb2N1bWVudChEb2N1bWVudCogZG9jdW1lbnQsIEVsZW1lbnQqIGVsZW1lbnQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9k
b20vU3R5bGVFbGVtZW50LmgKaW5kZXggN2NhOTlkYWNkOWM1YmJmMmI1NzhkODlhYTk0Y2YxODhi
M2JlZTZmYy4uNTI4MDY0NjE4NGE2YTA3NTczZDFkNmM1OTllNThiM2YyODFiMmViNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9TdHlsZUVsZW1lbnQuaApAQCAtNTAsOCArNTAsMTQgQEAgcHJvdGVjdGVkOgogICAg
IHZvaWQgZmluaXNoUGFyc2luZ0NoaWxkcmVuKEVsZW1lbnQqKTsKIAogICAgIFJlZlB0cjxDU1NT
dHlsZVNoZWV0PiBtX3NoZWV0OworICAgIGJvb2wgaXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1
dGUoKSBjb25zdDsKIAogcHJpdmF0ZToKKyAgICBzdGF0aWMgY29uc3QgU3R5bGVkRWxlbWVudCog
c19zdHlsZVN0eWxlQXR0cmlidXRlU3luY2hyb25pemluZ05vZGU7CisKKyAgICB2b2lkIHNldElz
U3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCkgY29uc3Q7CisgICAgdm9pZCBjbGVhcklzU3lu
Y2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCkgY29uc3Q7CisKICAgICB2b2lkIGNyZWF0ZVNoZWV0
KEVsZW1lbnQqLCBpbnQgc3RhcnRMaW5lTnVtYmVyLCBjb25zdCBTdHJpbmcmIHRleHQgPSBTdHJp
bmcoKSk7CiAgICAgdm9pZCBwcm9jZXNzKEVsZW1lbnQqKTsKIApAQCAtNjAsNiArNjYsMjEgQEAg
cHJpdmF0ZToKICAgICBpbnQgbV9zdGFydExpbmVOdW1iZXI7CiB9OwogCitpbmxpbmUgdm9pZCBT
dHlsZWRFbGVtZW50OjpzZXRJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpIGNvbnN0Cit7
CisgICAgQVNTRVJUKCFzX3N0eWxlU3R5bGVBdHRyaWJ1dGVTeW5jaHJvbml6aW5nTm9kZSk7Cisg
ICAgc19zdHlsZVN0eWxlQXR0cmlidXRlU3luY2hyb25pemluZ05vZGUgPSB0aGlzOworfQorCitp
bmxpbmUgdm9pZCBTdHlsZWRFbGVtZW50OjpjbGVhcklzU3luY2hyb25pemluZ1N0eWxlQXR0cmli
dXRlKCkgY29uc3QKK3sKKyAgICBBU1NFUlQoc19zdHlsZVN0eWxlQXR0cmlidXRlU3luY2hyb25p
emluZ05vZGUgPT0gdGhpcyk7CisgICAgc19zdHlsZVN0eWxlQXR0cmlidXRlU3luY2hyb25pemlu
Z05vZGUgPSAwOworfQorCitpbmxpbmUgYm9vbCBTdHlsZWRFbGVtZW50Ojppc1N5bmNocm9uaXpp
bmdTdHlsZUF0dHJpYnV0ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIHNfc3R5bGVTdHlsZUF0dHJp
YnV0ZVN5bmNocm9uaXppbmdOb2RlID09IHRoaXM7CiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxFbGVtZW50LmNwcAppbmRleCAwOTJhNzVjNGVmNzcwYjNhNWJlYWQzMjg2NjQzMjQwM2M4
ZjExNzQzLi42MjQxM2NkY2ZlN2E0NGNhNmE4MTI2ZTQzOTM0MmMxZWU5ZTFiZWMzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxFbGVtZW50LmNwcApAQCAtMTE5Myw5ICsxMTkzLDggQEAgdm9pZCBTdHls
ZWRFbGVtZW50Ojpjb3B5Tm9uQXR0cmlidXRlUHJvcGVydGllcyhjb25zdCBFbGVtZW50KiBzb3Vy
Y2VFbGVtZW50KQogICAgIFN0eWxlUHJvcGVydHlTZXQqIGlubGluZVN0eWxlID0gZW5zdXJlSW5s
aW5lU3R5bGVEZWNsKCk7CiAgICAgaW5saW5lU3R5bGUtPmNvcHlQcm9wZXJ0aWVzRnJvbSgqc291
cmNlLT5pbmxpbmVTdHlsZURlY2woKSk7CiAgICAgaW5saW5lU3R5bGUtPnNldFN0cmljdFBhcnNp
bmcoc291cmNlLT5pbmxpbmVTdHlsZURlY2woKS0+dXNlU3RyaWN0UGFyc2luZygpKTsKLQogICAg
IHNldElzU3R5bGVBdHRyaWJ1dGVWYWxpZChzb3VyY2UtPmlzU3R5bGVBdHRyaWJ1dGVWYWxpZCgp
KTsKLSAgICBzZXRJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZShzb3VyY2UtPmlzU3luY2hy
b25pemluZ1N0eWxlQXR0cmlidXRlKCkpOworICAgIEFTU0VSVCghc291cmNlLT5pc1N5bmNocm9u
aXppbmdTdHlsZUF0dHJpYnV0ZSgpKTsKICAgICAKICAgICBFbGVtZW50Ojpjb3B5Tm9uQXR0cmli
dXRlUHJvcGVydGllcyhzb3VyY2VFbGVtZW50KTsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>128620</attachid>
            <date>2012-02-23 17:44:05 -0800</date>
            <delta_ts>2012-02-27 16:39:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-79313-20120224104403.patch</filename>
            <type>text/plain</type>
            <size>9054</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA4NTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmJiZWY1YmVjOTZhZTg0
NzNlYjQ1NWE2ZDMyZDhmZGE5NDU1MmQ2Mi4uMWNjZDY3ZDJlZmM1ZjViZDJlMjBhODI4MzM5YWJh
NzRmYjg4NTY4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEyLTAyLTIzICBNT1JJ
VEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgorCisgICAgICAgIElzU3luY2hyb25pemlu
Z1N0eWxlQXR0cmlidXRlRmxhZyBjb3VsZCBiZSBwdXJnZWQuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTMxMworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSBzdHlsZSBzeW5jaW5nIHByb2Nlc3MgaXNu
J3QgcmUtZW50cmFudCwgc28gd2UgY2FuIHJlcGFsY2UgdGhlCisgICAgICAgIHBlci1pbnN0YW5j
ZSBmbGFnIHdpdGggYSBzaW5nbGV0b24gZmxhZy4gVGhlIGZsYWcgaXMgbm8gbG9uZ2VyIGEKKyAg
ICAgICAgcGFydCBvZiB0aGUgYml0bWFzaywgbm93IGl0IGNhbiBiZSBwdXNoZWQgZG93biB0byBT
dHlsZWRFbGVtZW50LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gTm8gYmVoYXZpb3IgY2hhbmdl
LgorCisgICAgICAgICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6aXNTeW5j
aHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChX
ZWJDb3JlOjpFbGVtZW50Ojp3aWxsTW9kaWZ5QXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmU6
OkVsZW1lbnQ6OmRpZE1vZGlmeUF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50
OjpkaWRSZW1vdmVBdHRyaWJ1dGUpOgorICAgICAgICAqIGRvbS9Ob2RlLmg6CisgICAgICAgICog
ZG9tL1N0eWxlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJD
b3JlOjpTdHlsZWRFbGVtZW50Ojp+U3R5bGVkRWxlbWVudCk6CisgICAgICAgICogZG9tL1N0eWxl
ZEVsZW1lbnQuaDoKKyAgICAgICAgKFN0eWxlZEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6
U3R5bGVkRWxlbWVudDo6c2V0SXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUpOgorICAgICAg
ICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRFbGVtZW50OjpjbGVhcklzU3lu
Y2hyb25pemluZ1N0eWxlQXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVsZW1l
bnQ6OmlzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKToKKyAgICAgICAgKiBodG1sL0hUTUxF
bGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVsZW1lbnQ6OmNvcHlOb25BdHRy
aWJ1dGVQcm9wZXJ0aWVzKToKKwogMjAxMi0wMi0yMiAgQW5kcmVhcyBLbGluZyAgPGF3ZXNvbWVr
bGluZ0BhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBwYXJzaW5nIGNvbG9yIHByZXNlbnRhdGlv
biBhdHRyaWJ1dGVzIGRvIGxlc3MgcG9pbnRsZXNzIHdvcmsuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAK
aW5kZXggOWYyNjE5NTcyNDIxZGEzOGMzOWViMWMxOGJkOTNjZTc2Mzg1YjlhMy4uMmM5NjJjMGU3
MDVhNDIyNGQ5NmRiYzZmNWU4MTA4Y2M5YjJmZGE4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApA
QCAtNjIsNiArNjIsNyBAQAogI2luY2x1ZGUgIlJlbmRlcldpZGdldC5oIgogI2luY2x1ZGUgIlNl
dHRpbmdzLmgiCiAjaW5jbHVkZSAiU2hhZG93Um9vdC5oIgorI2luY2x1ZGUgIlN0eWxlZEVsZW1l
bnQuaCIKICNpbmNsdWRlICJUZXh0LmgiCiAjaW5jbHVkZSAiVGV4dEl0ZXJhdG9yLmgiCiAjaW5j
bHVkZSAiV2ViS2l0TXV0YXRpb25PYnNlcnZlci5oIgpAQCAtMTk4Niw2ICsxOTg3LDExIEBAIGJv
b2wgRWxlbWVudDo6ZmFzdEF0dHJpYnV0ZUxvb2t1cEFsbG93ZWQoY29uc3QgUXVhbGlmaWVkTmFt
ZSYgbmFtZSkgY29uc3QKIH0KICNlbmRpZgogCitzdGF0aWMgaW5saW5lIGJvb2wgaXNTeW5jaHJv
bml6aW5nU3R5bGVBdHRyaWJ1dGUoY29uc3QgRWxlbWVudCogZWxlbWVudCkKK3sKKyAgICByZXR1
cm4gZWxlbWVudC0+aXNTdHlsZWRFbGVtZW50KCkgJiYgc3RhdGljX2Nhc3Q8Y29uc3QgU3R5bGVk
RWxlbWVudCo+KGVsZW1lbnQpLT5pc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpOworfQor
CiB2b2lkIEVsZW1lbnQ6OndpbGxNb2RpZnlBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYg
bmFtZSwgY29uc3QgQXRvbWljU3RyaW5nJiBvbGRWYWx1ZSwgY29uc3QgQXRvbWljU3RyaW5nJiBu
ZXdWYWx1ZSkKIHsKICAgICBkb2N1bWVudCgpLT5pbmNET01UcmVlVmVyc2lvbigpOwpAQCAtMTk5
NiwxNCArMjAwMiwxNCBAQCB2b2lkIEVsZW1lbnQ6OndpbGxNb2RpZnlBdHRyaWJ1dGUoY29uc3Qg
UXVhbGlmaWVkTmFtZSYgbmFtZSwgY29uc3QgQXRvbWljU3RyaW5nJgogICAgICAgICB1cGRhdGVO
YW1lKG9sZFZhbHVlLCBuZXdWYWx1ZSk7CiAKICNpZiBFTkFCTEUoTVVUQVRJT05fT0JTRVJWRVJT
KQotICAgIGlmICghaXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoKSkgeworICAgIGlmICgh
aXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUodGhpcykpIHsKICAgICAgICAgaWYgKE93blB0
cjxNdXRhdGlvbk9ic2VydmVySW50ZXJlc3RHcm91cD4gcmVjaXBpZW50cyA9IE11dGF0aW9uT2Jz
ZXJ2ZXJJbnRlcmVzdEdyb3VwOjpjcmVhdGVGb3JBdHRyaWJ1dGVzTXV0YXRpb24odGhpcywgbmFt
ZSkpCiAgICAgICAgICAgICByZWNpcGllbnRzLT5lbnF1ZXVlTXV0YXRpb25SZWNvcmQoTXV0YXRp
b25SZWNvcmQ6OmNyZWF0ZUF0dHJpYnV0ZXModGhpcywgbmFtZSwgb2xkVmFsdWUpKTsKICAgICB9
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCi0gICAgaWYgKCFpc1N5bmNocm9uaXpp
bmdTdHlsZUF0dHJpYnV0ZSgpKQorICAgIGlmICghaXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1
dGUodGhpcykpCiAgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbE1vZGlmeURP
TUF0dHIoZG9jdW1lbnQoKSwgdGhpcywgb2xkVmFsdWUsIG5ld1ZhbHVlKTsKICNlbmRpZgogfQpA
QCAtMjAxMiw3ICsyMDE4LDcgQEAgdm9pZCBFbGVtZW50OjpkaWRNb2RpZnlBdHRyaWJ1dGUoQXR0
cmlidXRlKiBhdHRyKQogewogICAgIGF0dHJpYnV0ZUNoYW5nZWQoYXR0cik7CiAKLSAgICBpZiAo
IWlzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCkpIHsKKyAgICBpZiAoIWlzU3luY2hyb25p
emluZ1N0eWxlQXR0cmlidXRlKHRoaXMpKSB7CiAgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbjo6ZGlkTW9kaWZ5RE9NQXR0cihkb2N1bWVudCgpLCB0aGlzLCBhdHRyLT5uYW1lKCkubG9j
YWxOYW1lKCksIGF0dHItPnZhbHVlKCkpOwogICAgICAgICBkaXNwYXRjaFN1YnRyZWVNb2RpZmll
ZEV2ZW50KCk7CiAgICAgfQpAQCAtMjAyOCw3ICsyMDM0LDcgQEAgdm9pZCBFbGVtZW50OjpkaWRS
ZW1vdmVBdHRyaWJ1dGUoQXR0cmlidXRlKiBhdHRyKQogICAgIGF0dHJpYnV0ZUNoYW5nZWQoYXR0
cik7CiAgICAgYXR0ci0+c2V0VmFsdWUoc2F2ZWRWYWx1ZSk7CiAKLSAgICBpZiAoIWlzU3luY2hy
b25pemluZ1N0eWxlQXR0cmlidXRlKCkpIHsKKyAgICBpZiAoIWlzU3luY2hyb25pemluZ1N0eWxl
QXR0cmlidXRlKHRoaXMpKSB7CiAgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlk
UmVtb3ZlRE9NQXR0cihkb2N1bWVudCgpLCB0aGlzLCBhdHRyLT5uYW1lKCkubG9jYWxOYW1lKCkp
OwogICAgICAgICBkaXNwYXRjaFN1YnRyZWVNb2RpZmllZEV2ZW50KCk7CiAgICAgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2Rl
LmgKaW5kZXggZTQyZWE1MGE1NjUzYWNmN2VhMTFhNzU0YmQ5OGU3YWU3MTNkODcyZC4uNjI5NzZj
ZmE4NzZjMWZhZGZhODdjNzQxNjZkNGEzMWQxNjNhOGUwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL05vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oCkBAIC02Njgs
NyArNjY4LDYgQEAgcHJpdmF0ZToKICAgICAgICAgLy8gYmUgc3RvcmVkIGluIHRoZSBzYW1lIG1l
bW9yeSB3b3JkIGFzIHRoZSBOb2RlIGJpdHMgYWJvdmUuCiAgICAgICAgIElzUGFyc2luZ0NoaWxk
cmVuRmluaXNoZWRGbGFnID0gMSA8PCAxNywgLy8gRWxlbWVudAogICAgICAgICBJc1N0eWxlQXR0
cmlidXRlVmFsaWRGbGFnID0gMSA8PCAxOCwgLy8gU3R5bGVkRWxlbWVudAotICAgICAgICBJc1N5
bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZUZsYWcgPSAxIDw8IDE5LCAvLyBTdHlsZWRFbGVtZW50
CiAjaWYgRU5BQkxFKFNWRykKICAgICAgICAgQXJlU1ZHQXR0cmlidXRlc1ZhbGlkRmxhZyA9IDEg
PDwgMjAsIC8vIEVsZW1lbnQKICAgICAgICAgSXNTeW5jaHJvbml6aW5nU1ZHQXR0cmlidXRlc0Zs
YWcgPSAxIDw8IDIxLCAvLyBTVkdFbGVtZW50CkBAIC03OTAsMTAgKzc4OSw2IEBAIHByb3RlY3Rl
ZDoKICAgICB2b2lkIHNldElzU3R5bGVBdHRyaWJ1dGVWYWxpZChib29sIGYpIHsgc2V0RmxhZyhm
LCBJc1N0eWxlQXR0cmlidXRlVmFsaWRGbGFnKTsgfQogICAgIHZvaWQgc2V0SXNTdHlsZUF0dHJp
YnV0ZVZhbGlkKCkgY29uc3QgeyBzZXRGbGFnKElzU3R5bGVBdHRyaWJ1dGVWYWxpZEZsYWcpOyB9
CiAgICAgdm9pZCBjbGVhcklzU3R5bGVBdHRyaWJ1dGVWYWxpZCgpIHsgY2xlYXJGbGFnKElzU3R5
bGVBdHRyaWJ1dGVWYWxpZEZsYWcpOyB9Ci0gICAgYm9vbCBpc1N5bmNocm9uaXppbmdTdHlsZUF0
dHJpYnV0ZSgpIGNvbnN0IHsgcmV0dXJuIGdldEZsYWcoSXNTeW5jaHJvbml6aW5nU3R5bGVBdHRy
aWJ1dGVGbGFnKTsgfQotICAgIHZvaWQgc2V0SXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUo
Ym9vbCBmKSB7IHNldEZsYWcoZiwgSXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGVGbGFnKTsg
fQotICAgIHZvaWQgc2V0SXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoKSBjb25zdCB7IHNl
dEZsYWcoSXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGVGbGFnKTsgfQotICAgIHZvaWQgY2xl
YXJJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpIGNvbnN0IHsgY2xlYXJGbGFnKElzU3lu
Y2hyb25pemluZ1N0eWxlQXR0cmlidXRlRmxhZyk7IH0KIAogI2lmIEVOQUJMRShTVkcpCiAgICAg
Ym9vbCBhcmVTVkdBdHRyaWJ1dGVzVmFsaWQoKSBjb25zdCB7IHJldHVybiBnZXRGbGFnKEFyZVNW
R0F0dHJpYnV0ZXNWYWxpZEZsYWcpOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20v
U3R5bGVkRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAK
aW5kZXggNzZkNDhlNmYwM2M5OWI5MmEyYjY4MDM1ZGY3N2U5ODVhYTg3OGQ5NC4uOGQ4NTM0YTg2
ZmJjMmE0ZjEyODFlNDE2ZTE5YzQxMGViMDYzOTBmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRF
bGVtZW50LmNwcApAQCAtNDYsNiArNDYsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5n
IG5hbWVzcGFjZSBIVE1MTmFtZXM7CiAKK2NvbnN0IFN0eWxlZEVsZW1lbnQqIFN0eWxlZEVsZW1l
bnQ6OnNfc3R5bGVTdHlsZUF0dHJpYnV0ZVN5bmNocm9uaXppbmdOb2RlOworCiB2b2lkIFN0eWxl
ZEVsZW1lbnQ6OnVwZGF0ZVN0eWxlQXR0cmlidXRlKCkgY29uc3QKIHsKICAgICBBU1NFUlQoIWlz
U3R5bGVBdHRyaWJ1dGVWYWxpZCgpKTsKQEAgLTU5LDYgKzYxLDEwIEBAIHZvaWQgU3R5bGVkRWxl
bWVudDo6dXBkYXRlU3R5bGVBdHRyaWJ1dGUoKSBjb25zdAogU3R5bGVkRWxlbWVudDo6flN0eWxl
ZEVsZW1lbnQoKQogewogICAgIGRlc3Ryb3lJbmxpbmVTdHlsZURlY2woKTsKKworICAgIC8vIEJl
Y2F1c2UgdGhlIGZsYWcgaXMgc2luZ2xldG9uLCBlYWNoIG5vZGUgaXMgcmVzcG9uc2libGUgZm9y
IGNsZWFyaW5nIGl0LgorICAgIGlmIChpc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpKQor
ICAgICAgICBjbGVhcklzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCk7CiB9CiAKIHZvaWQg
U3R5bGVkRWxlbWVudDo6YXR0cmlidXRlQ2hhbmdlZChBdHRyaWJ1dGUqIGF0dHIpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
ZG9tL1N0eWxlZEVsZW1lbnQuaAppbmRleCA3NmQ0NTQ0ZDhlNTI5ODQ0NGIwNWE1ZTk0ODQ1ZDA4
Yzk0YTkwYmI2Li42YzVjM2E1NjcyN2U5ZmFmNTQ5ZTRhZDg3YzA3NGQ3NTg1ZWJiNmRjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmgKQEAgLTQ3LDYgKzQ3LDcgQEAgcHVibGljOgogICAg
IGJvb2wgc2V0SW5saW5lU3R5bGVQcm9wZXJ0eShpbnQgcHJvcGVydHlJRCwgZG91YmxlIHZhbHVl
LCBDU1NQcmltaXRpdmVWYWx1ZTo6VW5pdFR5cGVzLCBib29sIGltcG9ydGFudCA9IGZhbHNlKTsK
ICAgICBib29sIHNldElubGluZVN0eWxlUHJvcGVydHkoaW50IHByb3BlcnR5SUQsIGNvbnN0IFN0
cmluZyYgdmFsdWUsIGJvb2wgaW1wb3J0YW50ID0gZmFsc2UpOwogICAgIGJvb2wgcmVtb3ZlSW5s
aW5lU3R5bGVQcm9wZXJ0eShpbnQgcHJvcGVydHlJRCk7CisgICAgYm9vbCBpc1N5bmNocm9uaXpp
bmdTdHlsZUF0dHJpYnV0ZSgpIGNvbnN0OwogICAgIAogICAgIHZpcnR1YWwgQ1NTU3R5bGVEZWNs
YXJhdGlvbiogc3R5bGUoKSBPVkVSUklERSB7IHJldHVybiBlbnN1cmVJbmxpbmVTdHlsZURlY2wo
KS0+ZW5zdXJlSW5saW5lQ1NTU3R5bGVEZWNsYXJhdGlvbih0aGlzKTsgfQogCkBAIC03OSw2ICs4
MCwxMiBAQCBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBjbGFzc0F0dHJpYnV0ZUNoYW5nZWQoY29uc3Qg
QXRvbWljU3RyaW5nJiBuZXdDbGFzc1N0cmluZyk7CiAKIHByaXZhdGU6CisKKyAgICBzdGF0aWMg
Y29uc3QgU3R5bGVkRWxlbWVudCogc19zdHlsZVN0eWxlQXR0cmlidXRlU3luY2hyb25pemluZ05v
ZGU7CisKKyAgICB2b2lkIHNldElzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCkgY29uc3Q7
CisgICAgdm9pZCBjbGVhcklzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCkgY29uc3Q7CisK
ICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlU3R5bGVBdHRyaWJ1dGUoKSBjb25zdDsKICAgICB2b2lk
IGlubGluZVN0eWxlQ2hhbmdlZCgpOwogCkBAIC0xMjUsNiArMTMyLDI0IEBAIGlubGluZSB2b2lk
IFN0eWxlZEVsZW1lbnQ6OmFkZFByb3BlcnR5VG9BdHRyaWJ1dGVTdHlsZShTdHlsZVByb3BlcnR5
U2V0KiBzdHlsZSwKICAgICBzdHlsZS0+c2V0UHJvcGVydHkocHJvcGVydHlJRCwgdmFsdWUsIGZh
bHNlLCBkb2N1bWVudCgpLT5lbGVtZW50U2hlZXQoKSk7CiB9CiAKKworaW5saW5lIHZvaWQgU3R5
bGVkRWxlbWVudDo6c2V0SXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoKSBjb25zdAorewor
ICAgIEFTU0VSVCghc19zdHlsZVN0eWxlQXR0cmlidXRlU3luY2hyb25pemluZ05vZGUpOworICAg
IHNfc3R5bGVTdHlsZUF0dHJpYnV0ZVN5bmNocm9uaXppbmdOb2RlID0gdGhpczsKK30KKworaW5s
aW5lIHZvaWQgU3R5bGVkRWxlbWVudDo6Y2xlYXJJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0
ZSgpIGNvbnN0Cit7CisgICAgQVNTRVJUKHNfc3R5bGVTdHlsZUF0dHJpYnV0ZVN5bmNocm9uaXpp
bmdOb2RlID09IHRoaXMpOworICAgIHNfc3R5bGVTdHlsZUF0dHJpYnV0ZVN5bmNocm9uaXppbmdO
b2RlID0gMDsKK30KKworaW5saW5lIGJvb2wgU3R5bGVkRWxlbWVudDo6aXNTeW5jaHJvbml6aW5n
U3R5bGVBdHRyaWJ1dGUoKSBjb25zdAoreworICAgIHJldHVybiBzX3N0eWxlU3R5bGVBdHRyaWJ1
dGVTeW5jaHJvbml6aW5nTm9kZSA9PSB0aGlzOworfQorCiB9IC8vbmFtZXNwYWNlCiAKICNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAppbmRleCAwOTJhNzVjNGVmNzcwYjNhNWJl
YWQzMjg2NjQzMjQwM2M4ZjExNzQzLi42MjQxM2NkY2ZlN2E0NGNhNmE4MTI2ZTQzOTM0MmMxZWU5
ZTFiZWMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcApAQCAtMTE5Myw5ICsxMTkz
LDggQEAgdm9pZCBTdHlsZWRFbGVtZW50Ojpjb3B5Tm9uQXR0cmlidXRlUHJvcGVydGllcyhjb25z
dCBFbGVtZW50KiBzb3VyY2VFbGVtZW50KQogICAgIFN0eWxlUHJvcGVydHlTZXQqIGlubGluZVN0
eWxlID0gZW5zdXJlSW5saW5lU3R5bGVEZWNsKCk7CiAgICAgaW5saW5lU3R5bGUtPmNvcHlQcm9w
ZXJ0aWVzRnJvbSgqc291cmNlLT5pbmxpbmVTdHlsZURlY2woKSk7CiAgICAgaW5saW5lU3R5bGUt
PnNldFN0cmljdFBhcnNpbmcoc291cmNlLT5pbmxpbmVTdHlsZURlY2woKS0+dXNlU3RyaWN0UGFy
c2luZygpKTsKLQogICAgIHNldElzU3R5bGVBdHRyaWJ1dGVWYWxpZChzb3VyY2UtPmlzU3R5bGVB
dHRyaWJ1dGVWYWxpZCgpKTsKLSAgICBzZXRJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZShz
b3VyY2UtPmlzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCkpOworICAgIEFTU0VSVCghc291
cmNlLT5pc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpKTsKICAgICAKICAgICBFbGVtZW50
Ojpjb3B5Tm9uQXR0cmlidXRlUHJvcGVydGllcyhzb3VyY2VFbGVtZW50KTsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>129127</attachid>
            <date>2012-02-27 16:39:36 -0800</date>
            <delta_ts>2012-02-29 14:31:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-79313.diff</filename>
            <type>text/plain</type>
            <size>9610</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA5MDk0NjU5Li5mOTViZGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTItMDItMjcgIEFuZHJlYXMgS2xpbmcgIDxhd2Vzb21la2xpbmdAYXBwbGUuY29tPgor
CisgICAgICAgIElzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlRmxhZyBjb3VsZCBiZSBwdXJn
ZWQuCisgICAgICAgIDxodHRwOi8vd2Via2l0Lm9yZy9iLzc5MzEzPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlIHdlcmUgdXNpbmcgSXNTeW5jaHJv
bml6aW5nU3R5bGVBdHRyaWJ1dGVGbGFnIHRvIHByZXZlbnQgdmFyaW91cyB0aGluZ3MgZnJvbQor
ICAgICAgICBoYXBwZW5pbmcgYmVsb3cgc2V0QXR0cmlidXRlKCkgd2hlbiBzZXJpYWxpemluZyB0
aGUgInN0eWxlIiBhdHRyaWJ1dGUgYmFzZWQgb24KKyAgICAgICAgYW4gZWxlbWVudCdzIGlubGlu
ZSBzdHlsZS4KKworICAgICAgICBTaW1wbGlmeSB0aGUgd2hvbGUgdGhpbmcgYnkgYWRkaW5nIGEg
d2F5IHRvIHNldCBhbiBhdHRyaWJ1dGUgd2l0aG91dCB0cmlnZ2VyaW5nCisgICAgICAgIGFueSBj
YWxsYmFja3MgKEVsZW1lbnRBdHRyaWJ1dGVEYXRhOjpzZXRBdHRyaWJ1dGVXaXRob3V0Q2FsbGJh
Y2tzLikKKyAgICAgICAgVGhpcyByZW1vdmVzIHRoZSBuZWVkIGZvciBJc1N5bmNocm9uaXppbmdT
dHlsZUF0dHJpYnV0ZUZsYWcgaW4gdGhlIGZpcnN0IHBsYWNlCisgICAgICAgIGFuZCBtYWtlcyBT
dHlsZWRFbGVtZW50Ojp1cGRhdGVTdHlsZUF0dHJpYnV0ZSgpIGEgYml0IGNoZWFwZXIgdG8gYm9v
dC4KKworICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1l
bnQ6OndpbGxNb2RpZnlBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6ZGlk
TW9kaWZ5QXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmRpZFJlbW92ZUF0
dHJpYnV0ZSk6CisgICAgICAgICogZG9tL0VsZW1lbnRBdHRyaWJ1dGVEYXRhLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkVsZW1lbnRBdHRyaWJ1dGVEYXRhOjpzZXRBdHRyaWJ1dGVXaXRob3V0Q2Fs
bGJhY2tzKToKKyAgICAgICAgKiBkb20vRWxlbWVudEF0dHJpYnV0ZURhdGEuaDoKKyAgICAgICAg
KiBkb20vTm9kZS5oOgorICAgICAgICAqIGRvbS9TdHlsZWRFbGVtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlZEVsZW1lbnQ6OnVwZGF0ZVN0eWxlQXR0cmlidXRlKToKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlZEVsZW1lbnQ6OmF0dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAqIGh0
bWwvSFRNTEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6Y29w
eU5vbkF0dHJpYnV0ZVByb3BlcnRpZXMpOgorCiAyMDEyLTAyLTI3ICBDaHJpcyBSb2dlcnMgIDxj
cm9nZXJzQGdvb2dsZS5jb20+CiAKICAgICAgICAgSW1wbGVtZW50IHN0YXRpYyBjb21wcmVzc2lv
biBjdXJ2ZSBwYXJhbWV0ZXJzIGZvciBEeW5hbWljc0NvbXByZXNzb3JOb2RlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudC5jcHAKaW5kZXggODk2ZWFiYi4uYTBjOTljMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApA
QCAtMjAwNSwxNSArMjAwNSwxMiBAQCB2b2lkIEVsZW1lbnQ6OndpbGxNb2RpZnlBdHRyaWJ1dGUo
Y29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSwgY29uc3QgQXRvbWljU3RyaW5nJgogICAgICAgICB1
cGRhdGVOYW1lKG9sZFZhbHVlLCBuZXdWYWx1ZSk7CiAKICNpZiBFTkFCTEUoTVVUQVRJT05fT0JT
RVJWRVJTKQotICAgIGlmICghaXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoKSkgewotICAg
ICAgICBpZiAoT3duUHRyPE11dGF0aW9uT2JzZXJ2ZXJJbnRlcmVzdEdyb3VwPiByZWNpcGllbnRz
ID0gTXV0YXRpb25PYnNlcnZlckludGVyZXN0R3JvdXA6OmNyZWF0ZUZvckF0dHJpYnV0ZXNNdXRh
dGlvbih0aGlzLCBuYW1lKSkKLSAgICAgICAgICAgIHJlY2lwaWVudHMtPmVucXVldWVNdXRhdGlv
blJlY29yZChNdXRhdGlvblJlY29yZDo6Y3JlYXRlQXR0cmlidXRlcyh0aGlzLCBuYW1lLCBvbGRW
YWx1ZSkpOwotICAgIH0KKyAgICBpZiAoT3duUHRyPE11dGF0aW9uT2JzZXJ2ZXJJbnRlcmVzdEdy
b3VwPiByZWNpcGllbnRzID0gTXV0YXRpb25PYnNlcnZlckludGVyZXN0R3JvdXA6OmNyZWF0ZUZv
ckF0dHJpYnV0ZXNNdXRhdGlvbih0aGlzLCBuYW1lKSkKKyAgICAgICAgcmVjaXBpZW50cy0+ZW5x
dWV1ZU11dGF0aW9uUmVjb3JkKE11dGF0aW9uUmVjb3JkOjpjcmVhdGVBdHRyaWJ1dGVzKHRoaXMs
IG5hbWUsIG9sZFZhbHVlKSk7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCi0gICAg
aWYgKCFpc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpKQotICAgICAgICBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OndpbGxNb2RpZnlET01BdHRyKGRvY3VtZW50KCksIHRoaXMsIG9sZFZh
bHVlLCBuZXdWYWx1ZSk7CisgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsTW9kaWZ5
RE9NQXR0cihkb2N1bWVudCgpLCB0aGlzLCBvbGRWYWx1ZSwgbmV3VmFsdWUpOwogI2VuZGlmCiB9
CiAKQEAgLTIwMjEsMTAgKzIwMTgsOCBAQCB2b2lkIEVsZW1lbnQ6OmRpZE1vZGlmeUF0dHJpYnV0
ZShBdHRyaWJ1dGUqIGF0dHIpCiB7CiAgICAgYXR0cmlidXRlQ2hhbmdlZChhdHRyKTsKIAotICAg
IGlmICghaXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoKSkgewotICAgICAgICBJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZE1vZGlmeURPTUF0dHIoZG9jdW1lbnQoKSwgdGhpcywgYXR0
ci0+bmFtZSgpLmxvY2FsTmFtZSgpLCBhdHRyLT52YWx1ZSgpKTsKLSAgICAgICAgZGlzcGF0Y2hT
dWJ0cmVlTW9kaWZpZWRFdmVudCgpOwotICAgIH0KKyAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmRpZE1vZGlmeURPTUF0dHIoZG9jdW1lbnQoKSwgdGhpcywgYXR0ci0+bmFtZSgpLmxvY2Fs
TmFtZSgpLCBhdHRyLT52YWx1ZSgpKTsKKyAgICBkaXNwYXRjaFN1YnRyZWVNb2RpZmllZEV2ZW50
KCk7CiB9CiAKIHZvaWQgRWxlbWVudDo6ZGlkUmVtb3ZlQXR0cmlidXRlKEF0dHJpYnV0ZSogYXR0
cikKQEAgLTIwMzcsMTAgKzIwMzIsOCBAQCB2b2lkIEVsZW1lbnQ6OmRpZFJlbW92ZUF0dHJpYnV0
ZShBdHRyaWJ1dGUqIGF0dHIpCiAgICAgYXR0cmlidXRlQ2hhbmdlZChhdHRyKTsKICAgICBhdHRy
LT5zZXRWYWx1ZShzYXZlZFZhbHVlKTsKIAotICAgIGlmICghaXNTeW5jaHJvbml6aW5nU3R5bGVB
dHRyaWJ1dGUoKSkgewotICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlbW92
ZURPTUF0dHIoZG9jdW1lbnQoKSwgdGhpcywgYXR0ci0+bmFtZSgpLmxvY2FsTmFtZSgpKTsKLSAg
ICAgICAgZGlzcGF0Y2hTdWJ0cmVlTW9kaWZpZWRFdmVudCgpOwotICAgIH0KKyAgICBJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZFJlbW92ZURPTUF0dHIoZG9jdW1lbnQoKSwgdGhpcywgYXR0
ci0+bmFtZSgpLmxvY2FsTmFtZSgpKTsKKyAgICBkaXNwYXRjaFN1YnRyZWVNb2RpZmllZEV2ZW50
KCk7CiB9CiAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRBdHRyaWJ1
dGVEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50QXR0cmlidXRlRGF0YS5jcHAK
aW5kZXggNzE0NTdmNC4uYTllZTBkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0Vs
ZW1lbnRBdHRyaWJ1dGVEYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudEF0
dHJpYnV0ZURhdGEuY3BwCkBAIC0xODEsNCArMTgxLDI2IEBAIHZvaWQgRWxlbWVudEF0dHJpYnV0
ZURhdGE6OnJlcGxhY2VBdHRyaWJ1dGUoc2l6ZV90IGluZGV4LCBQYXNzUmVmUHRyPEF0dHJpYnV0
ZT4KICAgICBlbGVtZW50LT5kaWRNb2RpZnlBdHRyaWJ1dGUoYXR0cmlidXRlLmdldCgpKTsKIH0K
IAordm9pZCBFbGVtZW50QXR0cmlidXRlRGF0YTo6c2V0QXR0cmlidXRlV2l0aG91dENhbGxiYWNr
cyhjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lLCBjb25zdCBBdG9taWNTdHJpbmcmIHZhbHVlKQor
eworICAgIHNpemVfdCBpbmRleCA9IGdldEF0dHJpYnV0ZUl0ZW1JbmRleChuYW1lKTsKKworICAg
IGlmICh2YWx1ZS5pc051bGwoKSkgeworICAgICAgICBpZiAoaW5kZXggIT0gbm90Rm91bmQpCisg
ICAgICAgICAgICByZW1vdmVBdHRyaWJ1dGUoaW5kZXgsIDApOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCisgICAgaWYgKGluZGV4ID09IG5vdEZvdW5kKSB7CisgICAgICAgIGFkZEF0dHJpYnV0
ZShBdHRyaWJ1dGU6OmNyZWF0ZShuYW1lLCB2YWx1ZSksIDApOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCisgICAgQXR0cmlidXRlKiBhdHRyaWJ1dGUgPSBhdHRyaWJ1dGVJdGVtKGluZGV4KTsK
KyAgICBpZiAoQXR0ciogYXR0ck5vZGUgPSBhdHRyaWJ1dGUtPmF0dHIoKSkKKyAgICAgICAgYXR0
ck5vZGUtPnNldFZhbHVlKHZhbHVlKTsKKyAgICBlbHNlCisgICAgICAgIGF0dHJpYnV0ZS0+c2V0
VmFsdWUodmFsdWUpOworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudEF0dHJpYnV0ZURhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50QXR0cmlidXRl
RGF0YS5oCmluZGV4IGJlMTQ1NjEuLjU1YmRjNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FbGVtZW50QXR0cmlidXRlRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVt
ZW50QXR0cmlidXRlRGF0YS5oCkBAIC02OSw2ICs2OSw4IEBAIHB1YmxpYzoKICAgICBib29sIGhh
c0lEKCkgY29uc3QgeyByZXR1cm4gIW1faWRGb3JTdHlsZVJlc29sdXRpb24uaXNOdWxsKCk7IH0K
ICAgICBib29sIGhhc0NsYXNzKCkgY29uc3QgeyByZXR1cm4gIW1fY2xhc3NOYW1lcy5pc051bGwo
KTsgfQogCisgICAgdm9pZCBzZXRBdHRyaWJ1dGVXaXRob3V0Q2FsbGJhY2tzKGNvbnN0IFF1YWxp
ZmllZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21pY1N0cmluZyYgdmFsdWUpOworCiBwcml2YXRlOgog
ICAgIGZyaWVuZCBjbGFzcyBFbGVtZW50OwogICAgIGZyaWVuZCBjbGFzcyBOYW1lZE5vZGVNYXA7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oIGIvU291cmNlL1dlYkNvcmUv
ZG9tL05vZGUuaAppbmRleCA0NTYxNmExLi43NjllNDgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKQEAgLTkxLDcg
KzkxLDcgQEAgY2xhc3MgSFRNTFByb3BlcnRpZXNDb2xsZWN0aW9uOwogCiB0eXBlZGVmIGludCBF
eGNlcHRpb25Db2RlOwogCi1jb25zdCBpbnQgbm9kZVN0eWxlQ2hhbmdlU2hpZnQgPSAyMzsKK2Nv
bnN0IGludCBub2RlU3R5bGVDaGFuZ2VTaGlmdCA9IDIyOwogCiAvLyBTeW50aGV0aWNTdHlsZUNo
YW5nZSBtZWFucyB0aGF0IHdlIG5lZWQgdG8gZ28gdGhyb3VnaCB0aGUgZW50aXJlIHN0eWxlIGNo
YW5nZSBsb2dpYyBldmVuIHRob3VnaAogLy8gbm8gc3R5bGUgcHJvcGVydHkgaGFzIGFjdHVhbGx5
IGNoYW5nZWQuIEl0IGlzIHVzZWQgdG8gcmVzdHJ1Y3R1cmUgdGhlIHRyZWUgd2hlbiwgZm9yIGlu
c3RhbmNlLApAQCAtNjczLDIyICs2NzMsMjEgQEAgcHJpdmF0ZToKICAgICAgICAgLy8gYmUgc3Rv
cmVkIGluIHRoZSBzYW1lIG1lbW9yeSB3b3JkIGFzIHRoZSBOb2RlIGJpdHMgYWJvdmUuCiAgICAg
ICAgIElzUGFyc2luZ0NoaWxkcmVuRmluaXNoZWRGbGFnID0gMSA8PCAxNywgLy8gRWxlbWVudAog
ICAgICAgICBJc1N0eWxlQXR0cmlidXRlVmFsaWRGbGFnID0gMSA8PCAxOCwgLy8gU3R5bGVkRWxl
bWVudAotICAgICAgICBJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZUZsYWcgPSAxIDw8IDE5
LCAvLyBTdHlsZWRFbGVtZW50CiAjaWYgRU5BQkxFKFNWRykKLSAgICAgICAgQXJlU1ZHQXR0cmli
dXRlc1ZhbGlkRmxhZyA9IDEgPDwgMjAsIC8vIEVsZW1lbnQKLSAgICAgICAgSXNTeW5jaHJvbml6
aW5nU1ZHQXR0cmlidXRlc0ZsYWcgPSAxIDw8IDIxLCAvLyBTVkdFbGVtZW50Ci0gICAgICAgIEhh
c1NWR1JhcmVEYXRhRmxhZyA9IDEgPDwgMjIsIC8vIFNWR0VsZW1lbnQKKyAgICAgICAgQXJlU1ZH
QXR0cmlidXRlc1ZhbGlkRmxhZyA9IDEgPDwgMTksIC8vIEVsZW1lbnQKKyAgICAgICAgSXNTeW5j
aHJvbml6aW5nU1ZHQXR0cmlidXRlc0ZsYWcgPSAxIDw8IDIwLCAvLyBTVkdFbGVtZW50CisgICAg
ICAgIEhhc1NWR1JhcmVEYXRhRmxhZyA9IDEgPDwgMjEsIC8vIFNWR0VsZW1lbnQKICNlbmRpZgog
CiAgICAgICAgIFN0eWxlQ2hhbmdlTWFzayA9IDEgPDwgbm9kZVN0eWxlQ2hhbmdlU2hpZnQgfCAx
IDw8IChub2RlU3R5bGVDaGFuZ2VTaGlmdCArIDEpLAogCi0gICAgICAgIFNlbGZPckFuY2VzdG9y
SGFzRGlyQXV0b0ZsYWcgPSAxIDw8IDI1LAotICAgICAgICBIYXNDdXN0b21XaWxsT3JEaWRSZWNh
bGNTdHlsZUZsYWcgPSAxIDw8IDI2LAotICAgICAgICBIYXNDdXN0b21TdHlsZUZvclJlbmRlcmVy
RmxhZyA9IDEgPDwgMjcsCisgICAgICAgIFNlbGZPckFuY2VzdG9ySGFzRGlyQXV0b0ZsYWcgPSAx
IDw8IDI0LAorICAgICAgICBIYXNDdXN0b21XaWxsT3JEaWRSZWNhbGNTdHlsZUZsYWcgPSAxIDw8
IDI1LAorICAgICAgICBIYXNDdXN0b21TdHlsZUZvclJlbmRlcmVyRmxhZyA9IDEgPDwgMjYsCiAK
LSAgICAgICAgSGFzTmFtZUZsYWcgPSAxIDw8IDI4LAorICAgICAgICBIYXNOYW1lRmxhZyA9IDEg
PDwgMjcsCiAKLSAgICAgICAgQXR0cmlidXRlU3R5bGVEaXJ0eUZsYWcgPSAxIDw8IDMxLAorICAg
ICAgICBBdHRyaWJ1dGVTdHlsZURpcnR5RmxhZyA9IDEgPDwgMjgsCiAKICNpZiBFTkFCTEUoU1ZH
KQogICAgICAgICBEZWZhdWx0Tm9kZUZsYWdzID0gSXNQYXJzaW5nQ2hpbGRyZW5GaW5pc2hlZEZs
YWcgfCBJc1N0eWxlQXR0cmlidXRlVmFsaWRGbGFnIHwgQXJlU1ZHQXR0cmlidXRlc1ZhbGlkRmxh
ZwpAQCAtNzk1LDEwICs3OTQsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBzZXRJc1N0eWxlQXR0
cmlidXRlVmFsaWQoYm9vbCBmKSB7IHNldEZsYWcoZiwgSXNTdHlsZUF0dHJpYnV0ZVZhbGlkRmxh
Zyk7IH0KICAgICB2b2lkIHNldElzU3R5bGVBdHRyaWJ1dGVWYWxpZCgpIGNvbnN0IHsgc2V0Rmxh
ZyhJc1N0eWxlQXR0cmlidXRlVmFsaWRGbGFnKTsgfQogICAgIHZvaWQgY2xlYXJJc1N0eWxlQXR0
cmlidXRlVmFsaWQoKSB7IGNsZWFyRmxhZyhJc1N0eWxlQXR0cmlidXRlVmFsaWRGbGFnKTsgfQot
ICAgIGJvb2wgaXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoKSBjb25zdCB7IHJldHVybiBn
ZXRGbGFnKElzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlRmxhZyk7IH0KLSAgICB2b2lkIHNl
dElzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKGJvb2wgZikgeyBzZXRGbGFnKGYsIElzU3lu
Y2hyb25pemluZ1N0eWxlQXR0cmlidXRlRmxhZyk7IH0KLSAgICB2b2lkIHNldElzU3luY2hyb25p
emluZ1N0eWxlQXR0cmlidXRlKCkgY29uc3QgeyBzZXRGbGFnKElzU3luY2hyb25pemluZ1N0eWxl
QXR0cmlidXRlRmxhZyk7IH0KLSAgICB2b2lkIGNsZWFySXNTeW5jaHJvbml6aW5nU3R5bGVBdHRy
aWJ1dGUoKSBjb25zdCB7IGNsZWFyRmxhZyhJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZUZs
YWcpOyB9CiAKICNpZiBFTkFCTEUoU1ZHKQogICAgIGJvb2wgYXJlU1ZHQXR0cmlidXRlc1ZhbGlk
KCkgY29uc3QgeyByZXR1cm4gZ2V0RmxhZyhBcmVTVkdBdHRyaWJ1dGVzVmFsaWRGbGFnKTsgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCmluZGV4IDk5ZTdmMzUuLjNlYjcwNjkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAKQEAgLTUwLDEwICs1MCw4IEBAIHZvaWQg
U3R5bGVkRWxlbWVudDo6dXBkYXRlU3R5bGVBdHRyaWJ1dGUoKSBjb25zdAogewogICAgIEFTU0VS
VCghaXNTdHlsZUF0dHJpYnV0ZVZhbGlkKCkpOwogICAgIHNldElzU3R5bGVBdHRyaWJ1dGVWYWxp
ZCgpOwotICAgIHNldElzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCk7CiAgICAgaWYgKFN0
eWxlUHJvcGVydHlTZXQqIGlubGluZVN0eWxlID0gaW5saW5lU3R5bGVEZWNsKCkpCi0gICAgICAg
IGNvbnN0X2Nhc3Q8U3R5bGVkRWxlbWVudCo+KHRoaXMpLT5zZXRBdHRyaWJ1dGUoc3R5bGVBdHRy
LCBpbmxpbmVTdHlsZS0+YXNUZXh0KCkpOwotICAgIGNsZWFySXNTeW5jaHJvbml6aW5nU3R5bGVB
dHRyaWJ1dGUoKTsKKyAgICAgICAgYXR0cmlidXRlRGF0YSgpLT5zZXRBdHRyaWJ1dGVXaXRob3V0
Q2FsbGJhY2tzKHN0eWxlQXR0ciwgaW5saW5lU3R5bGUtPmFzVGV4dCgpKTsKIH0KIAogU3R5bGVk
RWxlbWVudDo6flN0eWxlZEVsZW1lbnQoKQpAQCAtNjMsOCArNjEsNyBAQCBTdHlsZWRFbGVtZW50
Ojp+U3R5bGVkRWxlbWVudCgpCiAKIHZvaWQgU3R5bGVkRWxlbWVudDo6YXR0cmlidXRlQ2hhbmdl
ZChBdHRyaWJ1dGUqIGF0dHIpCiB7Ci0gICAgaWYgKCEoYXR0ci0+bmFtZSgpID09IHN0eWxlQXR0
ciAmJiBpc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpKSkKLSAgICAgICAgcGFyc2VBdHRy
aWJ1dGUoYXR0cik7CisgICAgcGFyc2VBdHRyaWJ1dGUoYXR0cik7CiAKICAgICBpZiAoaXNQcmVz
ZW50YXRpb25BdHRyaWJ1dGUoYXR0cikpIHsKICAgICAgICAgc2V0QXR0cmlidXRlU3R5bGVEaXJ0
eSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAppbmRleCA5NTVlOGFkLi5mMTJlZTA5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcApAQCAtMTE5Miw4ICsxMTkyLDcgQEAg
dm9pZCBTdHlsZWRFbGVtZW50Ojpjb3B5Tm9uQXR0cmlidXRlUHJvcGVydGllcyhjb25zdCBFbGVt
ZW50KiBzb3VyY2VFbGVtZW50KQogICAgIGlubGluZVN0eWxlLT5zZXRTdHJpY3RQYXJzaW5nKHNv
dXJjZS0+aW5saW5lU3R5bGVEZWNsKCktPnVzZVN0cmljdFBhcnNpbmcoKSk7CiAKICAgICBzZXRJ
c1N0eWxlQXR0cmlidXRlVmFsaWQoc291cmNlLT5pc1N0eWxlQXR0cmlidXRlVmFsaWQoKSk7Ci0g
ICAgc2V0SXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoc291cmNlLT5pc1N5bmNocm9uaXpp
bmdTdHlsZUF0dHJpYnV0ZSgpKTsKLSAgICAKKwogICAgIEVsZW1lbnQ6OmNvcHlOb25BdHRyaWJ1
dGVQcm9wZXJ0aWVzKHNvdXJjZUVsZW1lbnQpOwogfQogCg==
</data>
<flag name="review"
          id="131716"
          type_id="1"
          status="-"
          setter="morrita"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>129519</attachid>
            <date>2012-02-29 14:31:48 -0800</date>
            <delta_ts>2012-02-29 17:03:40 -0800</delta_ts>
            <desc>Patch v2</desc>
            <filename>bug-79313-v2.diff</filename>
            <type>text/plain</type>
            <size>10632</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmM2YyZTc2Li5kMTgxOTczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTItMDItMjkgIEFuZHJlYXMgS2xpbmcgIDxhd2Vzb21la2xpbmdAYXBwbGUuY29tPgor
CisgICAgICAgIElzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlRmxhZyBjb3VsZCBiZSBwdXJn
ZWQuCisgICAgICAgIDxodHRwOi8vd2Via2l0Lm9yZy9iLzc5MzEzPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlIHdlcmUgdXNpbmcgSXNTeW5jaHJv
bml6aW5nU3R5bGVBdHRyaWJ1dGVGbGFnIHRvIHByZXZlbnQgdmFyaW91cyB0aGluZ3MgZnJvbQor
ICAgICAgICBoYXBwZW5pbmcgYmVsb3cgc2V0QXR0cmlidXRlKCkgd2hlbiBzZXJpYWxpemluZyB0
aGUgInN0eWxlIiBhdHRyaWJ1dGUgYmFzZWQgb24KKyAgICAgICAgYW4gZWxlbWVudCdzIGlubGlu
ZSBzdHlsZS4KKworICAgICAgICBTaW1wbGlmeSB0aGUgd2hvbGUgdGhpbmcgYnkgYWRkaW5nIGEg
d2F5IHRvIHNldCBhbiBhdHRyaWJ1dGUgd2l0aG91dCB0cmlnZ2VyaW5nCisgICAgICAgIGFueSBj
YWxsYmFja3MgKGEgJ25vdGlmeUNoYW5nZWQnIGFyZ3VtZW50IHRvIEVsZW1lbnQ6OnNldEF0dHJp
YnV0ZSgpLikKKyAgICAgICAgVGhpcyByZW1vdmVzIHRoZSBuZWVkIGZvciBJc1N5bmNocm9uaXpp
bmdTdHlsZUF0dHJpYnV0ZUZsYWcgaW4gdGhlIGZpcnN0IHBsYWNlCisgICAgICAgIGFuZCBtYWtl
cyBTdHlsZWRFbGVtZW50Ojp1cGRhdGVTdHlsZUF0dHJpYnV0ZSgpIGEgYml0IGNoZWFwZXIgdG8g
Ym9vdC4KKworICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVs
ZW1lbnQ6OnNldEF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpzZXRBdHRy
aWJ1dGVJbnRlcm5hbCk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50Ojp3aWxsTW9kaWZ5QXR0
cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmRpZE1vZGlmeUF0dHJpYnV0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpkaWRSZW1vdmVBdHRyaWJ1dGUpOgorICAgICAg
ICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgICogZG9tL05vZGUuaDoKKyAgICAgICAgKiBkb20v
U3R5bGVkRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRFbGVtZW50Ojp1cGRh
dGVTdHlsZUF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRFbGVtZW50OjphdHRy
aWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlZEVsZW1lbnQ6OmNvcHlOb25BdHRyaWJ1dGVQcm9wZXJ0aWVzKToKKwog
MjAxMi0wMi0yOSAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAg
QXBwbHlpbmcgcmVnaW9uIHN0eWxlIHNob3VsZCBub3QgbmVlZCB0byBhY2Nlc3MgcGFyZW50IHJ1
bGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5kZXggOThjMjkzMS4uMTZmOTEzNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50LmNwcApAQCAtNjI0LDEyICs2MjQsMTIgQEAgdm9pZCBFbGVtZW50OjpzZXRBdHRy
aWJ1dGUoY29uc3QgQXRvbWljU3RyaW5nJiBuYW1lLCBjb25zdCBBdG9taWNTdHJpbmcmIHZhbHVl
LAogICAgIHNldEF0dHJpYnV0ZUludGVybmFsKGluZGV4LCBxTmFtZSwgdmFsdWUpOwogfQogCi12
b2lkIEVsZW1lbnQ6OnNldEF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lLCBjb25z
dCBBdG9taWNTdHJpbmcmIHZhbHVlKQordm9pZCBFbGVtZW50OjpzZXRBdHRyaWJ1dGUoY29uc3Qg
UXVhbGlmaWVkTmFtZSYgbmFtZSwgY29uc3QgQXRvbWljU3RyaW5nJiB2YWx1ZSwgYm9vbCBub3Rp
ZnlDaGFuZ2VkKQogewotICAgIHNldEF0dHJpYnV0ZUludGVybmFsKGVuc3VyZVVwZGF0ZWRBdHRy
aWJ1dGVEYXRhKCktPmdldEF0dHJpYnV0ZUl0ZW1JbmRleChuYW1lKSwgbmFtZSwgdmFsdWUpOwor
ICAgIHNldEF0dHJpYnV0ZUludGVybmFsKGVuc3VyZVVwZGF0ZWRBdHRyaWJ1dGVEYXRhKCktPmdl
dEF0dHJpYnV0ZUl0ZW1JbmRleChuYW1lKSwgbmFtZSwgdmFsdWUsIG5vdGlmeUNoYW5nZWQpOwog
fQogCi1pbmxpbmUgdm9pZCBFbGVtZW50OjpzZXRBdHRyaWJ1dGVJbnRlcm5hbChzaXplX3QgaW5k
ZXgsIGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21pY1N0cmluZyYgdmFsdWUp
CitpbmxpbmUgdm9pZCBFbGVtZW50OjpzZXRBdHRyaWJ1dGVJbnRlcm5hbChzaXplX3QgaW5kZXgs
IGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21pY1N0cmluZyYgdmFsdWUsIGJv
b2wgbm90aWZ5Q2hhbmdlZCkKIHsKICAgICBFbGVtZW50QXR0cmlidXRlRGF0YSogYXR0cmlidXRl
RGF0YSA9ICZtX2F0dHJpYnV0ZU1hcC0+bV9hdHRyaWJ1dGVEYXRhOwogICAgIEF0dHJpYnV0ZSog
b2xkID0gaW5kZXggIT0gbm90Rm91bmQgPyBhdHRyaWJ1dGVEYXRhLT5hdHRyaWJ1dGVJdGVtKGlu
ZGV4KSA6IDA7CkBAIC02NDQsMTQgKzY0NCwxNiBAQCBpbmxpbmUgdm9pZCBFbGVtZW50OjpzZXRB
dHRyaWJ1dGVJbnRlcm5hbChzaXplX3QgaW5kZXgsIGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbQog
ICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgd2lsbE1vZGlmeUF0dHJpYnV0ZShuYW1lLCBv
bGQgPyBvbGQtPnZhbHVlKCkgOiBudWxsQXRvbSwgdmFsdWUpOworICAgIGlmIChub3RpZnlDaGFu
Z2VkKQorICAgICAgICB3aWxsTW9kaWZ5QXR0cmlidXRlKG5hbWUsIG9sZCA/IG9sZC0+dmFsdWUo
KSA6IG51bGxBdG9tLCB2YWx1ZSk7CiAKICAgICBpZiAoQXR0ciogYXR0ck5vZGUgPSBvbGQtPmF0
dHIoKSkKICAgICAgICAgYXR0ck5vZGUtPnNldFZhbHVlKHZhbHVlKTsKICAgICBlbHNlCiAgICAg
ICAgIG9sZC0+c2V0VmFsdWUodmFsdWUpOwogCi0gICAgZGlkTW9kaWZ5QXR0cmlidXRlKG9sZCk7
CisgICAgaWYgKG5vdGlmeUNoYW5nZWQpCisgICAgICAgIGRpZE1vZGlmeUF0dHJpYnV0ZShvbGQp
OwogfQogCiB2b2lkIEVsZW1lbnQ6OmF0dHJpYnV0ZUNoYW5nZWQoQXR0cmlidXRlKiBhdHRyKQpA
QCAtMTkzOSwxNSArMTk0MSwxMiBAQCB2b2lkIEVsZW1lbnQ6OndpbGxNb2RpZnlBdHRyaWJ1dGUo
Y29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSwgY29uc3QgQXRvbWljU3RyaW5nJgogICAgICAgICB1
cGRhdGVOYW1lKG9sZFZhbHVlLCBuZXdWYWx1ZSk7CiAKICNpZiBFTkFCTEUoTVVUQVRJT05fT0JT
RVJWRVJTKQotICAgIGlmICghaXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoKSkgewotICAg
ICAgICBpZiAoT3duUHRyPE11dGF0aW9uT2JzZXJ2ZXJJbnRlcmVzdEdyb3VwPiByZWNpcGllbnRz
ID0gTXV0YXRpb25PYnNlcnZlckludGVyZXN0R3JvdXA6OmNyZWF0ZUZvckF0dHJpYnV0ZXNNdXRh
dGlvbih0aGlzLCBuYW1lKSkKLSAgICAgICAgICAgIHJlY2lwaWVudHMtPmVucXVldWVNdXRhdGlv
blJlY29yZChNdXRhdGlvblJlY29yZDo6Y3JlYXRlQXR0cmlidXRlcyh0aGlzLCBuYW1lLCBvbGRW
YWx1ZSkpOwotICAgIH0KKyAgICBpZiAoT3duUHRyPE11dGF0aW9uT2JzZXJ2ZXJJbnRlcmVzdEdy
b3VwPiByZWNpcGllbnRzID0gTXV0YXRpb25PYnNlcnZlckludGVyZXN0R3JvdXA6OmNyZWF0ZUZv
ckF0dHJpYnV0ZXNNdXRhdGlvbih0aGlzLCBuYW1lKSkKKyAgICAgICAgcmVjaXBpZW50cy0+ZW5x
dWV1ZU11dGF0aW9uUmVjb3JkKE11dGF0aW9uUmVjb3JkOjpjcmVhdGVBdHRyaWJ1dGVzKHRoaXMs
IG5hbWUsIG9sZFZhbHVlKSk7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCi0gICAg
aWYgKCFpc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpKQotICAgICAgICBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OndpbGxNb2RpZnlET01BdHRyKGRvY3VtZW50KCksIHRoaXMsIG9sZFZh
bHVlLCBuZXdWYWx1ZSk7CisgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsTW9kaWZ5
RE9NQXR0cihkb2N1bWVudCgpLCB0aGlzLCBvbGRWYWx1ZSwgbmV3VmFsdWUpOwogI2VuZGlmCiB9
CiAKQEAgLTE5NTUsMTAgKzE5NTQsOCBAQCB2b2lkIEVsZW1lbnQ6OmRpZE1vZGlmeUF0dHJpYnV0
ZShBdHRyaWJ1dGUqIGF0dHIpCiB7CiAgICAgYXR0cmlidXRlQ2hhbmdlZChhdHRyKTsKIAotICAg
IGlmICghaXNTeW5jaHJvbml6aW5nU3R5bGVBdHRyaWJ1dGUoKSkgewotICAgICAgICBJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZE1vZGlmeURPTUF0dHIoZG9jdW1lbnQoKSwgdGhpcywgYXR0
ci0+bmFtZSgpLmxvY2FsTmFtZSgpLCBhdHRyLT52YWx1ZSgpKTsKLSAgICAgICAgZGlzcGF0Y2hT
dWJ0cmVlTW9kaWZpZWRFdmVudCgpOwotICAgIH0KKyAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmRpZE1vZGlmeURPTUF0dHIoZG9jdW1lbnQoKSwgdGhpcywgYXR0ci0+bmFtZSgpLmxvY2Fs
TmFtZSgpLCBhdHRyLT52YWx1ZSgpKTsKKyAgICBkaXNwYXRjaFN1YnRyZWVNb2RpZmllZEV2ZW50
KCk7CiB9CiAKIHZvaWQgRWxlbWVudDo6ZGlkUmVtb3ZlQXR0cmlidXRlKEF0dHJpYnV0ZSogYXR0
cikKQEAgLTE5NzEsMTAgKzE5NjgsOCBAQCB2b2lkIEVsZW1lbnQ6OmRpZFJlbW92ZUF0dHJpYnV0
ZShBdHRyaWJ1dGUqIGF0dHIpCiAgICAgYXR0cmlidXRlQ2hhbmdlZChhdHRyKTsKICAgICBhdHRy
LT5zZXRWYWx1ZShzYXZlZFZhbHVlKTsKIAotICAgIGlmICghaXNTeW5jaHJvbml6aW5nU3R5bGVB
dHRyaWJ1dGUoKSkgewotICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlbW92
ZURPTUF0dHIoZG9jdW1lbnQoKSwgdGhpcywgYXR0ci0+bmFtZSgpLmxvY2FsTmFtZSgpKTsKLSAg
ICAgICAgZGlzcGF0Y2hTdWJ0cmVlTW9kaWZpZWRFdmVudCgpOwotICAgIH0KKyAgICBJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZFJlbW92ZURPTUF0dHIoZG9jdW1lbnQoKSwgdGhpcywgYXR0
ci0+bmFtZSgpLmxvY2FsTmFtZSgpKTsKKyAgICBkaXNwYXRjaFN1YnRyZWVNb2RpZmllZEV2ZW50
KCk7CiB9CiAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggYzIzMWNiZS4uZTM3YzAyZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRWxlbWVudC5oCkBAIC0xMTMsNyArMTEzLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBoYXNB
dHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYpIGNvbnN0OwogICAgIGNvbnN0IEF0b21pY1N0
cmluZyYgZ2V0QXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmKSBjb25zdDsKLSAgICB2b2lk
IHNldEF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiwgY29uc3QgQXRvbWljU3RyaW5nJiB2
YWx1ZSk7CisgICAgdm9pZCBzZXRBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYsIGNvbnN0
IEF0b21pY1N0cmluZyYgdmFsdWUsIGJvb2wgbm90aWZ5Q2hhbmdlZCA9IHRydWUpOwogICAgIHZv
aWQgcmVtb3ZlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmKTsKIAogICAgIC8vIFR5cGVk
IGdldHRlcnMgYW5kIHNldHRlcnMgZm9yIGxhbmd1YWdlIGJpbmRpbmdzLgpAQCAtNDI5LDcgKzQy
OSw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBOb2RlVHlwZSBub2RlVHlwZSgpIGNvbnN0Owog
ICAgIHZpcnR1YWwgYm9vbCBjaGlsZFR5cGVBbGxvd2VkKE5vZGVUeXBlKSBjb25zdDsKIAotICAg
IHZvaWQgc2V0QXR0cmlidXRlSW50ZXJuYWwoc2l6ZV90IGluZGV4LCBjb25zdCBRdWFsaWZpZWRO
YW1lJiwgY29uc3QgQXRvbWljU3RyaW5nJiB2YWx1ZSk7CisgICAgdm9pZCBzZXRBdHRyaWJ1dGVJ
bnRlcm5hbChzaXplX3QgaW5kZXgsIGNvbnN0IFF1YWxpZmllZE5hbWUmLCBjb25zdCBBdG9taWNT
dHJpbmcmIHZhbHVlLCBib29sIG5vdGlmeUNoYW5nZWQgPSB0cnVlKTsKIAogI2lmbmRlZiBOREVC
VUcKICAgICB2aXJ0dWFsIHZvaWQgZm9ybWF0Rm9yRGVidWdnZXIoY2hhciogYnVmZmVyLCB1bnNp
Z25lZCBsZW5ndGgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUu
aCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKaW5kZXggNWFmODIxNi4uNTYxZTE0MyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vTm9kZS5oCkBAIC04OCw3ICs4OCw3IEBAIGNsYXNzIEhUTUxQcm9wZXJ0aWVzQ29sbGVjdGlv
bjsKIAogdHlwZWRlZiBpbnQgRXhjZXB0aW9uQ29kZTsKIAotY29uc3QgaW50IG5vZGVTdHlsZUNo
YW5nZVNoaWZ0ID0gMjM7Citjb25zdCBpbnQgbm9kZVN0eWxlQ2hhbmdlU2hpZnQgPSAyMjsKIAog
Ly8gU3ludGhldGljU3R5bGVDaGFuZ2UgbWVhbnMgdGhhdCB3ZSBuZWVkIHRvIGdvIHRocm91Z2gg
dGhlIGVudGlyZSBzdHlsZSBjaGFuZ2UgbG9naWMgZXZlbiB0aG91Z2gKIC8vIG5vIHN0eWxlIHBy
b3BlcnR5IGhhcyBhY3R1YWxseSBjaGFuZ2VkLiBJdCBpcyB1c2VkIHRvIHJlc3RydWN0dXJlIHRo
ZSB0cmVlIHdoZW4sIGZvciBpbnN0YW5jZSwKQEAgLTY1NCwyMiArNjU0LDIxIEBAIHByaXZhdGU6
CiAgICAgICAgIC8vIGJlIHN0b3JlZCBpbiB0aGUgc2FtZSBtZW1vcnkgd29yZCBhcyB0aGUgTm9k
ZSBiaXRzIGFib3ZlLgogICAgICAgICBJc1BhcnNpbmdDaGlsZHJlbkZpbmlzaGVkRmxhZyA9IDEg
PDwgMTcsIC8vIEVsZW1lbnQKICAgICAgICAgSXNTdHlsZUF0dHJpYnV0ZVZhbGlkRmxhZyA9IDEg
PDwgMTgsIC8vIFN0eWxlZEVsZW1lbnQKLSAgICAgICAgSXNTeW5jaHJvbml6aW5nU3R5bGVBdHRy
aWJ1dGVGbGFnID0gMSA8PCAxOSwgLy8gU3R5bGVkRWxlbWVudAogI2lmIEVOQUJMRShTVkcpCi0g
ICAgICAgIEFyZVNWR0F0dHJpYnV0ZXNWYWxpZEZsYWcgPSAxIDw8IDIwLCAvLyBFbGVtZW50Ci0g
ICAgICAgIElzU3luY2hyb25pemluZ1NWR0F0dHJpYnV0ZXNGbGFnID0gMSA8PCAyMSwgLy8gU1ZH
RWxlbWVudAotICAgICAgICBIYXNTVkdSYXJlRGF0YUZsYWcgPSAxIDw8IDIyLCAvLyBTVkdFbGVt
ZW50CisgICAgICAgIEFyZVNWR0F0dHJpYnV0ZXNWYWxpZEZsYWcgPSAxIDw8IDE5LCAvLyBFbGVt
ZW50CisgICAgICAgIElzU3luY2hyb25pemluZ1NWR0F0dHJpYnV0ZXNGbGFnID0gMSA8PCAyMCwg
Ly8gU1ZHRWxlbWVudAorICAgICAgICBIYXNTVkdSYXJlRGF0YUZsYWcgPSAxIDw8IDIxLCAvLyBT
VkdFbGVtZW50CiAjZW5kaWYKIAogICAgICAgICBTdHlsZUNoYW5nZU1hc2sgPSAxIDw8IG5vZGVT
dHlsZUNoYW5nZVNoaWZ0IHwgMSA8PCAobm9kZVN0eWxlQ2hhbmdlU2hpZnQgKyAxKSwKIAotICAg
ICAgICBTZWxmT3JBbmNlc3Rvckhhc0RpckF1dG9GbGFnID0gMSA8PCAyNSwKLSAgICAgICAgSGFz
Q3VzdG9tV2lsbE9yRGlkUmVjYWxjU3R5bGVGbGFnID0gMSA8PCAyNiwKLSAgICAgICAgSGFzQ3Vz
dG9tU3R5bGVGb3JSZW5kZXJlckZsYWcgPSAxIDw8IDI3LAorICAgICAgICBTZWxmT3JBbmNlc3Rv
ckhhc0RpckF1dG9GbGFnID0gMSA8PCAyNCwKKyAgICAgICAgSGFzQ3VzdG9tV2lsbE9yRGlkUmVj
YWxjU3R5bGVGbGFnID0gMSA8PCAyNSwKKyAgICAgICAgSGFzQ3VzdG9tU3R5bGVGb3JSZW5kZXJl
ckZsYWcgPSAxIDw8IDI2LAogCi0gICAgICAgIEhhc05hbWVGbGFnID0gMSA8PCAyOCwKKyAgICAg
ICAgSGFzTmFtZUZsYWcgPSAxIDw8IDI3LAogCi0gICAgICAgIEF0dHJpYnV0ZVN0eWxlRGlydHlG
bGFnID0gMSA8PCAzMSwKKyAgICAgICAgQXR0cmlidXRlU3R5bGVEaXJ0eUZsYWcgPSAxIDw8IDI4
LAogCiAjaWYgRU5BQkxFKFNWRykKICAgICAgICAgRGVmYXVsdE5vZGVGbGFncyA9IElzUGFyc2lu
Z0NoaWxkcmVuRmluaXNoZWRGbGFnIHwgSXNTdHlsZUF0dHJpYnV0ZVZhbGlkRmxhZyB8IEFyZVNW
R0F0dHJpYnV0ZXNWYWxpZEZsYWcKQEAgLTc3NSwxMCArNzc0LDYgQEAgcHJvdGVjdGVkOgogICAg
IHZvaWQgc2V0SXNTdHlsZUF0dHJpYnV0ZVZhbGlkKGJvb2wgZikgeyBzZXRGbGFnKGYsIElzU3R5
bGVBdHRyaWJ1dGVWYWxpZEZsYWcpOyB9CiAgICAgdm9pZCBzZXRJc1N0eWxlQXR0cmlidXRlVmFs
aWQoKSBjb25zdCB7IHNldEZsYWcoSXNTdHlsZUF0dHJpYnV0ZVZhbGlkRmxhZyk7IH0KICAgICB2
b2lkIGNsZWFySXNTdHlsZUF0dHJpYnV0ZVZhbGlkKCkgeyBjbGVhckZsYWcoSXNTdHlsZUF0dHJp
YnV0ZVZhbGlkRmxhZyk7IH0KLSAgICBib29sIGlzU3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRl
KCkgY29uc3QgeyByZXR1cm4gZ2V0RmxhZyhJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZUZs
YWcpOyB9Ci0gICAgdm9pZCBzZXRJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZShib29sIGYp
IHsgc2V0RmxhZyhmLCBJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZUZsYWcpOyB9Ci0gICAg
dm9pZCBzZXRJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpIGNvbnN0IHsgc2V0RmxhZyhJ
c1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZUZsYWcpOyB9Ci0gICAgdm9pZCBjbGVhcklzU3lu
Y2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCkgY29uc3QgeyBjbGVhckZsYWcoSXNTeW5jaHJvbml6
aW5nU3R5bGVBdHRyaWJ1dGVGbGFnKTsgfQogCiAjaWYgRU5BQkxFKFNWRykKICAgICBib29sIGFy
ZVNWR0F0dHJpYnV0ZXNWYWxpZCgpIGNvbnN0IHsgcmV0dXJuIGdldEZsYWcoQXJlU1ZHQXR0cmli
dXRlc1ZhbGlkRmxhZyk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRF
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcAppbmRleCAz
ODEwMTdkLi4xMDZjMjI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCkBAIC01
MCwxMCArNTAsOCBAQCB2b2lkIFN0eWxlZEVsZW1lbnQ6OnVwZGF0ZVN0eWxlQXR0cmlidXRlKCkg
Y29uc3QKIHsKICAgICBBU1NFUlQoIWlzU3R5bGVBdHRyaWJ1dGVWYWxpZCgpKTsKICAgICBzZXRJ
c1N0eWxlQXR0cmlidXRlVmFsaWQoKTsKLSAgICBzZXRJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJp
YnV0ZSgpOwogICAgIGlmIChTdHlsZVByb3BlcnR5U2V0KiBpbmxpbmVTdHlsZSA9IGlubGluZVN0
eWxlRGVjbCgpKQotICAgICAgICBjb25zdF9jYXN0PFN0eWxlZEVsZW1lbnQqPih0aGlzKS0+c2V0
QXR0cmlidXRlKHN0eWxlQXR0ciwgaW5saW5lU3R5bGUtPmFzVGV4dCgpKTsKLSAgICBjbGVhcklz
U3luY2hyb25pemluZ1N0eWxlQXR0cmlidXRlKCk7CisgICAgICAgIGNvbnN0X2Nhc3Q8U3R5bGVk
RWxlbWVudCo+KHRoaXMpLT5zZXRBdHRyaWJ1dGUoc3R5bGVBdHRyLCBpbmxpbmVTdHlsZS0+YXNU
ZXh0KCksIC8qbm90aWZ5Q2hhbmdlZCovIGZhbHNlKTsKIH0KIAogU3R5bGVkRWxlbWVudDo6flN0
eWxlZEVsZW1lbnQoKQpAQCAtNjMsOCArNjEsNyBAQCBTdHlsZWRFbGVtZW50Ojp+U3R5bGVkRWxl
bWVudCgpCiAKIHZvaWQgU3R5bGVkRWxlbWVudDo6YXR0cmlidXRlQ2hhbmdlZChBdHRyaWJ1dGUq
IGF0dHIpCiB7Ci0gICAgaWYgKCEoYXR0ci0+bmFtZSgpID09IHN0eWxlQXR0ciAmJiBpc1N5bmNo
cm9uaXppbmdTdHlsZUF0dHJpYnV0ZSgpKSkKLSAgICAgICAgcGFyc2VBdHRyaWJ1dGUoYXR0cik7
CisgICAgcGFyc2VBdHRyaWJ1dGUoYXR0cik7CiAKICAgICBpZiAoaXNQcmVzZW50YXRpb25BdHRy
aWJ1dGUoYXR0ci0+bmFtZSgpKSkgewogICAgICAgICBzZXRBdHRyaWJ1dGVTdHlsZURpcnR5KCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCmluZGV4IGFhOTc2ODQuLmQzMzMzYWUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCkBAIC0xMTkyLDggKzExOTIsNyBAQCB2b2lk
IFN0eWxlZEVsZW1lbnQ6OmNvcHlOb25BdHRyaWJ1dGVQcm9wZXJ0aWVzKGNvbnN0IEVsZW1lbnQq
IHNvdXJjZUVsZW1lbnQpCiAgICAgaW5saW5lU3R5bGUtPnNldFN0cmljdFBhcnNpbmcoc291cmNl
LT5pbmxpbmVTdHlsZURlY2woKS0+dXNlU3RyaWN0UGFyc2luZygpKTsKIAogICAgIHNldElzU3R5
bGVBdHRyaWJ1dGVWYWxpZChzb3VyY2UtPmlzU3R5bGVBdHRyaWJ1dGVWYWxpZCgpKTsKLSAgICBz
ZXRJc1N5bmNocm9uaXppbmdTdHlsZUF0dHJpYnV0ZShzb3VyY2UtPmlzU3luY2hyb25pemluZ1N0
eWxlQXR0cmlidXRlKCkpOwotICAgIAorCiAgICAgRWxlbWVudDo6Y29weU5vbkF0dHJpYnV0ZVBy
b3BlcnRpZXMoc291cmNlRWxlbWVudCk7CiB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>