<?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>107488</bug_id>
          
          <creation_ts>2013-01-21 17:04:00 -0800</creation_ts>
          <short_desc>Whitelist should also work for the WebVTT ::cue element without an argument</short_desc>
          <delta_ts>2013-01-22 21:51:49 -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>Media</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>43668</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dima Gorbik">dgorbik</reporter>
          <assigned_to name="Dima Gorbik">dgorbik</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>812473</commentid>
    <comment_count>0</comment_count>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2013-01-21 17:04:00 -0800</bug_when>
    <thetext>Right now whitelist only works if ::cue() has an argument, but should work in all cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812479</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2013-01-21 17:06:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/13057269&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812485</commentid>
    <comment_count>2</comment_count>
      <attachid>183857</attachid>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2013-01-21 17:16:23 -0800</bug_when>
    <thetext>Created attachment 183857
Proposed fix 0.1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812509</commentid>
    <comment_count>3</comment_count>
      <attachid>183863</attachid>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2013-01-21 18:17:44 -0800</bug_when>
    <thetext>Created attachment 183863
Proposed fix 0.2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812511</commentid>
    <comment_count>4</comment_count>
      <attachid>183863</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-01-21 18:21:17 -0800</bug_when>
    <thetext>Comment on attachment 183863
Proposed fix 0.2

Attachment 183863 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/16038274</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812512</commentid>
    <comment_count>5</comment_count>
      <attachid>183863</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-01-21 18:22:42 -0800</bug_when>
    <thetext>Comment on attachment 183863
Proposed fix 0.2

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

&gt; LayoutTests/media/track/track-css-property-whitelist.html:35
&gt;              cueNode = skipNonElements(textTrackDisplayElement(video, &apos;all-nodes&apos;).firstChild);

This should just use firstElementChild instead.

&gt; Source/WebCore/css/RuleSet.cpp:49
&gt;  #include &lt;wtf/MemoryInstrumentationVector.h&gt;
&gt; +#if ENABLE(VIDEO_TRACK)

Need a space before this #if line.

&gt; Source/WebCore/css/RuleSet.cpp:129
&gt; +&gt;&gt;&gt;&gt;&gt;&gt;&gt; whitelist2

Need to delete this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812513</commentid>
    <comment_count>6</comment_count>
      <attachid>183863</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-01-21 18:23:52 -0800</bug_when>
    <thetext>Comment on attachment 183863
Proposed fix 0.2

Attachment 183863 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/16042283</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812516</commentid>
    <comment_count>7</comment_count>
      <attachid>183865</attachid>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2013-01-21 18:32:19 -0800</bug_when>
    <thetext>Created attachment 183865
Proposed fix 0.3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812518</commentid>
    <comment_count>8</comment_count>
      <attachid>183865</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-01-21 18:35:20 -0800</bug_when>
    <thetext>Comment on attachment 183865
Proposed fix 0.3

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

&gt; LayoutTests/media/track/track-css-property-whitelist.html:19
&gt;          function skipNonElements(root)

Can probably delete this function if it’s not used any more. Anyone using it can probably use firstElementChild or nextElementSibling instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812525</commentid>
    <comment_count>9</comment_count>
      <attachid>183867</attachid>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2013-01-21 18:53:32 -0800</bug_when>
    <thetext>Created attachment 183867
Proposed fix 0.4

Nice to have both firstElementChild and nextElementSibling functions.
Thanks for a review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812557</commentid>
    <comment_count>10</comment_count>
      <attachid>183867</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-01-21 20:06:37 -0800</bug_when>
    <thetext>Comment on attachment 183867
Proposed fix 0.4

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

&gt; Source/WebCore/css/RuleSet.cpp:125
&gt; -        if (component-&gt;pseudoType() == CSSSelector::PseudoCue)
&gt; +        if (component-&gt;pseudoType() == CSSSelector::PseudoCue || selector-&gt;value() == TextTrackCue::cueShadowPseudoId())

This looks wrong. If &apos;component&apos; has (m_match == CSSSelector::Tag), value() should not be called as it will perform an incorrect cast.
In fact, CSSSelector::value() should ASSERT(m_match != Tag), just like CSSSelector::tagQName() asserts the opposite.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812569</commentid>
    <comment_count>11</comment_count>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2013-01-21 20:48:49 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 183867 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=183867&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/css/RuleSet.cpp:125
&gt; &gt; -        if (component-&gt;pseudoType() == CSSSelector::PseudoCue)
&gt; &gt; +        if (component-&gt;pseudoType() == CSSSelector::PseudoCue || selector-&gt;value() == TextTrackCue::cueShadowPseudoId())
&gt; 
&gt; This looks wrong. If &apos;component&apos; has (m_match == CSSSelector::Tag), value() should not be called as it will perform an incorrect cast.
&gt; In fact, CSSSelector::value() should ASSERT(m_match != Tag), just like CSSSelector::tagQName() asserts the opposite.

Could you elaborate please. Right now I see that m_data.m_tagQName is used when (m_match == Tag). Even if RareData exists (in the constructor). How is that related to the value which is either m_data.m_rareData-&gt;m_value if RareData exists either m_data.m_value if it doesn&apos;t...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812577</commentid>
    <comment_count>12</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-01-21 21:11:21 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; (In reply to comment #10)
&gt; &gt; (From update of attachment 183867 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=183867&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/css/RuleSet.cpp:125
&gt; &gt; &gt; -        if (component-&gt;pseudoType() == CSSSelector::PseudoCue)
&gt; &gt; &gt; +        if (component-&gt;pseudoType() == CSSSelector::PseudoCue || selector-&gt;value() == TextTrackCue::cueShadowPseudoId())
&gt; &gt; 
&gt; &gt; This looks wrong. If &apos;component&apos; has (m_match == CSSSelector::Tag), value() should not be called as it will perform an incorrect cast.
&gt; &gt; In fact, CSSSelector::value() should ASSERT(m_match != Tag), just like CSSSelector::tagQName() asserts the opposite.
&gt; 
&gt; Could you elaborate please. Right now I see that m_data.m_tagQName is used when (m_match == Tag). Even if RareData exists (in the constructor). How is that related to the value which is either m_data.m_rareData-&gt;m_value if RareData exists either m_data.m_value if it doesn&apos;t...

First of all, it&apos;s calling value() on &apos;selector&apos; in every iteration, not on &apos;component&apos; as it should.

With that fixed, the problem is that m_data&apos;s m_value/m_rareData/m_tagQName all share the same memory location. (m_match == Tag) means that it&apos;s QualifiedNameImpl* is stored there, otherwise it&apos;s either a RareData* or an AtomicStringImpl*.

Calling value() will treat whatever is in the m_data union as if it&apos;s either AtomicStringImpl* or RareData*, even though it could also be a QualifiedNameImpl*.

Basically, the check should look like this:

if (component-&gt;pseudoType() == CSSSelector::PseudoCue || (component-&gt;m_match != Tag &amp;&amp; component-&gt;value() == TextTrackCue::cueShadowPseudoId()))</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>813329</commentid>
    <comment_count>13</comment_count>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2013-01-22 12:59:29 -0800</bug_when>
    <thetext>(In reply to comment #12)

Oh, it&apos;s a union. My bad, never used them before. We should definitely add an ASSERT to getters.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>813509</commentid>
    <comment_count>14</comment_count>
      <attachid>184066</attachid>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2013-01-22 16:01:27 -0800</bug_when>
    <thetext>Created attachment 184066
Proposed fix 0.5</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>813801</commentid>
    <comment_count>15</comment_count>
      <attachid>184066</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-22 21:51:44 -0800</bug_when>
    <thetext>Comment on attachment 184066
Proposed fix 0.5

Clearing flags on attachment: 184066

Committed r140505: &lt;http://trac.webkit.org/changeset/140505&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>813802</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-22 21:51:49 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>183857</attachid>
            <date>2013-01-21 17:16:23 -0800</date>
            <delta_ts>2013-01-21 18:17:44 -0800</delta_ts>
            <desc>Proposed fix 0.1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>6978</size>
            <attacher name="Dima Gorbik">dgorbik</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAzYWY1NDNjLi5iYjgyNTdlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTMtMDEt
MjEgIERpbWEgR29yYmlrICA8ZGdvcmJpa0BhcHBsZS5jb20+CisKKyAgICAgICAgV2hpdGVsaXN0
IHNob3VsZCBhbHNvIHdvcmsgZm9yIHRoZSBXZWJWVFQgOjpjdWUgZWxlbWVudCB3aXRob3V0IGFu
IGFyZ3VtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMDc0ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIG1lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIG1lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRt
bDoKKwogMjAxMy0wMS0yMSAgQ2hhbmdTZW9rIE9oICA8c2hpdmFtaWRvd0BnbWFpbC5jb20+CiAK
ICAgICAgICAgW1RleG1hcF1bR1RLXSBUaGUgcG9zdGVyLWNpcmNsZSBkb2Vzbid0IGFwcGVhci4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13
aGl0ZWxpc3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stY3Nz
LXByb3BlcnR5LXdoaXRlbGlzdC1leHBlY3RlZC50eHQKaW5kZXggMzUyY2Y3NC4uYWYxMzgxMSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stY3NzLXByb3BlcnR5LXdo
aXRlbGlzdC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2st
Y3NzLXByb3BlcnR5LXdoaXRlbGlzdC1leHBlY3RlZC50eHQKQEAgLTUsOSArNSwxMiBAQCBFVkVO
VChzZWVrZWQpCiBUZXN0IHRoYXQgb25seSBhbGxvd2VkIGZvciB0aGUgOjpjdWUgcHNldWRvLWVs
ZW1lbnQgcHJvcGVydGllcyBhcmUgYXBwbGllZCB0byBXZWJWVFQgbm9kZSBvYmplY3RzLgogRVhQ
RUNURUQgKGdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkuY29sb3IgPT0gJ3JnYigyNTUsIDAsIDAp
JykgT0sKIEVYUEVDVEVEIChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLnBhZGRpbmcgPT0gJzBw
eCcpIE9LCitFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS53b3JkU3BhY2luZyA9
PSAnMHB4JykgT0sKIEVYUEVDVEVEIChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLmNvbG9yID09
ICdyZ2IoMjU1LCAwLCAwKScpIE9LCiBFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2Rl
KS5wYWRkaW5nID09ICcwcHgnKSBPSworRVhQRUNURUQgKGdldENvbXB1dGVkU3R5bGUoY3VlTm9k
ZSkud29yZFNwYWNpbmcgPT0gJzBweCcpIE9LCiBFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHlsZShj
dWVOb2RlKS5jb2xvciA9PSAncmdiKDI1NSwgMCwgMCknKSBPSwogRVhQRUNURUQgKGdldENvbXB1
dGVkU3R5bGUoY3VlTm9kZSkucGFkZGluZyA9PSAnMHB4JykgT0sKK0VYUEVDVEVEIChnZXRDb21w
dXRlZFN0eWxlKGN1ZU5vZGUpLndvcmRTcGFjaW5nID09ICcwcHgnKSBPSwogRU5EIE9GIFRFU1QK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stY3NzLXByb3BlcnR5
LXdoaXRlbGlzdC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stY3NzLXByb3Bl
cnR5LXdoaXRlbGlzdC5odG1sCmluZGV4IGRlMjFlNmIuLjQ2YTk3OTcgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3MtcHJvcGVydHktd2hpdGVsaXN0
Lmh0bWwKQEAgLTgsNiArOCw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPS4uL21lZGlhLWNvbnRy
b2xzLmpzPjwvc2NyaXB0PgogCiAgICAgICAgIDxzdHlsZT4KKyAgICAgICAgOjpjdWUge3dvcmQt
c3BhY2luZzogMTAwcHg7fQogICAgICAgICA6OmN1ZShjKSB7cGFkZGluZy1sZWZ0OiAxMHB4OyBj
b2xvcjogcmVkO30KICAgICAgICAgPC9zdHlsZT4KIApAQCAtMTgsOSArMTksOCBAQAogICAgICAg
ICBmdW5jdGlvbiBza2lwTm9uRWxlbWVudHMocm9vdCkKICAgICAgICAgewogICAgICAgICAgICAg
bmV4dEVsZW1lbnRTaWJsaW5nID0gcm9vdDsKLSAgICAgICAgICAgIHdoaWxlIChuZXh0RWxlbWVu
dFNpYmxpbmcubm9kZVR5cGUgIT0gMSkgeworICAgICAgICAgICAgd2hpbGUgKG5leHRFbGVtZW50
U2libGluZy5ub2RlVHlwZSAhPSBOb2RlLkVMRU1FTlRfTk9ERSkKICAgICAgICAgICAgICAgICBu
ZXh0RWxlbWVudFNpYmxpbmcgPSBuZXh0RWxlbWVudFNpYmxpbmcubmV4dFNpYmxpbmc7Ci0gICAg
ICAgICAgICB9CiAgICAgICAgICAgICByZXR1cm4gbmV4dEVsZW1lbnRTaWJsaW5nOwogICAgICAg
ICB9CiAKQEAgLTMzLDE1ICszMywxNyBAQAogICAgICAgICAgICAgY29uc29sZVdyaXRlKCJUZXN0
IHRoYXQgb25seSBhbGxvd2VkIGZvciB0aGUgOjpjdWUgcHNldWRvLWVsZW1lbnQgcHJvcGVydGll
cyBhcmUgYXBwbGllZCB0byBXZWJWVFQgbm9kZSBvYmplY3RzLiIpOwogCiAgICAgICAgICAgICBj
dWVOb2RlID0gc2tpcE5vbkVsZW1lbnRzKHRleHRUcmFja0Rpc3BsYXlFbGVtZW50KHZpZGVvLCAn
YWxsLW5vZGVzJykuZmlyc3RDaGlsZCk7Ci0gICAgICAgICAgICBza2lwTm9uRWxlbWVudHMoY3Vl
Tm9kZSk7CiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImdldENvbXB1dGVkU3R5bGUoY3VlTm9k
ZSkuY29sb3IiLCAicmdiKDI1NSwgMCwgMCkiKTsKICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgi
Z2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS5wYWRkaW5nIiwgIjBweCIpOworICAgICAgICAgICAg
dGVzdEV4cGVjdGVkKCJnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLndvcmRTcGFjaW5nIiwgIjBw
eCIpOwogICAgICAgICAgICAgY3VlTm9kZSA9IHNraXBOb25FbGVtZW50cyhjdWVOb2RlLm5leHRT
aWJsaW5nKTsKICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZShjdWVO
b2RlKS5jb2xvciIsICJyZ2IoMjU1LCAwLCAwKSIpOwogICAgICAgICAgICAgdGVzdEV4cGVjdGVk
KCJnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLnBhZGRpbmciLCAiMHB4Iik7CisgICAgICAgICAg
ICB0ZXN0RXhwZWN0ZWQoImdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkud29yZFNwYWNpbmciLCAi
MHB4Iik7CiAgICAgICAgICAgICBjdWVOb2RlID0gc2tpcE5vbkVsZW1lbnRzKGN1ZU5vZGUubmV4
dFNpYmxpbmcpOwogICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJnZXRDb21wdXRlZFN0eWxlKGN1
ZU5vZGUpLmNvbG9yIiwgInJnYigyNTUsIDAsIDApIik7CiAgICAgICAgICAgICB0ZXN0RXhwZWN0
ZWQoImdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkucGFkZGluZyIsICIwcHgiKTsKKyAgICAgICAg
ICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS53b3JkU3BhY2luZyIs
ICIwcHgiKTsKICAgICAgICAgICAgIGVuZFRlc3QoKTsKICAgICAgICAgfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5k
ZXggMDk2OTk4Yi4uZmFkMDExYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEzLTAx
LTIxICBEaW1hIEdvcmJpayAgPGRnb3JiaWtAYXBwbGUuY29tPgorCisgICAgICAgIFdoaXRlbGlz
dCBzaG91bGQgYWxzbyB3b3JrIGZvciB0aGUgV2ViVlRUIDo6Y3VlIGVsZW1lbnQgd2l0aG91dCBh
biBhcmd1bWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTA3NDg4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAg
IAorICAgICAgICBBcHBseSBmaWx0ZXJpbmcgaWYgdGhlIGN1ZSBzaGFkb3cgcHNldWRvSWQgaXMg
c2V0IG9uIHRoZSBzZWxlY3Rvci4KKworICAgICAgICBFeGlzdGluZyB0ZXN0cyB3ZXJlIG1vZGlm
aWVkIHRvIGNvdmVyIHRoaXMgY2FzZS4KKworICAgICAgICAqIGNzcy9SdWxlU2V0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OmRldGVybWluZVByb3BlcnR5V2hpdGVsaXN0VHlwZSk6CisgICAgICAg
ICogaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6TWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6Y3JlYXRlU3VidHJlZXMp
OgorICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrQ3VlLmg6CisgICAgICAgIChXZWJDb3Jl
OjpUZXh0VHJhY2tDdWU6OmN1ZVNoYWRvd1BzZXVkb0lkKToKKwogMjAxMy0wMS0yMSAgQ2hhbmdT
ZW9rIE9oICA8c2hpdmFtaWRvd0BnbWFpbC5jb20+CiAKICAgICAgICAgW0dUS11bQUNdIHNldE9w
YWNpdHkgZG9lc24ndCB3b3JrIGZvciBHcmFwaGljc0xheWVyQ2x1dHRlcgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL1J1bGVTZXQuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1J1bGVT
ZXQuY3BwCmluZGV4IGM2NzcxNTEuLjVkMGVlZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9SdWxlU2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvUnVsZVNldC5jcHAKQEAg
LTQ2LDYgKzQ2LDkgQEAKICNpbmNsdWRlIDx3dGYvTWVtb3J5SW5zdHJ1bWVudGF0aW9uSGFzaE1h
cC5oPgogI2luY2x1ZGUgPHd0Zi9NZW1vcnlJbnN0cnVtZW50YXRpb25IYXNoU2V0Lmg+CiAjaW5j
bHVkZSA8d3RmL01lbW9yeUluc3RydW1lbnRhdGlvblZlY3Rvci5oPgorI2lmIEVOQUJMRShWSURF
T19UUkFDSykKKyNpbmNsdWRlICJUZXh0VHJhY2tDdWUuaCIKKyNlbmRpZgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKQEAgLTExMyw4ICsxMTYsMTAgQEAgc3RhdGljIGlubGluZSBQcm9wZXJ0eVdo
aXRlbGlzdFR5cGUgZGV0ZXJtaW5lUHJvcGVydHlXaGl0ZWxpc3RUeXBlKGNvbnN0IEFkZFJ1bGUK
ICAgICBpZiAoYWRkUnVsZUZsYWdzICYgUnVsZUlzSW5SZWdpb25SdWxlKQogICAgICAgICByZXR1
cm4gUHJvcGVydHlXaGl0ZWxpc3RSZWdpb247CiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQotICAg
IGlmIChzZWxlY3Rvci0+cHNldWRvVHlwZSgpID09IENTU1NlbGVjdG9yOjpQc2V1ZG9DdWUpCisg
ICAgaWYgKHNlbGVjdG9yLT5wc2V1ZG9UeXBlKCkgPT0gQ1NTU2VsZWN0b3I6OlBzZXVkb0N1ZSB8
fCBzZWxlY3Rvci0+dmFsdWUoKSA9PSBUZXh0VHJhY2tDdWU6OmN1ZVNoYWRvd1BzZXVkb0lkKCkp
CiAgICAgICAgIHJldHVybiBQcm9wZXJ0eVdoaXRlbGlzdEN1ZTsKKyNlbHNlCisgICAgVU5VU0VE
X1BBUkFNKHNlbGVjdG9yKTsKICNlbmRpZgogICAgIHJldHVybiBQcm9wZXJ0eVdoaXRlbGlzdE5v
bmU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRy
b2xFbGVtZW50cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xF
bGVtZW50cy5jcHAKaW5kZXggMjkzNDQ5Ni4uMjNlZjI0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcApAQCAtMTIyMSw5ICsx
MjIxLDggQEAgTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6TWVkaWFDb250
cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudChEb2MKIAogdm9pZCBNZWRpYUNvbnRyb2xUZXh0
VHJhY2tDb250YWluZXJFbGVtZW50OjpjcmVhdGVTdWJ0cmVlcyhEb2N1bWVudCogZG9jdW1lbnQp
CiB7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBBdG9taWNTdHJpbmcsIGN1ZSwgKCJj
dWUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CiAgICAgbV9jdWVDb250
YWluZXIgPSBIVE1MRWxlbWVudDo6Y3JlYXRlKHNwYW5UYWcsIGRvY3VtZW50KTsKLSAgICBtX2N1
ZUNvbnRhaW5lci0+c2V0UHNldWRvKGN1ZSk7CisgICAgbV9jdWVDb250YWluZXItPnNldFBzZXVk
byhUZXh0VHJhY2tDdWU6OmN1ZVNoYWRvd1BzZXVkb0lkKCkpOwogICAgIGFwcGVuZENoaWxkKG1f
Y3VlQ29udGFpbmVyLCBBU1NFUlRfTk9fRVhDRVBUSU9OLCBmYWxzZSk7CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrQ3VlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3RyYWNrL1RleHRUcmFja0N1ZS5oCmluZGV4IGVmM2Q4MDQuLjU4YTkzZTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrQ3VlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaApAQCAtNzgsNiArNzgsMTIg
QEAgcHVibGljOgogICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFRleHRUcmFja0N1ZShjb250
ZXh0LCBzdGFydCwgZW5kLCBjb250ZW50KSk7CiAgICAgfQogCisgICAgc3RhdGljIGNvbnN0IEF0
b21pY1N0cmluZyYgY3VlU2hhZG93UHNldWRvSWQoKQorICAgIHsKKyAgICAgICAgREVGSU5FX1NU
QVRJQ19MT0NBTChjb25zdCBBdG9taWNTdHJpbmcsIGN1ZSwgKCJjdWUiLCBBdG9taWNTdHJpbmc6
OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CisgICAgICAgIHJldHVybiBjdWU7CisgICAgfQorCiAg
ICAgc3RhdGljIGNvbnN0IFF1YWxpZmllZE5hbWUmIHZvaWNlRWxlbWVudFRhZ05hbWUoKQogICAg
IHsKICAgICAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChRdWFsaWZpZWROYW1lLCB2VGFnLCAobnVs
bEF0b20sICJ2IiwgbnVsbEF0b20pKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>183863</attachid>
            <date>2013-01-21 18:17:44 -0800</date>
            <delta_ts>2013-01-21 18:32:19 -0800</delta_ts>
            <desc>Proposed fix 0.2</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>7092</size>
            <attacher name="Dima Gorbik">dgorbik</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwY2U1MjdiLi43NDJiNzUyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTMtMDEt
MjEgIERpbWEgR29yYmlrICA8ZGdvcmJpa0BhcHBsZS5jb20+CisKKyAgICAgICAgV2hpdGVsaXN0
IHNob3VsZCBhbHNvIHdvcmsgZm9yIHRoZSBXZWJWVFQgOjpjdWUgZWxlbWVudCB3aXRob3V0IGFu
IGFyZ3VtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMDc0ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIG1lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIG1lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRt
bDoKKwogMjAxMy0wMS0yMSAgTmljbyBXZWJlciAgPHRoYWtpc0BjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgW2Nocm9taXVtXSBVbnJldmlld2VkLCB1cGRhdGUgYmFzZWxpbmVzIGFmdGVyIHIxNDAz
NTguIFNlZSBhbHNvIGJ1ZyAxMDc0NzYuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90
cmFjay90cmFjay1jc3MtcHJvcGVydHktd2hpdGVsaXN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQudHh0
CmluZGV4IDM1MmNmNzQuLmFmMTM4MTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3Ry
YWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQu
dHh0CkBAIC01LDkgKzUsMTIgQEAgRVZFTlQoc2Vla2VkKQogVGVzdCB0aGF0IG9ubHkgYWxsb3dl
ZCBmb3IgdGhlIDo6Y3VlIHBzZXVkby1lbGVtZW50IHByb3BlcnRpZXMgYXJlIGFwcGxpZWQgdG8g
V2ViVlRUIG5vZGUgb2JqZWN0cy4KIEVYUEVDVEVEIChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUp
LmNvbG9yID09ICdyZ2IoMjU1LCAwLCAwKScpIE9LCiBFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHls
ZShjdWVOb2RlKS5wYWRkaW5nID09ICcwcHgnKSBPSworRVhQRUNURUQgKGdldENvbXB1dGVkU3R5
bGUoY3VlTm9kZSkud29yZFNwYWNpbmcgPT0gJzBweCcpIE9LCiBFWFBFQ1RFRCAoZ2V0Q29tcHV0
ZWRTdHlsZShjdWVOb2RlKS5jb2xvciA9PSAncmdiKDI1NSwgMCwgMCknKSBPSwogRVhQRUNURUQg
KGdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkucGFkZGluZyA9PSAnMHB4JykgT0sKK0VYUEVDVEVE
IChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLndvcmRTcGFjaW5nID09ICcwcHgnKSBPSwogRVhQ
RUNURUQgKGdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkuY29sb3IgPT0gJ3JnYigyNTUsIDAsIDAp
JykgT0sKIEVYUEVDVEVEIChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLnBhZGRpbmcgPT0gJzBw
eCcpIE9LCitFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS53b3JkU3BhY2luZyA9
PSAnMHB4JykgT0sKIEVORCBPRiBURVNUCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRtbCBiL0xheW91dFRlc3RzL21l
ZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRtbAppbmRleCBkZTIxZTZi
Li40NmE5Nzk3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3Mt
cHJvcGVydHktd2hpdGVsaXN0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJh
Y2stY3NzLXByb3BlcnR5LXdoaXRlbGlzdC5odG1sCkBAIC04LDYgKzgsNyBAQAogICAgICAgICA8
c2NyaXB0IHNyYz0uLi9tZWRpYS1jb250cm9scy5qcz48L3NjcmlwdD4KIAogICAgICAgICA8c3R5
bGU+CisgICAgICAgIDo6Y3VlIHt3b3JkLXNwYWNpbmc6IDEwMHB4O30KICAgICAgICAgOjpjdWUo
Yykge3BhZGRpbmctbGVmdDogMTBweDsgY29sb3I6IHJlZDt9CiAgICAgICAgIDwvc3R5bGU+CiAK
QEAgLTE4LDkgKzE5LDggQEAKICAgICAgICAgZnVuY3Rpb24gc2tpcE5vbkVsZW1lbnRzKHJvb3Qp
CiAgICAgICAgIHsKICAgICAgICAgICAgIG5leHRFbGVtZW50U2libGluZyA9IHJvb3Q7Ci0gICAg
ICAgICAgICB3aGlsZSAobmV4dEVsZW1lbnRTaWJsaW5nLm5vZGVUeXBlICE9IDEpIHsKKyAgICAg
ICAgICAgIHdoaWxlIChuZXh0RWxlbWVudFNpYmxpbmcubm9kZVR5cGUgIT0gTm9kZS5FTEVNRU5U
X05PREUpCiAgICAgICAgICAgICAgICAgbmV4dEVsZW1lbnRTaWJsaW5nID0gbmV4dEVsZW1lbnRT
aWJsaW5nLm5leHRTaWJsaW5nOwotICAgICAgICAgICAgfQogICAgICAgICAgICAgcmV0dXJuIG5l
eHRFbGVtZW50U2libGluZzsKICAgICAgICAgfQogCkBAIC0zMywxNSArMzMsMTcgQEAKICAgICAg
ICAgICAgIGNvbnNvbGVXcml0ZSgiVGVzdCB0aGF0IG9ubHkgYWxsb3dlZCBmb3IgdGhlIDo6Y3Vl
IHBzZXVkby1lbGVtZW50IHByb3BlcnRpZXMgYXJlIGFwcGxpZWQgdG8gV2ViVlRUIG5vZGUgb2Jq
ZWN0cy4iKTsKIAogICAgICAgICAgICAgY3VlTm9kZSA9IHNraXBOb25FbGVtZW50cyh0ZXh0VHJh
Y2tEaXNwbGF5RWxlbWVudCh2aWRlbywgJ2FsbC1ub2RlcycpLmZpcnN0Q2hpbGQpOwotICAgICAg
ICAgICAgc2tpcE5vbkVsZW1lbnRzKGN1ZU5vZGUpOwogICAgICAgICAgICAgdGVzdEV4cGVjdGVk
KCJnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLmNvbG9yIiwgInJnYigyNTUsIDAsIDApIik7CiAg
ICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkucGFkZGlu
ZyIsICIwcHgiKTsKKyAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZShj
dWVOb2RlKS53b3JkU3BhY2luZyIsICIwcHgiKTsKICAgICAgICAgICAgIGN1ZU5vZGUgPSBza2lw
Tm9uRWxlbWVudHMoY3VlTm9kZS5uZXh0U2libGluZyk7CiAgICAgICAgICAgICB0ZXN0RXhwZWN0
ZWQoImdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkuY29sb3IiLCAicmdiKDI1NSwgMCwgMCkiKTsK
ICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS5wYWRk
aW5nIiwgIjBweCIpOworICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJnZXRDb21wdXRlZFN0eWxl
KGN1ZU5vZGUpLndvcmRTcGFjaW5nIiwgIjBweCIpOwogICAgICAgICAgICAgY3VlTm9kZSA9IHNr
aXBOb25FbGVtZW50cyhjdWVOb2RlLm5leHRTaWJsaW5nKTsKICAgICAgICAgICAgIHRlc3RFeHBl
Y3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS5jb2xvciIsICJyZ2IoMjU1LCAwLCAwKSIp
OwogICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLnBh
ZGRpbmciLCAiMHB4Iik7CisgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImdldENvbXB1dGVkU3R5
bGUoY3VlTm9kZSkud29yZFNwYWNpbmciLCAiMHB4Iik7CiAgICAgICAgICAgICBlbmRUZXN0KCk7
CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDIzMmU1MjUuLmY4OTAzOTggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwyMSBAQAorMjAxMy0wMS0yMSAgRGltYSBHb3JiaWsgIDxkZ29yYmlrQGFwcGxl
LmNvbT4KKworICAgICAgICBXaGl0ZWxpc3Qgc2hvdWxkIGFsc28gd29yayBmb3IgdGhlIFdlYlZU
VCA6OmN1ZSBlbGVtZW50IHdpdGhvdXQgYW4gYXJndW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzQ4OAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgQXBwbHkgZmlsdGVyaW5nIGlmIHRo
ZSBjdWUgc2hhZG93IHBzZXVkb0lkIGlzIHNldCBvbiB0aGUgc2VsZWN0b3IuCisKKyAgICAgICAg
RXhpc3RpbmcgdGVzdHMgd2VyZSBtb2RpZmllZCB0byBjb3ZlciB0aGlzIGNhc2UuCisKKyAgICAg
ICAgKiBjc3MvUnVsZVNldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpkZXRlcm1pbmVQcm9wZXJ0
eVdoaXRlbGlzdFR5cGUpOgorICAgICAgICAqIGh0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1l
bnRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5l
ckVsZW1lbnQ6OmNyZWF0ZVN1YnRyZWVzKToKKyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRUcmFj
a0N1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrQ3VlOjpjdWVTaGFkb3dQc2V1ZG9J
ZCk6CisKIDIwMTMtMDEtMjEgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCiAg
ICAgICAgIENTUzogTWFrZSB0YWcgc3ViLXNlbGVjdG9ycyBzdGFuZGFsb25lIENTU1NlbGVjdG9y
cy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9SdWxlU2V0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9SdWxlU2V0LmNwcAppbmRleCBjZGE0ZWM3Li41MmEzMzI0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvUnVsZVNldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L1J1bGVTZXQuY3BwCkBAIC00Niw2ICs0Niw5IEBACiAjaW5jbHVkZSA8d3RmL01lbW9yeUluc3Ry
dW1lbnRhdGlvbkhhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvTWVtb3J5SW5zdHJ1bWVudGF0aW9u
SGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9NZW1vcnlJbnN0cnVtZW50YXRpb25WZWN0b3IuaD4K
KyNpZiBFTkFCTEUoVklERU9fVFJBQ0spCisjaW5jbHVkZSAiVGV4dFRyYWNrQ3VlLmgiCisjZW5k
aWYKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0xMTgsOSArMTIxLDEyIEBAIHN0YXRpYyBp
bmxpbmUgUHJvcGVydHlXaGl0ZWxpc3RUeXBlIGRldGVybWluZVByb3BlcnR5V2hpdGVsaXN0VHlw
ZShjb25zdCBBZGRSdWxlCiAgICAgICAgIHJldHVybiBQcm9wZXJ0eVdoaXRlbGlzdFJlZ2lvbjsK
ICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgZm9yIChjb25zdCBDU1NTZWxlY3RvciogY29t
cG9uZW50ID0gc2VsZWN0b3I7IGNvbXBvbmVudDsgY29tcG9uZW50ID0gY29tcG9uZW50LT50YWdI
aXN0b3J5KCkpIHsKLSAgICAgICAgaWYgKGNvbXBvbmVudC0+cHNldWRvVHlwZSgpID09IENTU1Nl
bGVjdG9yOjpQc2V1ZG9DdWUpCisgICAgICAgIGlmIChjb21wb25lbnQtPnBzZXVkb1R5cGUoKSA9
PSBDU1NTZWxlY3Rvcjo6UHNldWRvQ3VlIHx8IHNlbGVjdG9yLT52YWx1ZSgpID09IFRleHRUcmFj
a0N1ZTo6Y3VlU2hhZG93UHNldWRvSWQoKSkKICAgICAgICAgICAgIHJldHVybiBQcm9wZXJ0eVdo
aXRlbGlzdEN1ZTsKICAgICB9CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShzZWxlY3Rvcik7Cis+
Pj4+Pj4+IHdoaXRlbGlzdDIKICNlbmRpZgogICAgIHJldHVybiBQcm9wZXJ0eVdoaXRlbGlzdE5v
bmU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRy
b2xFbGVtZW50cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xF
bGVtZW50cy5jcHAKaW5kZXggMDZlMmY2ZS4uNmYwMWY2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcApAQCAtMTIyMSw5ICsx
MjIxLDggQEAgTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6TWVkaWFDb250
cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudChEb2MKIAogdm9pZCBNZWRpYUNvbnRyb2xUZXh0
VHJhY2tDb250YWluZXJFbGVtZW50OjpjcmVhdGVTdWJ0cmVlcyhEb2N1bWVudCogZG9jdW1lbnQp
CiB7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBBdG9taWNTdHJpbmcsIGN1ZSwgKCJj
dWUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CiAgICAgbV9jdWVDb250
YWluZXIgPSBIVE1MRWxlbWVudDo6Y3JlYXRlKHNwYW5UYWcsIGRvY3VtZW50KTsKLSAgICBtX2N1
ZUNvbnRhaW5lci0+c2V0UHNldWRvKGN1ZSk7CisgICAgbV9jdWVDb250YWluZXItPnNldFBzZXVk
byhUZXh0VHJhY2tDdWU6OmN1ZVNoYWRvd1BzZXVkb0lkKCkpOwogICAgIGFwcGVuZENoaWxkKG1f
Y3VlQ29udGFpbmVyLCBBU1NFUlRfTk9fRVhDRVBUSU9OLCBmYWxzZSk7CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrQ3VlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3RyYWNrL1RleHRUcmFja0N1ZS5oCmluZGV4IDIzYjI3Y2UuLmNjMTZmMDcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrQ3VlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaApAQCAtNzksNiArNzksMTIg
QEAgcHVibGljOgogICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFRleHRUcmFja0N1ZShjb250
ZXh0LCBzdGFydCwgZW5kLCBjb250ZW50KSk7CiAgICAgfQogCisgICAgc3RhdGljIGNvbnN0IEF0
b21pY1N0cmluZyYgY3VlU2hhZG93UHNldWRvSWQoKQorICAgIHsKKyAgICAgICAgREVGSU5FX1NU
QVRJQ19MT0NBTChjb25zdCBBdG9taWNTdHJpbmcsIGN1ZSwgKCJjdWUiLCBBdG9taWNTdHJpbmc6
OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CisgICAgICAgIHJldHVybiBjdWU7CisgICAgfQorCiAg
ICAgc3RhdGljIGNvbnN0IFF1YWxpZmllZE5hbWUmIHZvaWNlRWxlbWVudFRhZ05hbWUoKQogICAg
IHsKICAgICAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChRdWFsaWZpZWROYW1lLCB2VGFnLCAobnVs
bEF0b20sICJ2IiwgbnVsbEF0b20pKTsK
</data>
<flag name="review"
          id="202398"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="202399"
          type_id="3"
          status="-"
          setter="webkit-ews"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>183865</attachid>
            <date>2013-01-21 18:32:19 -0800</date>
            <delta_ts>2013-01-21 18:53:32 -0800</delta_ts>
            <desc>Proposed fix 0.3</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>7177</size>
            <attacher name="Dima Gorbik">dgorbik</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwY2U1MjdiLi43NDJiNzUyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTMtMDEt
MjEgIERpbWEgR29yYmlrICA8ZGdvcmJpa0BhcHBsZS5jb20+CisKKyAgICAgICAgV2hpdGVsaXN0
IHNob3VsZCBhbHNvIHdvcmsgZm9yIHRoZSBXZWJWVFQgOjpjdWUgZWxlbWVudCB3aXRob3V0IGFu
IGFyZ3VtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMDc0ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIG1lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIG1lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRt
bDoKKwogMjAxMy0wMS0yMSAgTmljbyBXZWJlciAgPHRoYWtpc0BjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgW2Nocm9taXVtXSBVbnJldmlld2VkLCB1cGRhdGUgYmFzZWxpbmVzIGFmdGVyIHIxNDAz
NTguIFNlZSBhbHNvIGJ1ZyAxMDc0NzYuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90
cmFjay90cmFjay1jc3MtcHJvcGVydHktd2hpdGVsaXN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQudHh0
CmluZGV4IDM1MmNmNzQuLmFmMTM4MTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3Ry
YWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQu
dHh0CkBAIC01LDkgKzUsMTIgQEAgRVZFTlQoc2Vla2VkKQogVGVzdCB0aGF0IG9ubHkgYWxsb3dl
ZCBmb3IgdGhlIDo6Y3VlIHBzZXVkby1lbGVtZW50IHByb3BlcnRpZXMgYXJlIGFwcGxpZWQgdG8g
V2ViVlRUIG5vZGUgb2JqZWN0cy4KIEVYUEVDVEVEIChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUp
LmNvbG9yID09ICdyZ2IoMjU1LCAwLCAwKScpIE9LCiBFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHls
ZShjdWVOb2RlKS5wYWRkaW5nID09ICcwcHgnKSBPSworRVhQRUNURUQgKGdldENvbXB1dGVkU3R5
bGUoY3VlTm9kZSkud29yZFNwYWNpbmcgPT0gJzBweCcpIE9LCiBFWFBFQ1RFRCAoZ2V0Q29tcHV0
ZWRTdHlsZShjdWVOb2RlKS5jb2xvciA9PSAncmdiKDI1NSwgMCwgMCknKSBPSwogRVhQRUNURUQg
KGdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkucGFkZGluZyA9PSAnMHB4JykgT0sKK0VYUEVDVEVE
IChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLndvcmRTcGFjaW5nID09ICcwcHgnKSBPSwogRVhQ
RUNURUQgKGdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkuY29sb3IgPT0gJ3JnYigyNTUsIDAsIDAp
JykgT0sKIEVYUEVDVEVEIChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLnBhZGRpbmcgPT0gJzBw
eCcpIE9LCitFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS53b3JkU3BhY2luZyA9
PSAnMHB4JykgT0sKIEVORCBPRiBURVNUCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRtbCBiL0xheW91dFRlc3RzL21l
ZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRtbAppbmRleCBkZTIxZTZi
Li5kOWJmMjYwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3Mt
cHJvcGVydHktd2hpdGVsaXN0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJh
Y2stY3NzLXByb3BlcnR5LXdoaXRlbGlzdC5odG1sCkBAIC04LDYgKzgsNyBAQAogICAgICAgICA8
c2NyaXB0IHNyYz0uLi9tZWRpYS1jb250cm9scy5qcz48L3NjcmlwdD4KIAogICAgICAgICA8c3R5
bGU+CisgICAgICAgIDo6Y3VlIHt3b3JkLXNwYWNpbmc6IDEwMHB4O30KICAgICAgICAgOjpjdWUo
Yykge3BhZGRpbmctbGVmdDogMTBweDsgY29sb3I6IHJlZDt9CiAgICAgICAgIDwvc3R5bGU+CiAK
QEAgLTE4LDkgKzE5LDggQEAKICAgICAgICAgZnVuY3Rpb24gc2tpcE5vbkVsZW1lbnRzKHJvb3Qp
CiAgICAgICAgIHsKICAgICAgICAgICAgIG5leHRFbGVtZW50U2libGluZyA9IHJvb3Q7Ci0gICAg
ICAgICAgICB3aGlsZSAobmV4dEVsZW1lbnRTaWJsaW5nLm5vZGVUeXBlICE9IDEpIHsKKyAgICAg
ICAgICAgIHdoaWxlIChuZXh0RWxlbWVudFNpYmxpbmcubm9kZVR5cGUgIT0gTm9kZS5FTEVNRU5U
X05PREUpCiAgICAgICAgICAgICAgICAgbmV4dEVsZW1lbnRTaWJsaW5nID0gbmV4dEVsZW1lbnRT
aWJsaW5nLm5leHRTaWJsaW5nOwotICAgICAgICAgICAgfQogICAgICAgICAgICAgcmV0dXJuIG5l
eHRFbGVtZW50U2libGluZzsKICAgICAgICAgfQogCkBAIC0zMiwxNiArMzIsMTggQEAKICAgICAg
ICAgICAgIGNvbnNvbGVXcml0ZSgiPGJyPiIpOwogICAgICAgICAgICAgY29uc29sZVdyaXRlKCJU
ZXN0IHRoYXQgb25seSBhbGxvd2VkIGZvciB0aGUgOjpjdWUgcHNldWRvLWVsZW1lbnQgcHJvcGVy
dGllcyBhcmUgYXBwbGllZCB0byBXZWJWVFQgbm9kZSBvYmplY3RzLiIpOwogCi0gICAgICAgICAg
ICBjdWVOb2RlID0gc2tpcE5vbkVsZW1lbnRzKHRleHRUcmFja0Rpc3BsYXlFbGVtZW50KHZpZGVv
LCAnYWxsLW5vZGVzJykuZmlyc3RDaGlsZCk7Ci0gICAgICAgICAgICBza2lwTm9uRWxlbWVudHMo
Y3VlTm9kZSk7CisgICAgICAgICAgICBjdWVOb2RlID0gdGV4dFRyYWNrRGlzcGxheUVsZW1lbnQo
dmlkZW8sICdhbGwtbm9kZXMnKS5maXJzdEVsZW1lbnRDaGlsZDsKICAgICAgICAgICAgIHRlc3RF
eHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS5jb2xvciIsICJyZ2IoMjU1LCAwLCAw
KSIpOwogICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUp
LnBhZGRpbmciLCAiMHB4Iik7CisgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImdldENvbXB1dGVk
U3R5bGUoY3VlTm9kZSkud29yZFNwYWNpbmciLCAiMHB4Iik7CiAgICAgICAgICAgICBjdWVOb2Rl
ID0gc2tpcE5vbkVsZW1lbnRzKGN1ZU5vZGUubmV4dFNpYmxpbmcpOwogICAgICAgICAgICAgdGVz
dEV4cGVjdGVkKCJnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLmNvbG9yIiwgInJnYigyNTUsIDAs
IDApIik7CiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImdldENvbXB1dGVkU3R5bGUoY3VlTm9k
ZSkucGFkZGluZyIsICIwcHgiKTsKKyAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29tcHV0
ZWRTdHlsZShjdWVOb2RlKS53b3JkU3BhY2luZyIsICIwcHgiKTsKICAgICAgICAgICAgIGN1ZU5v
ZGUgPSBza2lwTm9uRWxlbWVudHMoY3VlTm9kZS5uZXh0U2libGluZyk7CiAgICAgICAgICAgICB0
ZXN0RXhwZWN0ZWQoImdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkuY29sb3IiLCAicmdiKDI1NSwg
MCwgMCkiKTsKICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZShjdWVO
b2RlKS5wYWRkaW5nIiwgIjBweCIpOworICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJnZXRDb21w
dXRlZFN0eWxlKGN1ZU5vZGUpLndvcmRTcGFjaW5nIiwgIjBweCIpOwogICAgICAgICAgICAgZW5k
VGVzdCgpOwogICAgICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAyMzJlNTI1Li5mODkwMzk4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTMtMDEtMjEgIERpbWEgR29yYmlrICA8ZGdvcmJp
a0BhcHBsZS5jb20+CisKKyAgICAgICAgV2hpdGVsaXN0IHNob3VsZCBhbHNvIHdvcmsgZm9yIHRo
ZSBXZWJWVFQgOjpjdWUgZWxlbWVudCB3aXRob3V0IGFuIGFyZ3VtZW50CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc0ODgKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIEFwcGx5IGZpbHRlcmlu
ZyBpZiB0aGUgY3VlIHNoYWRvdyBwc2V1ZG9JZCBpcyBzZXQgb24gdGhlIHNlbGVjdG9yLgorCisg
ICAgICAgIEV4aXN0aW5nIHRlc3RzIHdlcmUgbW9kaWZpZWQgdG8gY292ZXIgdGhpcyBjYXNlLgor
CisgICAgICAgICogY3NzL1J1bGVTZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6ZGV0ZXJtaW5l
UHJvcGVydHlXaGl0ZWxpc3RUeXBlKToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRy
b2xFbGVtZW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xUZXh0VHJhY2tD
b250YWluZXJFbGVtZW50OjpjcmVhdGVTdWJ0cmVlcyk6CisgICAgICAgICogaHRtbC90cmFjay9U
ZXh0VHJhY2tDdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFja0N1ZTo6Y3VlU2hhZG93
UHNldWRvSWQpOgorCiAyMDEzLTAxLTIxICBBbmRyZWFzIEtsaW5nICA8YWtsaW5nQGFwcGxlLmNv
bT4KIAogICAgICAgICBDU1M6IE1ha2UgdGFnIHN1Yi1zZWxlY3RvcnMgc3RhbmRhbG9uZSBDU1NT
ZWxlY3RvcnMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvUnVsZVNldC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvUnVsZVNldC5jcHAKaW5kZXggY2RhNGVjNy4uZGVjODYxYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1J1bGVTZXQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9SdWxlU2V0LmNwcApAQCAtNDcsNiArNDcsMTAgQEAKICNpbmNsdWRlIDx3dGYvTWVt
b3J5SW5zdHJ1bWVudGF0aW9uSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9NZW1vcnlJbnN0cnVt
ZW50YXRpb25WZWN0b3IuaD4KIAorI2lmIEVOQUJMRShWSURFT19UUkFDSykKKyNpbmNsdWRlICJU
ZXh0VHJhY2tDdWUuaCIKKyNlbmRpZgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5h
bWVzcGFjZSBIVE1MTmFtZXM7CkBAIC0xMTgsOSArMTIyLDExIEBAIHN0YXRpYyBpbmxpbmUgUHJv
cGVydHlXaGl0ZWxpc3RUeXBlIGRldGVybWluZVByb3BlcnR5V2hpdGVsaXN0VHlwZShjb25zdCBB
ZGRSdWxlCiAgICAgICAgIHJldHVybiBQcm9wZXJ0eVdoaXRlbGlzdFJlZ2lvbjsKICNpZiBFTkFC
TEUoVklERU9fVFJBQ0spCiAgICAgZm9yIChjb25zdCBDU1NTZWxlY3RvciogY29tcG9uZW50ID0g
c2VsZWN0b3I7IGNvbXBvbmVudDsgY29tcG9uZW50ID0gY29tcG9uZW50LT50YWdIaXN0b3J5KCkp
IHsKLSAgICAgICAgaWYgKGNvbXBvbmVudC0+cHNldWRvVHlwZSgpID09IENTU1NlbGVjdG9yOjpQ
c2V1ZG9DdWUpCisgICAgICAgIGlmIChjb21wb25lbnQtPnBzZXVkb1R5cGUoKSA9PSBDU1NTZWxl
Y3Rvcjo6UHNldWRvQ3VlIHx8IHNlbGVjdG9yLT52YWx1ZSgpID09IFRleHRUcmFja0N1ZTo6Y3Vl
U2hhZG93UHNldWRvSWQoKSkKICAgICAgICAgICAgIHJldHVybiBQcm9wZXJ0eVdoaXRlbGlzdEN1
ZTsKICAgICB9CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShzZWxlY3Rvcik7CiAjZW5kaWYKICAg
ICByZXR1cm4gUHJvcGVydHlXaGl0ZWxpc3ROb25lOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwCmluZGV4IDA2ZTJmNmUuLjZm
MDFmNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJv
bEVsZW1lbnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRy
b2xFbGVtZW50cy5jcHAKQEAgLTEyMjEsOSArMTIyMSw4IEBAIE1lZGlhQ29udHJvbFRleHRUcmFj
a0NvbnRhaW5lckVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQo
RG9jCiAKIHZvaWQgTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6Y3JlYXRl
U3VidHJlZXMoRG9jdW1lbnQqIGRvY3VtZW50KQogewotICAgIERFRklORV9TVEFUSUNfTE9DQUwo
Y29uc3QgQXRvbWljU3RyaW5nLCBjdWUsICgiY3VlIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RG
cm9tTGl0ZXJhbCkpOwogICAgIG1fY3VlQ29udGFpbmVyID0gSFRNTEVsZW1lbnQ6OmNyZWF0ZShz
cGFuVGFnLCBkb2N1bWVudCk7Ci0gICAgbV9jdWVDb250YWluZXItPnNldFBzZXVkbyhjdWUpOwor
ICAgIG1fY3VlQ29udGFpbmVyLT5zZXRQc2V1ZG8oVGV4dFRyYWNrQ3VlOjpjdWVTaGFkb3dQc2V1
ZG9JZCgpKTsKICAgICBhcHBlbmRDaGlsZChtX2N1ZUNvbnRhaW5lciwgQVNTRVJUX05PX0VYQ0VQ
VElPTiwgZmFsc2UpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNr
L1RleHRUcmFja0N1ZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tDdWUu
aAppbmRleCAyM2IyN2NlLi5jYzE2ZjA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFja0N1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4
dFRyYWNrQ3VlLmgKQEAgLTc5LDYgKzc5LDEyIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBUZXh0VHJhY2tDdWUoY29udGV4dCwgc3RhcnQsIGVuZCwgY29udGVudCkpOwog
ICAgIH0KIAorICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIGN1ZVNoYWRvd1BzZXVkb0lk
KCkKKyAgICB7CisgICAgICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgQXRvbWljU3RyaW5n
LCBjdWUsICgiY3VlIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOworICAg
ICAgICByZXR1cm4gY3VlOworICAgIH0KKwogICAgIHN0YXRpYyBjb25zdCBRdWFsaWZpZWROYW1l
JiB2b2ljZUVsZW1lbnRUYWdOYW1lKCkKICAgICB7CiAgICAgICAgIERFRklORV9TVEFUSUNfTE9D
QUwoUXVhbGlmaWVkTmFtZSwgdlRhZywgKG51bGxBdG9tLCAidiIsIG51bGxBdG9tKSk7Cg==
</data>
<flag name="review"
          id="202402"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>183867</attachid>
            <date>2013-01-21 18:53:32 -0800</date>
            <delta_ts>2013-01-22 16:01:27 -0800</delta_ts>
            <desc>Proposed fix 0.4</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>7302</size>
            <attacher name="Dima Gorbik">dgorbik</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwY2U1MjdiLi43NDJiNzUyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTMtMDEt
MjEgIERpbWEgR29yYmlrICA8ZGdvcmJpa0BhcHBsZS5jb20+CisKKyAgICAgICAgV2hpdGVsaXN0
IHNob3VsZCBhbHNvIHdvcmsgZm9yIHRoZSBXZWJWVFQgOjpjdWUgZWxlbWVudCB3aXRob3V0IGFu
IGFyZ3VtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMDc0ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIG1lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIG1lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRt
bDoKKwogMjAxMy0wMS0yMSAgTmljbyBXZWJlciAgPHRoYWtpc0BjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgW2Nocm9taXVtXSBVbnJldmlld2VkLCB1cGRhdGUgYmFzZWxpbmVzIGFmdGVyIHIxNDAz
NTguIFNlZSBhbHNvIGJ1ZyAxMDc0NzYuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90
cmFjay90cmFjay1jc3MtcHJvcGVydHktd2hpdGVsaXN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQudHh0
CmluZGV4IDM1MmNmNzQuLmFmMTM4MTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3Ry
YWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQu
dHh0CkBAIC01LDkgKzUsMTIgQEAgRVZFTlQoc2Vla2VkKQogVGVzdCB0aGF0IG9ubHkgYWxsb3dl
ZCBmb3IgdGhlIDo6Y3VlIHBzZXVkby1lbGVtZW50IHByb3BlcnRpZXMgYXJlIGFwcGxpZWQgdG8g
V2ViVlRUIG5vZGUgb2JqZWN0cy4KIEVYUEVDVEVEIChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUp
LmNvbG9yID09ICdyZ2IoMjU1LCAwLCAwKScpIE9LCiBFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHls
ZShjdWVOb2RlKS5wYWRkaW5nID09ICcwcHgnKSBPSworRVhQRUNURUQgKGdldENvbXB1dGVkU3R5
bGUoY3VlTm9kZSkud29yZFNwYWNpbmcgPT0gJzBweCcpIE9LCiBFWFBFQ1RFRCAoZ2V0Q29tcHV0
ZWRTdHlsZShjdWVOb2RlKS5jb2xvciA9PSAncmdiKDI1NSwgMCwgMCknKSBPSwogRVhQRUNURUQg
KGdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkucGFkZGluZyA9PSAnMHB4JykgT0sKK0VYUEVDVEVE
IChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLndvcmRTcGFjaW5nID09ICcwcHgnKSBPSwogRVhQ
RUNURUQgKGdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkuY29sb3IgPT0gJ3JnYigyNTUsIDAsIDAp
JykgT0sKIEVYUEVDVEVEIChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLnBhZGRpbmcgPT0gJzBw
eCcpIE9LCitFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS53b3JkU3BhY2luZyA9
PSAnMHB4JykgT0sKIEVORCBPRiBURVNUCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRtbCBiL0xheW91dFRlc3RzL21l
ZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRtbAppbmRleCBkZTIxZTZi
Li5hMTY3NTU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3Mt
cHJvcGVydHktd2hpdGVsaXN0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJh
Y2stY3NzLXByb3BlcnR5LXdoaXRlbGlzdC5odG1sCkBAIC04LDYgKzgsNyBAQAogICAgICAgICA8
c2NyaXB0IHNyYz0uLi9tZWRpYS1jb250cm9scy5qcz48L3NjcmlwdD4KIAogICAgICAgICA8c3R5
bGU+CisgICAgICAgIDo6Y3VlIHt3b3JkLXNwYWNpbmc6IDEwMHB4O30KICAgICAgICAgOjpjdWUo
Yykge3BhZGRpbmctbGVmdDogMTBweDsgY29sb3I6IHJlZDt9CiAgICAgICAgIDwvc3R5bGU+CiAK
QEAgLTE1LDE1ICsxNiw2IEBACiAKICAgICAgICAgdmFyIGN1ZU5vZGU7CiAKLSAgICAgICAgZnVu
Y3Rpb24gc2tpcE5vbkVsZW1lbnRzKHJvb3QpCi0gICAgICAgIHsKLSAgICAgICAgICAgIG5leHRF
bGVtZW50U2libGluZyA9IHJvb3Q7Ci0gICAgICAgICAgICB3aGlsZSAobmV4dEVsZW1lbnRTaWJs
aW5nLm5vZGVUeXBlICE9IDEpIHsKLSAgICAgICAgICAgICAgICBuZXh0RWxlbWVudFNpYmxpbmcg
PSBuZXh0RWxlbWVudFNpYmxpbmcubmV4dFNpYmxpbmc7Ci0gICAgICAgICAgICB9Ci0gICAgICAg
ICAgICByZXR1cm4gbmV4dEVsZW1lbnRTaWJsaW5nOwotICAgICAgICB9Ci0KICAgICAgICAgZnVu
Y3Rpb24gc2Vla2VkKCkKICAgICAgICAgewogICAgICAgICAgICAgaWYgKHRlc3RFbmRlZCkKQEAg
LTMyLDE2ICsyNCwxOCBAQAogICAgICAgICAgICAgY29uc29sZVdyaXRlKCI8YnI+Iik7CiAgICAg
ICAgICAgICBjb25zb2xlV3JpdGUoIlRlc3QgdGhhdCBvbmx5IGFsbG93ZWQgZm9yIHRoZSA6OmN1
ZSBwc2V1ZG8tZWxlbWVudCBwcm9wZXJ0aWVzIGFyZSBhcHBsaWVkIHRvIFdlYlZUVCBub2RlIG9i
amVjdHMuIik7CiAKLSAgICAgICAgICAgIGN1ZU5vZGUgPSBza2lwTm9uRWxlbWVudHModGV4dFRy
YWNrRGlzcGxheUVsZW1lbnQodmlkZW8sICdhbGwtbm9kZXMnKS5maXJzdENoaWxkKTsKLSAgICAg
ICAgICAgIHNraXBOb25FbGVtZW50cyhjdWVOb2RlKTsKKyAgICAgICAgICAgIGN1ZU5vZGUgPSB0
ZXh0VHJhY2tEaXNwbGF5RWxlbWVudCh2aWRlbywgJ2FsbC1ub2RlcycpLmZpcnN0RWxlbWVudENo
aWxkOwogICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUp
LmNvbG9yIiwgInJnYigyNTUsIDAsIDApIik7CiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImdl
dENvbXB1dGVkU3R5bGUoY3VlTm9kZSkucGFkZGluZyIsICIwcHgiKTsKLSAgICAgICAgICAgIGN1
ZU5vZGUgPSBza2lwTm9uRWxlbWVudHMoY3VlTm9kZS5uZXh0U2libGluZyk7CisgICAgICAgICAg
ICB0ZXN0RXhwZWN0ZWQoImdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkud29yZFNwYWNpbmciLCAi
MHB4Iik7CisgICAgICAgICAgICBjdWVOb2RlID0gY3VlTm9kZS5uZXh0RWxlbWVudFNpYmxpbmc7
CiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkuY29s
b3IiLCAicmdiKDI1NSwgMCwgMCkiKTsKICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29t
cHV0ZWRTdHlsZShjdWVOb2RlKS5wYWRkaW5nIiwgIjBweCIpOwotICAgICAgICAgICAgY3VlTm9k
ZSA9IHNraXBOb25FbGVtZW50cyhjdWVOb2RlLm5leHRTaWJsaW5nKTsKKyAgICAgICAgICAgIHRl
c3RFeHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS53b3JkU3BhY2luZyIsICIwcHgi
KTsKKyAgICAgICAgICAgIGN1ZU5vZGUgPSBjdWVOb2RlLm5leHRFbGVtZW50U2libGluZzsKICAg
ICAgICAgICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS5jb2xvciIs
ICJyZ2IoMjU1LCAwLCAwKSIpOwogICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJnZXRDb21wdXRl
ZFN0eWxlKGN1ZU5vZGUpLnBhZGRpbmciLCAiMHB4Iik7CisgICAgICAgICAgICB0ZXN0RXhwZWN0
ZWQoImdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkud29yZFNwYWNpbmciLCAiMHB4Iik7CiAgICAg
ICAgICAgICBlbmRUZXN0KCk7CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDIzMmU1MjUuLmY4
OTAzOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMy0wMS0yMSAgRGltYSBHb3Ji
aWsgIDxkZ29yYmlrQGFwcGxlLmNvbT4KKworICAgICAgICBXaGl0ZWxpc3Qgc2hvdWxkIGFsc28g
d29yayBmb3IgdGhlIFdlYlZUVCA6OmN1ZSBlbGVtZW50IHdpdGhvdXQgYW4gYXJndW1lbnQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzQ4OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgQXBw
bHkgZmlsdGVyaW5nIGlmIHRoZSBjdWUgc2hhZG93IHBzZXVkb0lkIGlzIHNldCBvbiB0aGUgc2Vs
ZWN0b3IuCisKKyAgICAgICAgRXhpc3RpbmcgdGVzdHMgd2VyZSBtb2RpZmllZCB0byBjb3ZlciB0
aGlzIGNhc2UuCisKKyAgICAgICAgKiBjc3MvUnVsZVNldC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpkZXRlcm1pbmVQcm9wZXJ0eVdoaXRlbGlzdFR5cGUpOgorICAgICAgICAqIGh0bWwvc2hhZG93
L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJv
bFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OmNyZWF0ZVN1YnRyZWVzKToKKyAgICAgICAgKiBo
dG1sL3RyYWNrL1RleHRUcmFja0N1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6VGV4dFRyYWNrQ3Vl
OjpjdWVTaGFkb3dQc2V1ZG9JZCk6CisKIDIwMTMtMDEtMjEgIEFuZHJlYXMgS2xpbmcgIDxha2xp
bmdAYXBwbGUuY29tPgogCiAgICAgICAgIENTUzogTWFrZSB0YWcgc3ViLXNlbGVjdG9ycyBzdGFu
ZGFsb25lIENTU1NlbGVjdG9ycy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9SdWxl
U2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9SdWxlU2V0LmNwcAppbmRleCBjZGE0ZWM3Li5k
ZWM4NjFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvUnVsZVNldC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL1J1bGVTZXQuY3BwCkBAIC00Nyw2ICs0NywxMCBAQAogI2luY2x1
ZGUgPHd0Zi9NZW1vcnlJbnN0cnVtZW50YXRpb25IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL01l
bW9yeUluc3RydW1lbnRhdGlvblZlY3Rvci5oPgogCisjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQor
I2luY2x1ZGUgIlRleHRUcmFja0N1ZS5oIgorI2VuZGlmCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKQEAgLTExOCw5ICsxMjIsMTEgQEAgc3RhdGlj
IGlubGluZSBQcm9wZXJ0eVdoaXRlbGlzdFR5cGUgZGV0ZXJtaW5lUHJvcGVydHlXaGl0ZWxpc3RU
eXBlKGNvbnN0IEFkZFJ1bGUKICAgICAgICAgcmV0dXJuIFByb3BlcnR5V2hpdGVsaXN0UmVnaW9u
OwogI2lmIEVOQUJMRShWSURFT19UUkFDSykKICAgICBmb3IgKGNvbnN0IENTU1NlbGVjdG9yKiBj
b21wb25lbnQgPSBzZWxlY3RvcjsgY29tcG9uZW50OyBjb21wb25lbnQgPSBjb21wb25lbnQtPnRh
Z0hpc3RvcnkoKSkgewotICAgICAgICBpZiAoY29tcG9uZW50LT5wc2V1ZG9UeXBlKCkgPT0gQ1NT
U2VsZWN0b3I6OlBzZXVkb0N1ZSkKKyAgICAgICAgaWYgKGNvbXBvbmVudC0+cHNldWRvVHlwZSgp
ID09IENTU1NlbGVjdG9yOjpQc2V1ZG9DdWUgfHwgc2VsZWN0b3ItPnZhbHVlKCkgPT0gVGV4dFRy
YWNrQ3VlOjpjdWVTaGFkb3dQc2V1ZG9JZCgpKQogICAgICAgICAgICAgcmV0dXJuIFByb3BlcnR5
V2hpdGVsaXN0Q3VlOwogICAgIH0KKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKHNlbGVjdG9yKTsK
ICNlbmRpZgogICAgIHJldHVybiBQcm9wZXJ0eVdoaXRlbGlzdE5vbmU7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAKaW5kZXgg
MDZlMmY2ZS4uNmYwMWY2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9sRWxlbWVudHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93
L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcApAQCAtMTIyMSw5ICsxMjIxLDggQEAgTWVkaWFDb250
cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6TWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFp
bmVyRWxlbWVudChEb2MKIAogdm9pZCBNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVt
ZW50OjpjcmVhdGVTdWJ0cmVlcyhEb2N1bWVudCogZG9jdW1lbnQpCiB7Ci0gICAgREVGSU5FX1NU
QVRJQ19MT0NBTChjb25zdCBBdG9taWNTdHJpbmcsIGN1ZSwgKCJjdWUiLCBBdG9taWNTdHJpbmc6
OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CiAgICAgbV9jdWVDb250YWluZXIgPSBIVE1MRWxlbWVu
dDo6Y3JlYXRlKHNwYW5UYWcsIGRvY3VtZW50KTsKLSAgICBtX2N1ZUNvbnRhaW5lci0+c2V0UHNl
dWRvKGN1ZSk7CisgICAgbV9jdWVDb250YWluZXItPnNldFBzZXVkbyhUZXh0VHJhY2tDdWU6OmN1
ZVNoYWRvd1BzZXVkb0lkKCkpOwogICAgIGFwcGVuZENoaWxkKG1fY3VlQ29udGFpbmVyLCBBU1NF
UlRfTk9fRVhDRVBUSU9OLCBmYWxzZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVGV4dFRyYWNrQ3VlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1Rl
eHRUcmFja0N1ZS5oCmluZGV4IDIzYjI3Y2UuLmNjMTZmMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrQ3VlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9UZXh0VHJhY2tDdWUuaApAQCAtNzksNiArNzksMTIgQEAgcHVibGljOgogICAgICAg
ICByZXR1cm4gYWRvcHRSZWYobmV3IFRleHRUcmFja0N1ZShjb250ZXh0LCBzdGFydCwgZW5kLCBj
b250ZW50KSk7CiAgICAgfQogCisgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgY3VlU2hh
ZG93UHNldWRvSWQoKQorICAgIHsKKyAgICAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBB
dG9taWNTdHJpbmcsIGN1ZSwgKCJjdWUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRl
cmFsKSk7CisgICAgICAgIHJldHVybiBjdWU7CisgICAgfQorCiAgICAgc3RhdGljIGNvbnN0IFF1
YWxpZmllZE5hbWUmIHZvaWNlRWxlbWVudFRhZ05hbWUoKQogICAgIHsKICAgICAgICAgREVGSU5F
X1NUQVRJQ19MT0NBTChRdWFsaWZpZWROYW1lLCB2VGFnLCAobnVsbEF0b20sICJ2IiwgbnVsbEF0
b20pKTsK
</data>
<flag name="review"
          id="202405"
          type_id="1"
          status="-"
          setter="kling"
    />
    <flag name="commit-queue"
          id="202406"
          type_id="3"
          status="-"
          setter="kling"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184066</attachid>
            <date>2013-01-22 16:01:27 -0800</date>
            <delta_ts>2013-01-22 21:51:44 -0800</delta_ts>
            <desc>Proposed fix 0.5</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>7354</size>
            <attacher name="Dima Gorbik">dgorbik</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjNjY5OGI0Li45ODZjYzgwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTMtMDEt
MjIgIERpbWEgR29yYmlrICA8ZGdvcmJpa0BhcHBsZS5jb20+CisKKyAgICAgICAgV2hpdGVsaXN0
IHNob3VsZCBhbHNvIHdvcmsgZm9yIHRoZSBXZWJWVFQgOjpjdWUgZWxlbWVudCB3aXRob3V0IGFu
IGFyZ3VtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMDc0ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIG1lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIG1lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxpc3QuaHRt
bDoKKwogMjAxMy0wMS0yMiAgQWxwaGEgTGFtICA8aGNsYW1AY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFJFR1JFU1NJT04ocjE0MDIzMSk6IG1lZGlhIHRyYWNrIGxheW91dCB0ZXN0cyBjcmFzaGlu
ZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stY3NzLXByb3BlcnR5
LXdoaXRlbGlzdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1j
c3MtcHJvcGVydHktd2hpdGVsaXN0LWV4cGVjdGVkLnR4dAppbmRleCAzNTJjZjc0Li5hZjEzODEx
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3MtcHJvcGVydHkt
d2hpdGVsaXN0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFj
ay1jc3MtcHJvcGVydHktd2hpdGVsaXN0LWV4cGVjdGVkLnR4dApAQCAtNSw5ICs1LDEyIEBAIEVW
RU5UKHNlZWtlZCkKIFRlc3QgdGhhdCBvbmx5IGFsbG93ZWQgZm9yIHRoZSA6OmN1ZSBwc2V1ZG8t
ZWxlbWVudCBwcm9wZXJ0aWVzIGFyZSBhcHBsaWVkIHRvIFdlYlZUVCBub2RlIG9iamVjdHMuCiBF
WFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS5jb2xvciA9PSAncmdiKDI1NSwgMCwg
MCknKSBPSwogRVhQRUNURUQgKGdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkucGFkZGluZyA9PSAn
MHB4JykgT0sKK0VYUEVDVEVEIChnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLndvcmRTcGFjaW5n
ID09ICcwcHgnKSBPSwogRVhQRUNURUQgKGdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkuY29sb3Ig
PT0gJ3JnYigyNTUsIDAsIDApJykgT0sKIEVYUEVDVEVEIChnZXRDb21wdXRlZFN0eWxlKGN1ZU5v
ZGUpLnBhZGRpbmcgPT0gJzBweCcpIE9LCitFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHlsZShjdWVO
b2RlKS53b3JkU3BhY2luZyA9PSAnMHB4JykgT0sKIEVYUEVDVEVEIChnZXRDb21wdXRlZFN0eWxl
KGN1ZU5vZGUpLmNvbG9yID09ICdyZ2IoMjU1LCAwLCAwKScpIE9LCiBFWFBFQ1RFRCAoZ2V0Q29t
cHV0ZWRTdHlsZShjdWVOb2RlKS5wYWRkaW5nID09ICcwcHgnKSBPSworRVhQRUNURUQgKGdldENv
bXB1dGVkU3R5bGUoY3VlTm9kZSkud29yZFNwYWNpbmcgPT0gJzBweCcpIE9LCiBFTkQgT0YgVEVT
VAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3MtcHJvcGVy
dHktd2hpdGVsaXN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3MtcHJv
cGVydHktd2hpdGVsaXN0Lmh0bWwKaW5kZXggZGUyMWU2Yi4uYTE2NzU1NCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stY3NzLXByb3BlcnR5LXdoaXRlbGlzdC5odG1s
CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1wcm9wZXJ0eS13aGl0ZWxp
c3QuaHRtbApAQCAtOCw2ICs4LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Li4vbWVkaWEtY29u
dHJvbHMuanM+PC9zY3JpcHQ+CiAKICAgICAgICAgPHN0eWxlPgorICAgICAgICA6OmN1ZSB7d29y
ZC1zcGFjaW5nOiAxMDBweDt9CiAgICAgICAgIDo6Y3VlKGMpIHtwYWRkaW5nLWxlZnQ6IDEwcHg7
IGNvbG9yOiByZWQ7fQogICAgICAgICA8L3N0eWxlPgogCkBAIC0xNSwxNSArMTYsNiBAQAogCiAg
ICAgICAgIHZhciBjdWVOb2RlOwogCi0gICAgICAgIGZ1bmN0aW9uIHNraXBOb25FbGVtZW50cyhy
b290KQotICAgICAgICB7Ci0gICAgICAgICAgICBuZXh0RWxlbWVudFNpYmxpbmcgPSByb290Owot
ICAgICAgICAgICAgd2hpbGUgKG5leHRFbGVtZW50U2libGluZy5ub2RlVHlwZSAhPSAxKSB7Ci0g
ICAgICAgICAgICAgICAgbmV4dEVsZW1lbnRTaWJsaW5nID0gbmV4dEVsZW1lbnRTaWJsaW5nLm5l
eHRTaWJsaW5nOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgcmV0dXJuIG5leHRFbGVtZW50
U2libGluZzsKLSAgICAgICAgfQotCiAgICAgICAgIGZ1bmN0aW9uIHNlZWtlZCgpCiAgICAgICAg
IHsKICAgICAgICAgICAgIGlmICh0ZXN0RW5kZWQpCkBAIC0zMiwxNiArMjQsMTggQEAKICAgICAg
ICAgICAgIGNvbnNvbGVXcml0ZSgiPGJyPiIpOwogICAgICAgICAgICAgY29uc29sZVdyaXRlKCJU
ZXN0IHRoYXQgb25seSBhbGxvd2VkIGZvciB0aGUgOjpjdWUgcHNldWRvLWVsZW1lbnQgcHJvcGVy
dGllcyBhcmUgYXBwbGllZCB0byBXZWJWVFQgbm9kZSBvYmplY3RzLiIpOwogCi0gICAgICAgICAg
ICBjdWVOb2RlID0gc2tpcE5vbkVsZW1lbnRzKHRleHRUcmFja0Rpc3BsYXlFbGVtZW50KHZpZGVv
LCAnYWxsLW5vZGVzJykuZmlyc3RDaGlsZCk7Ci0gICAgICAgICAgICBza2lwTm9uRWxlbWVudHMo
Y3VlTm9kZSk7CisgICAgICAgICAgICBjdWVOb2RlID0gdGV4dFRyYWNrRGlzcGxheUVsZW1lbnQo
dmlkZW8sICdhbGwtbm9kZXMnKS5maXJzdEVsZW1lbnRDaGlsZDsKICAgICAgICAgICAgIHRlc3RF
eHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS5jb2xvciIsICJyZ2IoMjU1LCAwLCAw
KSIpOwogICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUp
LnBhZGRpbmciLCAiMHB4Iik7Ci0gICAgICAgICAgICBjdWVOb2RlID0gc2tpcE5vbkVsZW1lbnRz
KGN1ZU5vZGUubmV4dFNpYmxpbmcpOworICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJnZXRDb21w
dXRlZFN0eWxlKGN1ZU5vZGUpLndvcmRTcGFjaW5nIiwgIjBweCIpOworICAgICAgICAgICAgY3Vl
Tm9kZSA9IGN1ZU5vZGUubmV4dEVsZW1lbnRTaWJsaW5nOwogICAgICAgICAgICAgdGVzdEV4cGVj
dGVkKCJnZXRDb21wdXRlZFN0eWxlKGN1ZU5vZGUpLmNvbG9yIiwgInJnYigyNTUsIDAsIDApIik7
CiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkucGFk
ZGluZyIsICIwcHgiKTsKLSAgICAgICAgICAgIGN1ZU5vZGUgPSBza2lwTm9uRWxlbWVudHMoY3Vl
Tm9kZS5uZXh0U2libGluZyk7CisgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImdldENvbXB1dGVk
U3R5bGUoY3VlTm9kZSkud29yZFNwYWNpbmciLCAiMHB4Iik7CisgICAgICAgICAgICBjdWVOb2Rl
ID0gY3VlTm9kZS5uZXh0RWxlbWVudFNpYmxpbmc7CiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQo
ImdldENvbXB1dGVkU3R5bGUoY3VlTm9kZSkuY29sb3IiLCAicmdiKDI1NSwgMCwgMCkiKTsKICAg
ICAgICAgICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZShjdWVOb2RlKS5wYWRkaW5n
IiwgIjBweCIpOworICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJnZXRDb21wdXRlZFN0eWxlKGN1
ZU5vZGUpLndvcmRTcGFjaW5nIiwgIjBweCIpOwogICAgICAgICAgICAgZW5kVGVzdCgpOwogICAg
ICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCBiZDc3ZTZjLi5hNTg1ZjViIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjEgQEAKKzIwMTMtMDEtMjIgIERpbWEgR29yYmlrICA8ZGdvcmJpa0BhcHBsZS5jb20+
CisKKyAgICAgICAgV2hpdGVsaXN0IHNob3VsZCBhbHNvIHdvcmsgZm9yIHRoZSBXZWJWVFQgOjpj
dWUgZWxlbWVudCB3aXRob3V0IGFuIGFyZ3VtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc0ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIEFwcGx5IGZpbHRlcmluZyBpZiB0aGUgY3Vl
IHNoYWRvdyBwc2V1ZG9JZCBpcyBzZXQgb24gdGhlIHNlbGVjdG9yLgorCisgICAgICAgIEV4aXN0
aW5nIHRlc3RzIHdlcmUgbW9kaWZpZWQgdG8gY292ZXIgdGhpcyBjYXNlLgorCisgICAgICAgICog
Y3NzL1J1bGVTZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6ZGV0ZXJtaW5lUHJvcGVydHlXaGl0
ZWxpc3RUeXBlKToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVt
ZW50OjpjcmVhdGVTdWJ0cmVlcyk6CisgICAgICAgICogaHRtbC90cmFjay9UZXh0VHJhY2tDdWUu
aDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHRUcmFja0N1ZTo6Y3VlU2hhZG93UHNldWRvSWQpOgor
CiAyMDEzLTAxLTIyICBNaW4gUWluICA8cWlubWluQGNocm9taXVtLm9yZz4KIAogICAgICAgICBG
aXggYSByYWNlIGNvbmRpdGlvbiBvbiBTa0JpdG1hcDo6bG9ja1BpeGVscygpL3VubG9ja1BpeGVs
cygpIGZvciBsYXp5IGltYWdlIGRlY29kaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvUnVsZVNldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvUnVsZVNldC5jcHAKaW5kZXggY2Rh
NGVjNy4uMzk1OGJjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1J1bGVTZXQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9SdWxlU2V0LmNwcApAQCAtNDcsNiArNDcsMTAgQEAK
ICNpbmNsdWRlIDx3dGYvTWVtb3J5SW5zdHJ1bWVudGF0aW9uSGFzaFNldC5oPgogI2luY2x1ZGUg
PHd0Zi9NZW1vcnlJbnN0cnVtZW50YXRpb25WZWN0b3IuaD4KIAorI2lmIEVOQUJMRShWSURFT19U
UkFDSykKKyNpbmNsdWRlICJUZXh0VHJhY2tDdWUuaCIKKyNlbmRpZgorCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBIVE1MTmFtZXM7CkBAIC0xMTgsOSArMTIyLDExIEBA
IHN0YXRpYyBpbmxpbmUgUHJvcGVydHlXaGl0ZWxpc3RUeXBlIGRldGVybWluZVByb3BlcnR5V2hp
dGVsaXN0VHlwZShjb25zdCBBZGRSdWxlCiAgICAgICAgIHJldHVybiBQcm9wZXJ0eVdoaXRlbGlz
dFJlZ2lvbjsKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgZm9yIChjb25zdCBDU1NTZWxl
Y3RvciogY29tcG9uZW50ID0gc2VsZWN0b3I7IGNvbXBvbmVudDsgY29tcG9uZW50ID0gY29tcG9u
ZW50LT50YWdIaXN0b3J5KCkpIHsKLSAgICAgICAgaWYgKGNvbXBvbmVudC0+cHNldWRvVHlwZSgp
ID09IENTU1NlbGVjdG9yOjpQc2V1ZG9DdWUpCisgICAgICAgIGlmIChjb21wb25lbnQtPnBzZXVk
b1R5cGUoKSA9PSBDU1NTZWxlY3Rvcjo6UHNldWRvQ3VlIHx8IChjb21wb25lbnQtPm1fbWF0Y2gg
IT0gQ1NTU2VsZWN0b3I6OlRhZyAmJiBjb21wb25lbnQtPnZhbHVlKCkgPT0gVGV4dFRyYWNrQ3Vl
OjpjdWVTaGFkb3dQc2V1ZG9JZCgpKSkKICAgICAgICAgICAgIHJldHVybiBQcm9wZXJ0eVdoaXRl
bGlzdEN1ZTsKICAgICB9CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShzZWxlY3Rvcik7CiAjZW5k
aWYKICAgICByZXR1cm4gUHJvcGVydHlXaGl0ZWxpc3ROb25lOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwCmluZGV4IDA2ZTJm
NmUuLjZmMDFmNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlh
Q29udHJvbEVsZW1lbnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRp
YUNvbnRyb2xFbGVtZW50cy5jcHAKQEAgLTEyMjEsOSArMTIyMSw4IEBAIE1lZGlhQ29udHJvbFRl
eHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVs
ZW1lbnQoRG9jCiAKIHZvaWQgTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6
Y3JlYXRlU3VidHJlZXMoRG9jdW1lbnQqIGRvY3VtZW50KQogewotICAgIERFRklORV9TVEFUSUNf
TE9DQUwoY29uc3QgQXRvbWljU3RyaW5nLCBjdWUsICgiY3VlIiwgQXRvbWljU3RyaW5nOjpDb25z
dHJ1Y3RGcm9tTGl0ZXJhbCkpOwogICAgIG1fY3VlQ29udGFpbmVyID0gSFRNTEVsZW1lbnQ6OmNy
ZWF0ZShzcGFuVGFnLCBkb2N1bWVudCk7Ci0gICAgbV9jdWVDb250YWluZXItPnNldFBzZXVkbyhj
dWUpOworICAgIG1fY3VlQ29udGFpbmVyLT5zZXRQc2V1ZG8oVGV4dFRyYWNrQ3VlOjpjdWVTaGFk
b3dQc2V1ZG9JZCgpKTsKICAgICBhcHBlbmRDaGlsZChtX2N1ZUNvbnRhaW5lciwgQVNTRVJUX05P
X0VYQ0VQVElPTiwgZmFsc2UpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RleHRUcmFja0N1ZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJh
Y2tDdWUuaAppbmRleCAyM2IyN2NlLi5jYzE2ZjA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3RyYWNrL1RleHRUcmFja0N1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJh
Y2svVGV4dFRyYWNrQ3VlLmgKQEAgLTc5LDYgKzc5LDEyIEBAIHB1YmxpYzoKICAgICAgICAgcmV0
dXJuIGFkb3B0UmVmKG5ldyBUZXh0VHJhY2tDdWUoY29udGV4dCwgc3RhcnQsIGVuZCwgY29udGVu
dCkpOwogICAgIH0KIAorICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIGN1ZVNoYWRvd1Bz
ZXVkb0lkKCkKKyAgICB7CisgICAgICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgQXRvbWlj
U3RyaW5nLCBjdWUsICgiY3VlIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkp
OworICAgICAgICByZXR1cm4gY3VlOworICAgIH0KKwogICAgIHN0YXRpYyBjb25zdCBRdWFsaWZp
ZWROYW1lJiB2b2ljZUVsZW1lbnRUYWdOYW1lKCkKICAgICB7CiAgICAgICAgIERFRklORV9TVEFU
SUNfTE9DQUwoUXVhbGlmaWVkTmFtZSwgdlRhZywgKG51bGxBdG9tLCAidiIsIG51bGxBdG9tKSk7
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>