<?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>104043</bug_id>
          
          <creation_ts>2012-12-04 14:14:10 -0800</creation_ts>
          <short_desc>Implement general ::cue pseudo element for the &lt;video&gt;</short_desc>
          <delta_ts>2012-12-14 16:17:37 -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>0</everconfirmed>
          <reporter name="Dima Gorbik">dgorbik</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>koivisto</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>silviapf</cc>
    
    <cc>silviapfeiffer1</cc>
    
    <cc>vcarbune</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>782923</commentid>
    <comment_count>0</comment_count>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-04 14:14:10 -0800</bug_when>
    <thetext>::cue pseudo element should style all the cues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>782934</commentid>
    <comment_count>1</comment_count>
      <attachid>177561</attachid>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-04 14:23:02 -0800</bug_when>
    <thetext>Created attachment 177561
Proposed fix 0.1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>782938</commentid>
    <comment_count>2</comment_count>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-04 14:25:56 -0800</bug_when>
    <thetext>A test case will be added for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783165</commentid>
    <comment_count>3</comment_count>
      <attachid>177621</attachid>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-04 17:35:19 -0800</bug_when>
    <thetext>Created attachment 177621
Proposed fix 0.2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783185</commentid>
    <comment_count>4</comment_count>
      <attachid>177621</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2012-12-04 17:51:49 -0800</bug_when>
    <thetext>Comment on attachment 177621
Proposed fix 0.2

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

&gt; LayoutTests/media/track/track-css-all-cues.html:14
&gt; +		&lt;style&gt;
&gt; +
&gt; +		video::cue { color:red }
&gt; +
&gt; +		&lt;/style&gt;

It looks like you have a mixture of spaces and tabs in this file. Spaces only please.

&gt; Source/WebCore/ChangeLog:13
&gt; +        (WebCore):

This doesn&apos;t add anything and can be removed.

&gt; Source/WebCore/ChangeLog:15
&gt; +        (WebCore::MediaControlTextTrackContainerElement::createSubtrees):
&gt; +        (WebCore::MediaControlTextTrackContainerElement::updateDisplay):

I prefer to see a comment about what changed in each method. Not everyone does this, but I think it makes it easier for people looking for information about changes later.

&gt; Source/WebCore/ChangeLog:19
&gt; +        (WebCore::MediaControlRootElement::createTextTrackDisplay):

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783188</commentid>
    <comment_count>5</comment_count>
      <attachid>177621</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2012-12-04 17:56:00 -0800</bug_when>
    <thetext>Comment on attachment 177621
Proposed fix 0.2

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

Looks good except for the ChangeLog.

&gt; Source/WebCore/ChangeLog:10
&gt; +2012-12-04  Dima Gorbik  &lt;dgorbik@apple.com&gt;
&gt; +
&gt; +        Implement general ::cue pseudo element for the &lt;video&gt;
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=104043
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        Implemented the ::cue pseudo element to be able to style all WebVTT cues.
&gt; +
&gt; +        Test: media/track/track-css-all-cues.html

Please make the ChangeLog bit more descriptive. A pointer to the relevant standard section would be good. What part is exactly implemented by this patch and what is still left to implement? What is the plan going forward?

&gt;&gt; Source/WebCore/ChangeLog:19
&gt;&gt; +        * html/shadow/MediaControlElements.cpp:
&gt;&gt; +        (WebCore):
&gt;&gt; +        (WebCore::MediaControlTextTrackContainerElement::createSubtrees):
&gt;&gt; +        (WebCore::MediaControlTextTrackContainerElement::updateDisplay):
&gt;&gt; +        * html/shadow/MediaControlElements.h:
&gt;&gt; +        (MediaControlTextTrackContainerElement):
&gt;&gt; +        * html/shadow/MediaControlRootElement.cpp:
&gt;&gt; +        (WebCore::MediaControlRootElement::createTextTrackDisplay):
&gt; 
&gt; Ditto.

Some implementation comments here would be good too. Why is cueContainer subtree needed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783223</commentid>
    <comment_count>6</comment_count>
      <attachid>177639</attachid>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-04 18:29:13 -0800</bug_when>
    <thetext>Created attachment 177639
Proposed fix 0.3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>784303</commentid>
    <comment_count>7</comment_count>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-05 17:10:30 -0800</bug_when>
    <thetext>Thanks for the review, Eric!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>784312</commentid>
    <comment_count>8</comment_count>
    <who name="Silvia Pfeiffer">silviapf</who>
    <bug_when>2012-12-05 17:16:58 -0800</bug_when>
    <thetext>Code looks good to me. Very glad that this is happening!

Can I suggest adding a layout test result for your platform and the appropriate changes to test expectation files? It would be nice to see the results of the ::cue CSS.

Also note that you&apos;ll need to rebase on the latest codebase, because the media controls code has been refactored.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>784320</commentid>
    <comment_count>9</comment_count>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-05 17:23:11 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; Code looks good to me. Very glad that this is happening!
&gt; 
&gt; Can I suggest adding a layout test result for your platform and the appropriate changes to test expectation files? It would be nice to see the results of the ::cue CSS.
&gt; 
&gt; Also note that you&apos;ll need to rebase on the latest codebase, because the media controls code has been refactored.

That sounds like a good idea. May I add those tests a little bit later since I am rolling out other patches related to the ::cue now? (and they will most likely change the shadow tree). Also I am expecting specs for the ::cue to change a little bit really soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>784338</commentid>
    <comment_count>10</comment_count>
      <attachid>177639</attachid>
    <who name="Victor Carbune">vcarbune</who>
    <bug_when>2012-12-05 17:33:18 -0800</bug_when>
    <thetext>Comment on attachment 177639
Proposed fix 0.3

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

&gt; LayoutTests/ChangeLog:3
&gt; +        Implement general ::cue pseudo element for the &lt;video&gt;

Would you have thoughts / knowledge about parsing / filter so that only some CSS properties can be applied?

&gt; LayoutTests/media/track/track-css-all-cues-expected.txt:4
&gt; +EXPECTED (getComputedStyle(textTrackDisplayElement(video).firstChild).color == &apos;rgb(255, 0, 0)&apos;) OK

Just nice to have would be tests for each allowed CSS properties mentioned in the spec.

&gt; Source/WebCore/html/shadow/MediaControlElements.cpp:1307
&gt; +    m_cueContainer = HTMLElement::create(spanTag, document);

Couldn&apos;t the same be achieved by overriding shadowPseudoId() in TextTrackCueBox?

It would avoid creating a container within a container and it would match
individually each list of WebVTT node objects.

&gt; Source/WebCore/html/shadow/MediaControlElements.cpp:1308
&gt; +    m_cueContainer-&gt;setShadowPseudoId(cue);

As Silvia mentioned you probably need to sync, as I think this should be setPseudo.
(looks to me that setShadowPseudoId was removed in http://trac.webkit.org/changeset/133749)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>784349</commentid>
    <comment_count>11</comment_count>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-05 17:40:08 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 177639 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=177639&amp;action=review
&gt; 
&gt; &gt; LayoutTests/ChangeLog:3
&gt; &gt; +        Implement general ::cue pseudo element for the &lt;video&gt;
&gt; 
&gt; Would you have thoughts / knowledge about parsing / filter so that only some CSS properties can be applied?

Yes, that was implemented and I will roll out the patch in a separate bug.

&gt; Couldn&apos;t the same be achieved by overriding shadowPseudoId() in TextTrackCueBox?
&gt; 
&gt; It would avoid creating a container within a container and it would match
&gt; individually each list of WebVTT node objects.

I guess it is not possible to have several pseudoIDs for the same element. And I can&apos;t use the same pseudoID because the default properties may be not in the whitelist.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>784385</commentid>
    <comment_count>12</comment_count>
    <who name="Victor Carbune">vcarbune</who>
    <bug_when>2012-12-05 17:59:11 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; (In reply to comment #10)
&gt; &gt; (From update of attachment 177639 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=177639&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; LayoutTests/ChangeLog:3
&gt; &gt; &gt; +        Implement general ::cue pseudo element for the &lt;video&gt;
&gt; &gt; 
&gt; &gt; Would you have thoughts / knowledge about parsing / filter so that only some CSS properties can be applied?
&gt; 
&gt; Yes, that was implemented and I will roll out the patch in a separate bug.
Nice!

&gt; &gt; Couldn&apos;t the same be achieved by overriding shadowPseudoId() in TextTrackCueBox?
&gt; &gt; 
&gt; &gt; It would avoid creating a container within a container and it would match
&gt; &gt; individually each list of WebVTT node objects.
&gt; 
&gt; I guess it is not possible to have several pseudoIDs for the same element. And I can&apos;t use the same pseudoID because the default properties may be not in the whitelist.
Oups, sorry for the rush. You&apos;re right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>784494</commentid>
    <comment_count>13</comment_count>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-05 19:24:48 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; (In reply to comment #11)
&gt; &gt; (In reply to comment #10)

&gt; &gt; I guess it is not possible to have several pseudoIDs for the same element. And I can&apos;t use the same pseudoID because the default properties may be not in the whitelist.
&gt; Oups, sorry for the rush. You&apos;re right.

There is still a possibility to use ::cue for both cases, and we could check where the ruleset comes from — from the user agent stylesheet or the author stylesheet. In this case we have to get rid of the -text-track prefixed pseudoID which may be hard. Is it already been used by someone?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>784495</commentid>
    <comment_count>14</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2012-12-05 19:31:24 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; (In reply to comment #12)
&gt; &gt; (In reply to comment #11)
&gt; &gt; &gt; (In reply to comment #10)
&gt; 
&gt; &gt; &gt; I guess it is not possible to have several pseudoIDs for the same element. And I can&apos;t use the same pseudoID because the default properties may be not in the whitelist.
&gt; &gt; Oups, sorry for the rush. You&apos;re right.
&gt; 
&gt; There is still a possibility to use ::cue for both cases, and we could check where the ruleset comes from — from the user agent stylesheet or the author stylesheet. In this case we have to get rid of the -text-track prefixed pseudoID which may be hard. Is it already been used by someone?

The pseudoID is an implementation detail and should only be used inside of WebKit, so we can change it as needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785565</commentid>
    <comment_count>15</comment_count>
      <attachid>178141</attachid>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-06 20:01:11 -0800</bug_when>
    <thetext>Created attachment 178141
Proposed fix 0.4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785567</commentid>
    <comment_count>16</comment_count>
      <attachid>178142</attachid>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-06 20:03:45 -0800</bug_when>
    <thetext>Created attachment 178142
Proposed fix 0.5</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785685</commentid>
    <comment_count>17</comment_count>
      <attachid>178142</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-06 23:57:38 -0800</bug_when>
    <thetext>Comment on attachment 178142
Proposed fix 0.5

Attachment 178142 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/15187193

New failing tests:
media/track/track-cues-seeking.html
media/track/track-mode.html
media/track/track-cue-rendering-inner-timestamps.html
media/track/track-cues-pause-on-exit.html
media/track/track-cue-mutable-fragment.html
media/track/track-cues-enter-exit.html
media/track/track-cue-mutable-text.html
media/track/track-cue-rendering.html
media/track/track-cues-sorted-before-dispatch.html
media/track/track-active-cues.html
media/track/track-cues-missed.html
media/track/track-cue-nothing-to-render.html
media/track/track-css-all-cues.html
media/track/track-mode-disabled-crash.html
media/video-controls-captions.html
media/track/track-cue-container-rendering-position.html
media/track/track-kind.html
media/track/track-cues-cuechange.html
media/track/track-mode-not-changed-by-new-track.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>786119</commentid>
    <comment_count>18</comment_count>
      <attachid>178268</attachid>
    <who name="Dima Gorbik">dgorbik</who>
    <bug_when>2012-12-07 13:58:22 -0800</bug_when>
    <thetext>Created attachment 178268
Proposed fix 0.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>786215</commentid>
    <comment_count>19</comment_count>
      <attachid>178268</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-07 15:11:59 -0800</bug_when>
    <thetext>Comment on attachment 178268
Proposed fix 0.6

Clearing flags on attachment: 178268

Committed r136991: &lt;http://trac.webkit.org/changeset/136991&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>786216</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-07 15:12:05 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791947</commentid>
    <comment_count>21</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2012-12-14 16:17:37 -0800</bug_when>
    <thetext>&lt;rdar://problem/12887273&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>177561</attachid>
            <date>2012-12-04 14:23:02 -0800</date>
            <delta_ts>2012-12-04 17:35:19 -0800</delta_ts>
            <desc>Proposed fix 0.1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>2676</size>
            <attacher name="Dima Gorbik">dgorbik</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1l
bnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRz
LmNwcAppbmRleCA5MDY0NjYwLi4xYmI4YTg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwCkBAIC0xMzAwLDYgKzEzMDAsMTQg
QEAgaW5saW5lIE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6Ok1lZGlhQ29u
dHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW0KICAgICAsIG1fZm9udFNpemUoMCkKIHsKIH0KKyAg
ICAKK3ZvaWQgTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6Y3JlYXRlU3Vi
dHJlZXMoRG9jdW1lbnQqIGRvY3VtZW50KQoreworICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29u
c3QgQXRvbWljU3RyaW5nLCBjdWUsICgiY3VlIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9t
TGl0ZXJhbCkpOworICAgIG1fY3VlQ29udGFpbmVyID0gSFRNTEVsZW1lbnQ6OmNyZWF0ZShzcGFu
VGFnLCBkb2N1bWVudCk7CisgICAgbV9jdWVDb250YWluZXItPnNldFNoYWRvd1BzZXVkb0lkKGN1
ZSk7CisgICAgYXBwZW5kQ2hpbGQobV9jdWVDb250YWluZXIsIEFTU0VSVF9OT19FWENFUFRJT04s
IHRydWUpOworfQogCiBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVs
ZW1lbnQ+IE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OmNyZWF0ZShEb2N1
bWVudCogZG9jdW1lbnQpCiB7CkBAIC0xMzc4LDcgKzEzODYsNyBAQCB2b2lkIE1lZGlhQ29udHJv
bFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OnVwZGF0ZURpc3BsYXkoKQogCiAgICAgICAgIGlm
IChkaXNwbGF5Qm94LT5oYXNDaGlsZE5vZGVzKCkgJiYgIWNvbnRhaW5zKHN0YXRpY19jYXN0PE5v
ZGUqPihkaXNwbGF5Qm94LmdldCgpKSkpCiAgICAgICAgICAgICAvLyBOb3RlOiB0aGUgZGlzcGxh
eSB0cmVlIG9mIGEgY3VlIGlzIHJlbW92ZWQgd2hlbiB0aGUgYWN0aXZlIGZsYWcgb2YgdGhlIGN1
ZSBpcyB1bnNldC4KLSAgICAgICAgICAgIGFwcGVuZENoaWxkKGRpc3BsYXlCb3gsIEFTU0VSVF9O
T19FWENFUFRJT04sIGZhbHNlKTsKKyAgICAgICAgICAgIG1fY3VlQ29udGFpbmVyLT5hcHBlbmRD
aGlsZChkaXNwbGF5Qm94LCBBU1NFUlRfTk9fRVhDRVBUSU9OLCBmYWxzZSk7CiAgICAgfQogCiAg
ICAgLy8gMTEuIFJldHVybiBvdXRwdXQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvTWVkaWFDb250cm9sRWxlbWVudHMuaAppbmRleCA2NmNiMmRhLi43NDQwNTZlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmgKQEAg
LTU0MCw2ICs1NDAsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHVwZGF0ZURpc3BsYXkoKTsKICAg
ICB2b2lkIHVwZGF0ZVNpemVzKCk7CisgICAgdm9pZCBjcmVhdGVTdWJ0cmVlcyhEb2N1bWVudCop
OwogCiBwcml2YXRlOgogICAgIE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQo
RG9jdW1lbnQqKTsKQEAgLTU1MCw2ICs1NTEsNyBAQCBwcml2YXRlOgogCiAgICAgSW50UmVjdCBt
X3ZpZGVvRGlzcGxheVNpemU7CiAgICAgZmxvYXQgbV9mb250U2l6ZTsKKyAgICBSZWZQdHI8SFRN
TEVsZW1lbnQ+IG1fY3VlQ29udGFpbmVyOwogfTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xSb290RWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xSb290RWxlbWVudC5jcHAKaW5kZXgg
ZWY1NDFiYS4uOWY4ZDBmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9sUm9vdEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hh
ZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50LmNwcApAQCAtNjI3LDcgKzYyNyw5IEBAIHZvaWQg
TWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6OmNyZWF0ZVRleHRUcmFja0Rpc3BsYXkoKQogCiAgICAg
Ly8gSW5zZXJ0IGl0IGJlZm9yZSB0aGUgZmlyc3QgY29udHJvbGxlciBlbGVtZW50IHNvIGl0IGFs
d2F5cyBkaXNwbGF5cyBiZWhpbmQgdGhlIGNvbnRyb2xzLgogICAgIEV4Y2VwdGlvbkNvZGUgZWM7
Ci0gICAgaW5zZXJ0QmVmb3JlKHRleHREaXNwbGF5Q29udGFpbmVyLnJlbGVhc2UoKSwgbV9wYW5l
bCwgZWMsIHRydWUpOworICAgIGluc2VydEJlZm9yZSh0ZXh0RGlzcGxheUNvbnRhaW5lciwgbV9w
YW5lbCwgZWMsIHRydWUpOworICAgIHRleHREaXNwbGF5Q29udGFpbmVyLT5jcmVhdGVTdWJ0cmVl
cyhkb2N1bWVudCgpKTsKKyAgICB0ZXh0RGlzcGxheUNvbnRhaW5lci5yZWxlYXNlKCk7CiB9CiAK
IHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6OnNob3dUZXh0VHJhY2tEaXNwbGF5KCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>177621</attachid>
            <date>2012-12-04 17:35:19 -0800</date>
            <delta_ts>2012-12-04 18:29:13 -0800</delta_ts>
            <desc>Proposed fix 0.2</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>6656</size>
            <attacher name="Dima Gorbik">dgorbik</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBiY2ZkY2E5Li43ZjhjNWZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTItMTIt
MDQgIERpbWEgR29yYmlrICA8ZGdvcmJpa0BhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50
IGdlbmVyYWwgOjpjdWUgcHNldWRvIGVsZW1lbnQgZm9yIHRoZSA8dmlkZW8+CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQwNDMKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIG1lZGlhL3RyYWNrL2NhcHRp
b25zLXdlYnZ0dC9zdHlsaW5nLnZ0dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvdHJhY2svdHJh
Y2stY3NzLWFsbC1jdWVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvdHJh
Y2svdHJhY2stY3NzLWFsbC1jdWVzLmh0bWw6IEFkZGVkLgorCiAyMDEyLTExLTA1ICBTaW1vbiBG
cmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJlYmFzZWxpbmUgc29t
ZSBMaW9uIHJlc3VsdHMgdGhhdCB3ZXJlIGFmZmVjdGVkIGJ5IGVuYWJsaW5nIHN1YnBpeGVsIGxh
eW91dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2NhcHRpb25zLXdlYnZ0
dC9zdHlsaW5nLnZ0dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2NhcHRpb25zLXdlYnZ0dC9z
dHlsaW5nLnZ0dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OWZmODk5Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svY2FwdGlvbnMtd2VidnR0
L3N0eWxpbmcudnR0CkBAIC0wLDAgKzEsNCBAQAorV0VCVlRUCisKKzAwOjAwLjAwMCAtLT4gMDA6
MDQuMDAwCitMb3J1bSBpcHN1bQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1hbGwtY3Vlcy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3MtYWxsLWN1ZXMtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJmNDA5ZjQKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3MtYWxsLWN1ZXMtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAorVGVzdCB0aGF0IHN0eWxlIHRvIGFsbCBjdWVzIGlz
IGFwcGxpZWQgY29ycmVjdGx5LgorRVZFTlQoY2FucGxheXRocm91Z2gpCitFVkVOVChzZWVrZWQp
CitFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHlsZSh0ZXh0VHJhY2tEaXNwbGF5RWxlbWVudCh2aWRl
bykuZmlyc3RDaGlsZCkuY29sb3IgPT0gJ3JnYigyNTUsIDAsIDApJykgT0sKK0VORCBPRiBURVNU
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1hbGwtY3Vl
cy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stY3NzLWFsbC1jdWVzLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWRjYTBiYQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1hbGwtY3Vlcy5odG1sCkBA
IC0wLDAgKzEsNDAgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAg
ICAgIDxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBj
aGFyc2V0PXV0Zi04IiAvPgorCisgICAgICAgIDxzY3JpcHQgc3JjPS4uL21lZGlhLWZpbGUuanM+
PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPS4uL3ZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQgc3JjPS4uL21lZGlhLWNvbnRyb2xzLmpzPjwvc2NyaXB0PgorCisJ
CTxzdHlsZT4KKworCQl2aWRlbzo6Y3VlIHsgY29sb3I6cmVkIH0KKworCQk8L3N0eWxlPgorCisg
ICAgICAgIDxzY3JpcHQ+CisKKyAgICAgICAgZnVuY3Rpb24gc2Vla2VkKCkKKyAgICAgICAgewor
CSAgICAgICAgdGVzdEV4cGVjdGVkKCJnZXRDb21wdXRlZFN0eWxlKHRleHRUcmFja0Rpc3BsYXlF
bGVtZW50KHZpZGVvKS5maXJzdENoaWxkKS5jb2xvciIsICJyZ2IoMjU1LCAwLCAwKSIpOworCQkJ
ZW5kVGVzdCgpOworCQl9CisKKyAgICAgICAgZnVuY3Rpb24gbG9hZGVkKCkKKyAgICAgICAgewor
ICAgICAgICAgICAgY29uc29sZVdyaXRlKCJUZXN0IHRoYXQgc3R5bGUgdG8gYWxsIGN1ZXMgaXMg
YXBwbGllZCBjb3JyZWN0bHkuIik7CisgICAgICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7Cisg
ICAgICAgICAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICcuLi9jb250ZW50
L3Rlc3QnKTsKKyAgICAgICAgICAgIHdhaXRGb3JFdmVudCgnc2Vla2VkJywgc2Vla2VkKTsKKyAg
ICAgICAgICAgIHdhaXRGb3JFdmVudCgnY2FucGxheXRocm91Z2gnLCBmdW5jdGlvbigpIHsgdmlk
ZW8uY3VycmVudFRpbWUgPSAuNTsgfSk7CisgICAgICAgIH0KKworICAgICAgICA8L3NjcmlwdD4K
KyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJsb2FkZWQoKSI+CisgICAgICAgIDx2aWRl
byBjb250cm9scyA+CisgICAgICAgICAgICA8dHJhY2sgc3JjPSJjYXB0aW9ucy13ZWJ2dHQvc3R5
bGluZy52dHQiIGtpbmQ9ImNhcHRpb25zIiBkZWZhdWx0PgorICAgICAgICA8L3ZpZGVvPgorICAg
IDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmNjRhMTQwLi5lMjNiMWNlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTItMTItMDQgIERpbWEgR29yYmlrICA8ZGdvcmJpa0Bh
cHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IGdlbmVyYWwgOjpjdWUgcHNldWRvIGVsZW1l
bnQgZm9yIHRoZSA8dmlkZW8+CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDQwNDMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBJbXBsZW1lbnRlZCB0aGUgOjpjdWUgcHNldWRvIGVsZW1lbnQgdG8gYmUgYWJs
ZSB0byBzdHlsZSBhbGwgV2ViVlRUIGN1ZXMuCisKKyAgICAgICAgVGVzdDogbWVkaWEvdHJhY2sv
dHJhY2stY3NzLWFsbC1jdWVzLmh0bWwKKworICAgICAgICAqIGh0bWwvc2hhZG93L01lZGlhQ29u
dHJvbEVsZW1lbnRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6Y3JlYXRlU3VidHJlZXMpOgor
ICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6
dXBkYXRlRGlzcGxheSk6CisgICAgICAgICogaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVu
dHMuaDoKKyAgICAgICAgKE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQpOgor
ICAgICAgICAqIGh0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFJvb3RFbGVtZW50OjpjcmVhdGVUZXh0VHJhY2tEaXNw
bGF5KToKKwogMjAxMi0xMS0wNSAgR2VuZXZpZXZlIE1hayAgPGdtYWtAcmltLmNvbT4KIAogICAg
ICAgICBbQkxBQ0tCRVJSWV0gVXBkYXRlIHRvdWNoIGNvZGUgdG8gcmVmbGVjdCB0b3VjaCByZWZh
Y3RvcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9s
RWxlbWVudHMuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxl
bWVudHMuY3BwCmluZGV4IDkwNjQ2NjAuLmI3ZTJlMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAKQEAgLTEzMDEsNiArMTMw
MSwxNCBAQCBpbmxpbmUgTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6TWVk
aWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbQogewogfQogCit2b2lkIE1lZGlhQ29udHJv
bFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OmNyZWF0ZVN1YnRyZWVzKERvY3VtZW50KiBkb2N1
bWVudCkKK3sKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21pY1N0cmluZywgY3Vl
LCAoImN1ZSIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpKTsKKyAgICBtX2N1
ZUNvbnRhaW5lciA9IEhUTUxFbGVtZW50OjpjcmVhdGUoc3BhblRhZywgZG9jdW1lbnQpOworICAg
IG1fY3VlQ29udGFpbmVyLT5zZXRTaGFkb3dQc2V1ZG9JZChjdWUpOworICAgIGFwcGVuZENoaWxk
KG1fY3VlQ29udGFpbmVyLCBBU1NFUlRfTk9fRVhDRVBUSU9OLCB0cnVlKTsKK30KKwogUGFzc1Jl
ZlB0cjxNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50PiBNZWRpYUNvbnRyb2xU
ZXh0VHJhY2tDb250YWluZXJFbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQqIGRvY3VtZW50KQogewog
ICAgIFJlZlB0cjxNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50PiBlbGVtZW50
ID0gYWRvcHRSZWYobmV3IE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQoZG9j
dW1lbnQpKTsKQEAgLTEzNzgsNyArMTM4Niw3IEBAIHZvaWQgTWVkaWFDb250cm9sVGV4dFRyYWNr
Q29udGFpbmVyRWxlbWVudDo6dXBkYXRlRGlzcGxheSgpCiAKICAgICAgICAgaWYgKGRpc3BsYXlC
b3gtPmhhc0NoaWxkTm9kZXMoKSAmJiAhY29udGFpbnMoc3RhdGljX2Nhc3Q8Tm9kZSo+KGRpc3Bs
YXlCb3guZ2V0KCkpKSkKICAgICAgICAgICAgIC8vIE5vdGU6IHRoZSBkaXNwbGF5IHRyZWUgb2Yg
YSBjdWUgaXMgcmVtb3ZlZCB3aGVuIHRoZSBhY3RpdmUgZmxhZyBvZiB0aGUgY3VlIGlzIHVuc2V0
LgotICAgICAgICAgICAgYXBwZW5kQ2hpbGQoZGlzcGxheUJveCwgQVNTRVJUX05PX0VYQ0VQVElP
TiwgZmFsc2UpOworICAgICAgICAgICAgbV9jdWVDb250YWluZXItPmFwcGVuZENoaWxkKGRpc3Bs
YXlCb3gsIEFTU0VSVF9OT19FWENFUFRJT04sIGZhbHNlKTsKICAgICB9CiAKICAgICAvLyAxMS4g
UmV0dXJuIG91dHB1dC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01l
ZGlhQ29udHJvbEVsZW1lbnRzLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNv
bnRyb2xFbGVtZW50cy5oCmluZGV4IDY2Y2IyZGEuLjc0NDA1NmUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuaApAQCAtNTQwLDYgKzU0
MCw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgdXBkYXRlRGlzcGxheSgpOwogICAgIHZvaWQgdXBk
YXRlU2l6ZXMoKTsKKyAgICB2b2lkIGNyZWF0ZVN1YnRyZWVzKERvY3VtZW50Kik7CiAKIHByaXZh
dGU6CiAgICAgTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudChEb2N1bWVudCop
OwpAQCAtNTUwLDYgKzU1MSw3IEBAIHByaXZhdGU6CiAKICAgICBJbnRSZWN0IG1fdmlkZW9EaXNw
bGF5U2l6ZTsKICAgICBmbG9hdCBtX2ZvbnRTaXplOworICAgIFJlZlB0cjxIVE1MRWxlbWVudD4g
bV9jdWVDb250YWluZXI7CiB9OwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50LmNwcAppbmRleCBlZjU0MWJhLi45
ZjhkMGYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRy
b2xSb290RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFD
b250cm9sUm9vdEVsZW1lbnQuY3BwCkBAIC02MjcsNyArNjI3LDkgQEAgdm9pZCBNZWRpYUNvbnRy
b2xSb290RWxlbWVudDo6Y3JlYXRlVGV4dFRyYWNrRGlzcGxheSgpCiAKICAgICAvLyBJbnNlcnQg
aXQgYmVmb3JlIHRoZSBmaXJzdCBjb250cm9sbGVyIGVsZW1lbnQgc28gaXQgYWx3YXlzIGRpc3Bs
YXlzIGJlaGluZCB0aGUgY29udHJvbHMuCiAgICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICBpbnNl
cnRCZWZvcmUodGV4dERpc3BsYXlDb250YWluZXIucmVsZWFzZSgpLCBtX3BhbmVsLCBlYywgdHJ1
ZSk7CisgICAgaW5zZXJ0QmVmb3JlKHRleHREaXNwbGF5Q29udGFpbmVyLCBtX3BhbmVsLCBlYywg
dHJ1ZSk7CisgICAgdGV4dERpc3BsYXlDb250YWluZXItPmNyZWF0ZVN1YnRyZWVzKGRvY3VtZW50
KCkpOworICAgIHRleHREaXNwbGF5Q29udGFpbmVyLnJlbGVhc2UoKTsKIH0KIAogdm9pZCBNZWRp
YUNvbnRyb2xSb290RWxlbWVudDo6c2hvd1RleHRUcmFja0Rpc3BsYXkoKQo=
</data>
<flag name="review"
          id="193843"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>177639</attachid>
            <date>2012-12-04 18:29:13 -0800</date>
            <delta_ts>2012-12-06 20:01:11 -0800</delta_ts>
            <desc>Proposed fix 0.3</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>6966</size>
            <attacher name="Dima Gorbik">dgorbik</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBiY2ZkY2E5Li43ZjhjNWZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTItMTIt
MDQgIERpbWEgR29yYmlrICA8ZGdvcmJpa0BhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50
IGdlbmVyYWwgOjpjdWUgcHNldWRvIGVsZW1lbnQgZm9yIHRoZSA8dmlkZW8+CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQwNDMKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIG1lZGlhL3RyYWNrL2NhcHRp
b25zLXdlYnZ0dC9zdHlsaW5nLnZ0dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvdHJhY2svdHJh
Y2stY3NzLWFsbC1jdWVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvdHJh
Y2svdHJhY2stY3NzLWFsbC1jdWVzLmh0bWw6IEFkZGVkLgorCiAyMDEyLTExLTA1ICBTaW1vbiBG
cmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJlYmFzZWxpbmUgc29t
ZSBMaW9uIHJlc3VsdHMgdGhhdCB3ZXJlIGFmZmVjdGVkIGJ5IGVuYWJsaW5nIHN1YnBpeGVsIGxh
eW91dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2NhcHRpb25zLXdlYnZ0
dC9zdHlsaW5nLnZ0dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2NhcHRpb25zLXdlYnZ0dC9z
dHlsaW5nLnZ0dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OWZmODk5Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svY2FwdGlvbnMtd2VidnR0
L3N0eWxpbmcudnR0CkBAIC0wLDAgKzEsNCBAQAorV0VCVlRUCisKKzAwOjAwLjAwMCAtLT4gMDA6
MDQuMDAwCitMb3J1bSBpcHN1bQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1hbGwtY3Vlcy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3MtYWxsLWN1ZXMtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJmNDA5ZjQKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3MtYWxsLWN1ZXMtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAorVGVzdCB0aGF0IHN0eWxlIHRvIGFsbCBjdWVzIGlz
IGFwcGxpZWQgY29ycmVjdGx5LgorRVZFTlQoY2FucGxheXRocm91Z2gpCitFVkVOVChzZWVrZWQp
CitFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHlsZSh0ZXh0VHJhY2tEaXNwbGF5RWxlbWVudCh2aWRl
bykuZmlyc3RDaGlsZCkuY29sb3IgPT0gJ3JnYigyNTUsIDAsIDApJykgT0sKK0VORCBPRiBURVNU
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWNzcy1hbGwtY3Vl
cy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stY3NzLWFsbC1jdWVzLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWYyMWMzNjUKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1jc3MtYWxsLWN1ZXMuaHRtbApA
QCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAg
ICAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsg
Y2hhcnNldD11dGYtOCIgLz4KKworICAgICAgICA8c2NyaXB0IHNyYz0uLi9tZWRpYS1maWxlLmpz
Pjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0uLi92aWRlby10ZXN0LmpzPjwvc2NyaXB0
PgorICAgICAgICA8c2NyaXB0IHNyYz0uLi9tZWRpYS1jb250cm9scy5qcz48L3NjcmlwdD4KKwor
ICAgICAgICA8c3R5bGU+CisKKyAgICAgICAgdmlkZW86OmN1ZSB7IGNvbG9yOnJlZCB9CisKKyAg
ICAgICAgPC9zdHlsZT4KKworICAgICAgICA8c2NyaXB0PgorCisgICAgICAgIGZ1bmN0aW9uIHNl
ZWtlZCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29tcHV0ZWRT
dHlsZSh0ZXh0VHJhY2tEaXNwbGF5RWxlbWVudCh2aWRlbykuZmlyc3RDaGlsZCkuY29sb3IiLCAi
cmdiKDI1NSwgMCwgMCkiKTsKKyAgICAgICAgICAgIGVuZFRlc3QoKTsKKyAgICAgICAgfQorCisg
ICAgICAgIGZ1bmN0aW9uIGxvYWRlZCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnNvbGVX
cml0ZSgiVGVzdCB0aGF0IHN0eWxlIHRvIGFsbCBjdWVzIGlzIGFwcGxpZWQgY29ycmVjdGx5LiIp
OworICAgICAgICAgICAgZmluZE1lZGlhRWxlbWVudCgpOworICAgICAgICAgICAgdmlkZW8uc3Jj
ID0gZmluZE1lZGlhRmlsZSgndmlkZW8nLCAnLi4vY29udGVudC90ZXN0Jyk7CisgICAgICAgICAg
ICB3YWl0Rm9yRXZlbnQoJ3NlZWtlZCcsIHNlZWtlZCk7CisgICAgICAgICAgICB3YWl0Rm9yRXZl
bnQoJ2NhbnBsYXl0aHJvdWdoJywgZnVuY3Rpb24oKSB7IHZpZGVvLmN1cnJlbnRUaW1lID0gLjU7
IH0pOworICAgICAgICB9CisKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxi
b2R5IG9ubG9hZD0ibG9hZGVkKCkiPgorICAgICAgICA8dmlkZW8gY29udHJvbHMgPgorICAgICAg
ICAgICAgPHRyYWNrIHNyYz0iY2FwdGlvbnMtd2VidnR0L3N0eWxpbmcudnR0IiBraW5kPSJjYXB0
aW9ucyIgZGVmYXVsdD4KKyAgICAgICAgPC92aWRlbz4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKaW5kZXggZjY0YTE0MC4uOTQ4OWU5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBA
CisyMDEyLTEyLTA0ICBEaW1hIEdvcmJpayAgPGRnb3JiaWtAYXBwbGUuY29tPgorCisgICAgICAg
IEltcGxlbWVudCBnZW5lcmFsIDo6Y3VlIHBzZXVkbyBlbGVtZW50IGZvciB0aGUgPHZpZGVvPgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA0MDQzCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50
ZWQgdGhlIDo6Y3VlIHBzZXVkbyBlbGVtZW50IHRvIGJlIGFibGUgdG8gc3R5bGUgYWxsIFdlYlZU
VCBjdWVzLgorICAgICAgICBBZGRlZCB0aGUgc3ViY29udGFpbmVyIHdpdGggYSAnOjpjdWUnIHBz
ZXVkb0lkIGluIGJldHdlZW4gdGhlIFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQgYW5kIFdlYlZU
VCBub2RlcyB0byBzZXBhcmF0ZQorICAgICAgICB1c2VyIGFnZW50IGRlZmF1bHQgc3R5bGVzIGZy
b20gdXNlciBkZWZpbmVkIHN0eWxlcyBmb3IgdGhlIGN1ZSBlbGVtZW50cy4KKworICAgICAgICBU
ZXN0OiBtZWRpYS90cmFjay90cmFjay1jc3MtYWxsLWN1ZXMuaHRtbAorCisgICAgICAgICogaHRt
bC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6Y3JlYXRlU3VidHJlZXMpOiBjcmVh
dGUgYSBzdWJjb250YWluZXIgYW5kIHNldCBpdHMgcHNldWRvSWQgdG8gJzo6Y3VlJy4KKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OnVwZGF0
ZURpc3BsYXkpOiBhcHBlbmQgV2ViVlRUIG5vZGVzIHRvIHRoZSBuZXdseSBjcmVhdGVkIHN1YmNv
bnRhaW5lci4KKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5oOgor
ICAgICAgICAoTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudCk6CisgICAgICAg
ICogaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6OmNyZWF0ZVRleHRUcmFja0Rpc3BsYXkpOiBp
bml0aWF0ZSBjcmVhdGluZyBzdWJ0cmVlcyBmb3IgdGhlIE1lZGlhQ29udHJvbFRleHRUcmFja0Nv
bnRhaW5lckVsZW1lbnQuCisKIDIwMTItMTEtMDUgIEdlbmV2aWV2ZSBNYWsgIDxnbWFrQHJpbS5j
b20+CiAKICAgICAgICAgW0JMQUNLQkVSUlldIFVwZGF0ZSB0b3VjaCBjb2RlIHRvIHJlZmxlY3Qg
dG91Y2ggcmVmYWN0b3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01l
ZGlhQ29udHJvbEVsZW1lbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlh
Q29udHJvbEVsZW1lbnRzLmNwcAppbmRleCA5MDY0NjYwLi4xYmI4YTg4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwCkBAIC0x
MzAwLDYgKzEzMDAsMTQgQEAgaW5saW5lIE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVs
ZW1lbnQ6Ok1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW0KICAgICAsIG1fZm9udFNp
emUoMCkKIHsKIH0KKyAgICAKK3ZvaWQgTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxl
bWVudDo6Y3JlYXRlU3VidHJlZXMoRG9jdW1lbnQqIGRvY3VtZW50KQoreworICAgIERFRklORV9T
VEFUSUNfTE9DQUwoY29uc3QgQXRvbWljU3RyaW5nLCBjdWUsICgiY3VlIiwgQXRvbWljU3RyaW5n
OjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOworICAgIG1fY3VlQ29udGFpbmVyID0gSFRNTEVsZW1l
bnQ6OmNyZWF0ZShzcGFuVGFnLCBkb2N1bWVudCk7CisgICAgbV9jdWVDb250YWluZXItPnNldFNo
YWRvd1BzZXVkb0lkKGN1ZSk7CisgICAgYXBwZW5kQ2hpbGQobV9jdWVDb250YWluZXIsIEFTU0VS
VF9OT19FWENFUFRJT04sIHRydWUpOworfQogCiBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFRleHRU
cmFja0NvbnRhaW5lckVsZW1lbnQ+IE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1l
bnQ6OmNyZWF0ZShEb2N1bWVudCogZG9jdW1lbnQpCiB7CkBAIC0xMzc4LDcgKzEzODYsNyBAQCB2
b2lkIE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OnVwZGF0ZURpc3BsYXko
KQogCiAgICAgICAgIGlmIChkaXNwbGF5Qm94LT5oYXNDaGlsZE5vZGVzKCkgJiYgIWNvbnRhaW5z
KHN0YXRpY19jYXN0PE5vZGUqPihkaXNwbGF5Qm94LmdldCgpKSkpCiAgICAgICAgICAgICAvLyBO
b3RlOiB0aGUgZGlzcGxheSB0cmVlIG9mIGEgY3VlIGlzIHJlbW92ZWQgd2hlbiB0aGUgYWN0aXZl
IGZsYWcgb2YgdGhlIGN1ZSBpcyB1bnNldC4KLSAgICAgICAgICAgIGFwcGVuZENoaWxkKGRpc3Bs
YXlCb3gsIEFTU0VSVF9OT19FWENFUFRJT04sIGZhbHNlKTsKKyAgICAgICAgICAgIG1fY3VlQ29u
dGFpbmVyLT5hcHBlbmRDaGlsZChkaXNwbGF5Qm94LCBBU1NFUlRfTk9fRVhDRVBUSU9OLCBmYWxz
ZSk7CiAgICAgfQogCiAgICAgLy8gMTEuIFJldHVybiBvdXRwdXQuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5oIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuaAppbmRleCA2NmNiMmRhLi43
NDQwNTZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRy
b2xFbGVtZW50cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJv
bEVsZW1lbnRzLmgKQEAgLTU0MCw2ICs1NDAsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHVwZGF0
ZURpc3BsYXkoKTsKICAgICB2b2lkIHVwZGF0ZVNpemVzKCk7CisgICAgdm9pZCBjcmVhdGVTdWJ0
cmVlcyhEb2N1bWVudCopOwogCiBwcml2YXRlOgogICAgIE1lZGlhQ29udHJvbFRleHRUcmFja0Nv
bnRhaW5lckVsZW1lbnQoRG9jdW1lbnQqKTsKQEAgLTU1MCw2ICs1NTEsNyBAQCBwcml2YXRlOgog
CiAgICAgSW50UmVjdCBtX3ZpZGVvRGlzcGxheVNpemU7CiAgICAgZmxvYXQgbV9mb250U2l6ZTsK
KyAgICBSZWZQdHI8SFRNTEVsZW1lbnQ+IG1fY3VlQ29udGFpbmVyOwogfTsKIAogI2VuZGlmCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xSb290RWxl
bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xSb290RWxl
bWVudC5jcHAKaW5kZXggZWY1NDFiYS4uOWY4ZDBmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50LmNwcApAQCAtNjI3LDcg
KzYyNyw5IEBAIHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6OmNyZWF0ZVRleHRUcmFja0Rp
c3BsYXkoKQogCiAgICAgLy8gSW5zZXJ0IGl0IGJlZm9yZSB0aGUgZmlyc3QgY29udHJvbGxlciBl
bGVtZW50IHNvIGl0IGFsd2F5cyBkaXNwbGF5cyBiZWhpbmQgdGhlIGNvbnRyb2xzLgogICAgIEV4
Y2VwdGlvbkNvZGUgZWM7Ci0gICAgaW5zZXJ0QmVmb3JlKHRleHREaXNwbGF5Q29udGFpbmVyLnJl
bGVhc2UoKSwgbV9wYW5lbCwgZWMsIHRydWUpOworICAgIGluc2VydEJlZm9yZSh0ZXh0RGlzcGxh
eUNvbnRhaW5lciwgbV9wYW5lbCwgZWMsIHRydWUpOworICAgIHRleHREaXNwbGF5Q29udGFpbmVy
LT5jcmVhdGVTdWJ0cmVlcyhkb2N1bWVudCgpKTsKKyAgICB0ZXh0RGlzcGxheUNvbnRhaW5lci5y
ZWxlYXNlKCk7CiB9CiAKIHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6OnNob3dUZXh0VHJh
Y2tEaXNwbGF5KCkK
</data>
<flag name="review"
          id="193867"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178141</attachid>
            <date>2012-12-06 20:01:11 -0800</date>
            <delta_ts>2012-12-06 20:03:45 -0800</delta_ts>
            <desc>Proposed fix 0.4</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>5451</size>
            <attacher name="Dima Gorbik">dgorbik</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlMjMwMjE1Li5jY2VlYzZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTItMTIt
MDYgIERpbWEgR29yYmlrICA8ZGdvcmJpa0BhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50
IGdlbmVyYWwgOjpjdWUgcHNldWRvIGVsZW1lbnQgZm9yIHRoZSA8dmlkZW8+CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQwNDMKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIG1lZGlhL3RyYWNrL2NhcHRp
b25zLXdlYnZ0dC9zdHlsaW5nLnZ0dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvdHJhY2svdHJh
Y2stY3NzLWFsbC1jdWVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvdHJh
Y2svdHJhY2stY3NzLWFsbC1jdWVzLmh0bWw6IEFkZGVkLgorCiAyMDEyLTEyLTA2ICBEYXZpZCBH
cm9nYW4gIDxkZ3JvZ2FuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBJbmRleGVkREI6IEFkZCB3
ZWJraXRFcnJvck1lc3NhZ2UgdG8gSURCVHJhbnNhY3Rpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA4M2MxZDhh
Li42MjFiNjUzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEyLTEyLTA2ICBEaW1h
IEdvcmJpayAgPGRnb3JiaWtAYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCBnZW5lcmFs
IDo6Y3VlIHBzZXVkbyBlbGVtZW50IGZvciB0aGUgPHZpZGVvPgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA0MDQzCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50ZWQgdGhlIDo6Y3VlIHBzZXVk
byBlbGVtZW50IHRvIGJlIGFibGUgdG8gc3R5bGUgYWxsIFdlYlZUVCBjdWVzLgorICAgICAgICBB
ZGRlZCB0aGUgc3ViY29udGFpbmVyIHdpdGggYSAnOjpjdWUnIHBzZXVkb0lkIGluIGJldHdlZW4g
dGhlIFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQgYW5kIFdlYlZUVCBub2RlcyB0byBzZXBhcmF0
ZQorICAgICAgICB1c2VyIGFnZW50IGRlZmF1bHQgc3R5bGVzIGZyb20gdXNlciBkZWZpbmVkIHN0
eWxlcyBmb3IgdGhlIGN1ZSBlbGVtZW50cy4KKworICAgICAgICBUZXN0OiBtZWRpYS90cmFjay90
cmFjay1jc3MtYWxsLWN1ZXMuaHRtbAorCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDog
OjpjdWUgcHNldWRvIHNlbGVjdG9yIGRvZXNuJ3QgaGF2ZSBhIHZhbGlkIHByZWZpeCBidXQgc2hv
dWxkIGJlIGFsbG93ZWQgaW4gdGhlIHVzZXItYWdlbnQgc3R5bGVzaGVldC4KKyAgICAgICAgKFdl
YkNvcmU6OkNTU1NlbGVjdG9yOjpwYXJzZVBzZXVkb1R5cGUpOgorICAgICAgICAqIGh0bWwvc2hh
ZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29u
dHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OmNyZWF0ZVN1YnRyZWVzKTogY3JlYXRlIGEg
c3ViY29udGFpbmVyIGFuZCBzZXQgaXRzIHBzZXVkb0lkIHRvICc6OmN1ZScuCisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50Ojp1cGRhdGVEaXNw
bGF5KTogYXBwZW5kIFdlYlZUVCBub2RlcyB0byB0aGUgbmV3bHkgY3JlYXRlZCBzdWJjb250YWlu
ZXIuCisgICAgICAgICogaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuaDoKKyAgICAg
ICAgKE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQpOgorICAgICAgICAqIGh0
bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
Ok1lZGlhQ29udHJvbFJvb3RFbGVtZW50OjpjcmVhdGVUZXh0VHJhY2tEaXNwbGF5KTogaW5pdGlh
dGUgY3JlYXRpbmcgc3VidHJlZXMgZm9yIHRoZSBNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWlu
ZXJFbGVtZW50LgorCiAyMDEyLTEyLTA2ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1Ad2Via2l0
Lm9yZz4KIAogICAgICAgICBbV2luZG93cywgV2luQ2Fpcm9dIFVucmV2aWV3ZWQgYnVpbGQgY29y
cmVjdGlvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwCmluZGV4IGM5ZGQxOTMuLmZkYzY3
NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNwcApAQCAtMzk1LDcgKzM5NSw3IEBAIENT
U1NlbGVjdG9yOjpQc2V1ZG9UeXBlIENTU1NlbGVjdG9yOjpwYXJzZVBzZXVkb1R5cGUoY29uc3Qg
QXRvbWljU3RyaW5nJiBuYW1lKQogCiAgICAgaWYgKG5hbWUuc3RhcnRzV2l0aCgiLXdlYmtpdC0i
KSkKICAgICAgICAgcmV0dXJuIFBzZXVkb1dlYktpdEN1c3RvbUVsZW1lbnQ7Ci0gICAgaWYgKG5h
bWUuc3RhcnRzV2l0aCgieC0iKSkKKyAgICBpZiAobmFtZS5zdGFydHNXaXRoKCJ4LSIpIHx8IG5h
bWUuc3RhcnRzV2l0aCgiY3VlIikpCiAgICAgICAgIHJldHVybiBQc2V1ZG9Vc2VyQWdlbnRDdXN0
b21FbGVtZW50OwogCiAgICAgcmV0dXJuIFBzZXVkb1Vua25vd247CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAKaW5kZXggNjg4MDkz
NC4uNDg1NGQ0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFD
b250cm9sRWxlbWVudHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlh
Q29udHJvbEVsZW1lbnRzLmNwcApAQCAtMTE4Niw2ICsxMTg2LDE0IEBAIE1lZGlhQ29udHJvbFRl
eHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVs
ZW1lbnQoRG9jCiAgICAgLCBtX2ZvbnRTaXplKDApCiB7CiB9CisgICAgCit2b2lkIE1lZGlhQ29u
dHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OmNyZWF0ZVN1YnRyZWVzKERvY3VtZW50KiBk
b2N1bWVudCkKK3sKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21pY1N0cmluZywg
Y3VlLCAoImN1ZSIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpKTsKKyAgICBt
X2N1ZUNvbnRhaW5lciA9IEhUTUxFbGVtZW50OjpjcmVhdGUoc3BhblRhZywgZG9jdW1lbnQpOwor
ICAgIG1fY3VlQ29udGFpbmVyLT5zZXRQc2V1ZG8oY3VlKTsKKyAgICBhcHBlbmRDaGlsZChtX2N1
ZUNvbnRhaW5lciwgQVNTRVJUX05PX0VYQ0VQVElPTiwgZmFsc2UpOworfQogCiBQYXNzUmVmUHRy
PE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ+IE1lZGlhQ29udHJvbFRleHRU
cmFja0NvbnRhaW5lckVsZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCogZG9jdW1lbnQpCiB7CkBAIC0x
MjY0LDcgKzEyNzIsNyBAQCB2b2lkIE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1l
bnQ6OnVwZGF0ZURpc3BsYXkoKQogCiAgICAgICAgIGlmIChkaXNwbGF5Qm94LT5oYXNDaGlsZE5v
ZGVzKCkgJiYgIWNvbnRhaW5zKHN0YXRpY19jYXN0PE5vZGUqPihkaXNwbGF5Qm94LmdldCgpKSkp
CiAgICAgICAgICAgICAvLyBOb3RlOiB0aGUgZGlzcGxheSB0cmVlIG9mIGEgY3VlIGlzIHJlbW92
ZWQgd2hlbiB0aGUgYWN0aXZlIGZsYWcgb2YgdGhlIGN1ZSBpcyB1bnNldC4KLSAgICAgICAgICAg
IGFwcGVuZENoaWxkKGRpc3BsYXlCb3gsIEFTU0VSVF9OT19FWENFUFRJT04sIGZhbHNlKTsKKyAg
ICAgICAgICAgIG1fY3VlQ29udGFpbmVyLT5hcHBlbmRDaGlsZChkaXNwbGF5Qm94LCBBU1NFUlRf
Tk9fRVhDRVBUSU9OLCBmYWxzZSk7CiAgICAgfQogCiAgICAgLy8gMTEuIFJldHVybiBvdXRwdXQu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVt
ZW50cy5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMu
aAppbmRleCAwMjY1NmNjLi4xYjYzMjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
c2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmgKQEAgLTQzNSw2ICs0MzUsNyBAQCBwdWJsaWM6
CiAKICAgICB2b2lkIHVwZGF0ZURpc3BsYXkoKTsKICAgICB2b2lkIHVwZGF0ZVNpemVzKCk7Cisg
ICAgdm9pZCBjcmVhdGVTdWJ0cmVlcyhEb2N1bWVudCopOwogCiBwcml2YXRlOgogICAgIGV4cGxp
Y2l0IE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQoRG9jdW1lbnQqKTsKQEAg
LTQ0NCw2ICs0NDUsNyBAQCBwcml2YXRlOgogCiAgICAgSW50UmVjdCBtX3ZpZGVvRGlzcGxheVNp
emU7CiAgICAgZmxvYXQgbV9mb250U2l6ZTsKKyAgICBSZWZQdHI8SFRNTEVsZW1lbnQ+IG1fY3Vl
Q29udGFpbmVyOwogfTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3NoYWRvdy9NZWRpYUNvbnRyb2xzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01l
ZGlhQ29udHJvbHMuY3BwCmluZGV4IGRjYjdkOTEuLjVlZmU1ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbHMuY3BwCkBAIC0zNjksNyArMzY5LDkgQEAgdm9p
ZCBNZWRpYUNvbnRyb2xzOjpjcmVhdGVUZXh0VHJhY2tEaXNwbGF5KCkKIAogICAgIC8vIEluc2Vy
dCBpdCBiZWZvcmUgdGhlIGZpcnN0IGNvbnRyb2xsZXIgZWxlbWVudCBzbyBpdCBhbHdheXMgZGlz
cGxheXMgYmVoaW5kIHRoZSBjb250cm9scy4KICAgICBFeGNlcHRpb25Db2RlIGVjOwotICAgIGlu
c2VydEJlZm9yZSh0ZXh0RGlzcGxheUNvbnRhaW5lci5yZWxlYXNlKCksIG1fcGFuZWwsIGVjLCB0
cnVlKTsKKyAgICBpbnNlcnRCZWZvcmUodGV4dERpc3BsYXlDb250YWluZXIsIG1fcGFuZWwsIGVj
LCB0cnVlKTsKKyAgICB0ZXh0RGlzcGxheUNvbnRhaW5lci0+Y3JlYXRlU3VidHJlZXMoZG9jdW1l
bnQoKSk7CisgICAgdGV4dERpc3BsYXlDb250YWluZXIucmVsZWFzZSgpOwogfQogCiB2b2lkIE1l
ZGlhQ29udHJvbHM6OnNob3dUZXh0VHJhY2tEaXNwbGF5KCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178142</attachid>
            <date>2012-12-06 20:03:45 -0800</date>
            <delta_ts>2012-12-07 13:58:22 -0800</delta_ts>
            <desc>Proposed fix 0.5</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>7609</size>
            <attacher name="Dima Gorbik">dgorbik</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlMjMwMjE1Li5jY2VlYzZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTItMTIt
MDYgIERpbWEgR29yYmlrICA8ZGdvcmJpa0BhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50
IGdlbmVyYWwgOjpjdWUgcHNldWRvIGVsZW1lbnQgZm9yIHRoZSA8dmlkZW8+CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQwNDMKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIG1lZGlhL3RyYWNrL2NhcHRp
b25zLXdlYnZ0dC9zdHlsaW5nLnZ0dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvdHJhY2svdHJh
Y2stY3NzLWFsbC1jdWVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvdHJh
Y2svdHJhY2stY3NzLWFsbC1jdWVzLmh0bWw6IEFkZGVkLgorCiAyMDEyLTEyLTA2ICBEYXZpZCBH
cm9nYW4gIDxkZ3JvZ2FuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBJbmRleGVkREI6IEFkZCB3
ZWJraXRFcnJvck1lc3NhZ2UgdG8gSURCVHJhbnNhY3Rpb24KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL21lZGlhL3RyYWNrL2NhcHRpb25zLXdlYnZ0dC9zdHlsaW5nLnZ0dCBiL0xheW91dFRlc3Rz
L21lZGlhL3RyYWNrL2NhcHRpb25zLXdlYnZ0dC9zdHlsaW5nLnZ0dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi43OWZmODk5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdHJhY2svY2FwdGlvbnMtd2VidnR0L3N0eWxpbmcudnR0CkBAIC0wLDAgKzEsNCBA
QAorV0VCVlRUCisKKzAwOjAwLjAwMCAtLT4gMDA6MDQuMDAwCitMb3J1bSBpcHN1bQpcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNr
L3RyYWNrLWNzcy1hbGwtY3Vlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFj
ay90cmFjay1jc3MtYWxsLWN1ZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmJmNDA5ZjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRp
YS90cmFjay90cmFjay1jc3MtYWxsLWN1ZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAor
VGVzdCB0aGF0IHN0eWxlIHRvIGFsbCBjdWVzIGlzIGFwcGxpZWQgY29ycmVjdGx5LgorRVZFTlQo
Y2FucGxheXRocm91Z2gpCitFVkVOVChzZWVrZWQpCitFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHls
ZSh0ZXh0VHJhY2tEaXNwbGF5RWxlbWVudCh2aWRlbykuZmlyc3RDaGlsZCkuY29sb3IgPT0gJ3Jn
YigyNTUsIDAsIDApJykgT0sKK0VORCBPRiBURVNUCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L21lZGlhL3RyYWNrL3RyYWNrLWNzcy1hbGwtY3Vlcy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dHJhY2svdHJhY2stY3NzLWFsbC1jdWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uZWYyMWMzNjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90
cmFjay90cmFjay1jc3MtYWxsLWN1ZXMuaHRtbApAQCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250
ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCIgLz4KKworICAgICAg
ICA8c2NyaXB0IHNyYz0uLi9tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0uLi92aWRlby10ZXN0LmpzPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0uLi9t
ZWRpYS1jb250cm9scy5qcz48L3NjcmlwdD4KKworICAgICAgICA8c3R5bGU+CisKKyAgICAgICAg
dmlkZW86OmN1ZSB7IGNvbG9yOnJlZCB9CisKKyAgICAgICAgPC9zdHlsZT4KKworICAgICAgICA8
c2NyaXB0PgorCisgICAgICAgIGZ1bmN0aW9uIHNlZWtlZCgpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZSh0ZXh0VHJhY2tEaXNwbGF5RWxlbWVu
dCh2aWRlbykuZmlyc3RDaGlsZCkuY29sb3IiLCAicmdiKDI1NSwgMCwgMCkiKTsKKyAgICAgICAg
ICAgIGVuZFRlc3QoKTsKKyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9uIGxvYWRlZCgpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgiVGVzdCB0aGF0IHN0eWxlIHRvIGFs
bCBjdWVzIGlzIGFwcGxpZWQgY29ycmVjdGx5LiIpOworICAgICAgICAgICAgZmluZE1lZGlhRWxl
bWVudCgpOworICAgICAgICAgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgndmlkZW8nLCAn
Li4vY29udGVudC90ZXN0Jyk7CisgICAgICAgICAgICB3YWl0Rm9yRXZlbnQoJ3NlZWtlZCcsIHNl
ZWtlZCk7CisgICAgICAgICAgICB3YWl0Rm9yRXZlbnQoJ2NhbnBsYXl0aHJvdWdoJywgZnVuY3Rp
b24oKSB7IHZpZGVvLmN1cnJlbnRUaW1lID0gLjU7IH0pOworICAgICAgICB9CisKKyAgICAgICAg
PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0ibG9hZGVkKCkiPgorICAg
ICAgICA8dmlkZW8gY29udHJvbHMgPgorICAgICAgICAgICAgPHRyYWNrIHNyYz0iY2FwdGlvbnMt
d2VidnR0L3N0eWxpbmcudnR0IiBraW5kPSJjYXB0aW9ucyIgZGVmYXVsdD4KKyAgICAgICAgPC92
aWRlbz4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODNjMWQ4YS4uNjIxYjY1
MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAxMi0xMi0wNiAgRGltYSBHb3JiaWsg
IDxkZ29yYmlrQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgZ2VuZXJhbCA6OmN1ZSBw
c2V1ZG8gZWxlbWVudCBmb3IgdGhlIDx2aWRlbz4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDA0MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudGVkIHRoZSA6OmN1ZSBwc2V1ZG8gZWxlbWVu
dCB0byBiZSBhYmxlIHRvIHN0eWxlIGFsbCBXZWJWVFQgY3Vlcy4KKyAgICAgICAgQWRkZWQgdGhl
IHN1YmNvbnRhaW5lciB3aXRoIGEgJzo6Y3VlJyBwc2V1ZG9JZCBpbiBiZXR3ZWVuIHRoZSBUZXh0
VHJhY2tDb250YWluZXJFbGVtZW50IGFuZCBXZWJWVFQgbm9kZXMgdG8gc2VwYXJhdGUKKyAgICAg
ICAgdXNlciBhZ2VudCBkZWZhdWx0IHN0eWxlcyBmcm9tIHVzZXIgZGVmaW5lZCBzdHlsZXMgZm9y
IHRoZSBjdWUgZWxlbWVudHMuCisKKyAgICAgICAgVGVzdDogbWVkaWEvdHJhY2svdHJhY2stY3Nz
LWFsbC1jdWVzLmh0bWwKKworICAgICAgICAqIGNzcy9DU1NTZWxlY3Rvci5jcHA6IDo6Y3VlIHBz
ZXVkbyBzZWxlY3RvciBkb2Vzbid0IGhhdmUgYSB2YWxpZCBwcmVmaXggYnV0IHNob3VsZCBiZSBh
bGxvd2VkIGluIHRoZSB1c2VyLWFnZW50IHN0eWxlc2hlZXQuCisgICAgICAgIChXZWJDb3JlOjpD
U1NTZWxlY3Rvcjo6cGFyc2VQc2V1ZG9UeXBlKToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRp
YUNvbnRyb2xFbGVtZW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xUZXh0
VHJhY2tDb250YWluZXJFbGVtZW50OjpjcmVhdGVTdWJ0cmVlcyk6IGNyZWF0ZSBhIHN1YmNvbnRh
aW5lciBhbmQgc2V0IGl0cyBwc2V1ZG9JZCB0byAnOjpjdWUnLgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6dXBkYXRlRGlzcGxheSk6IGFw
cGVuZCBXZWJWVFQgbm9kZXMgdG8gdGhlIG5ld2x5IGNyZWF0ZWQgc3ViY29udGFpbmVyLgorICAg
ICAgICAqIGh0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmg6CisgICAgICAgIChNZWRp
YUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50KToKKyAgICAgICAgKiBodG1sL3NoYWRv
dy9NZWRpYUNvbnRyb2xSb290RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNv
bnRyb2xSb290RWxlbWVudDo6Y3JlYXRlVGV4dFRyYWNrRGlzcGxheSk6IGluaXRpYXRlIGNyZWF0
aW5nIHN1YnRyZWVzIGZvciB0aGUgTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVu
dC4KKwogMjAxMi0xMi0wNiAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQHdlYmtpdC5vcmc+CiAK
ICAgICAgICAgW1dpbmRvd3MsIFdpbkNhaXJvXSBVbnJldmlld2VkIGJ1aWxkIGNvcnJlY3Rpb24u
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNwcAppbmRleCBjOWRkMTkzLi5mZGM2NzQyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKQEAgLTM5NSw3ICszOTUsNyBAQCBDU1NTZWxlY3Rv
cjo6UHNldWRvVHlwZSBDU1NTZWxlY3Rvcjo6cGFyc2VQc2V1ZG9UeXBlKGNvbnN0IEF0b21pY1N0
cmluZyYgbmFtZSkKIAogICAgIGlmIChuYW1lLnN0YXJ0c1dpdGgoIi13ZWJraXQtIikpCiAgICAg
ICAgIHJldHVybiBQc2V1ZG9XZWJLaXRDdXN0b21FbGVtZW50OwotICAgIGlmIChuYW1lLnN0YXJ0
c1dpdGgoIngtIikpCisgICAgaWYgKG5hbWUuc3RhcnRzV2l0aCgieC0iKSB8fCBuYW1lLnN0YXJ0
c1dpdGgoImN1ZSIpKQogICAgICAgICByZXR1cm4gUHNldWRvVXNlckFnZW50Q3VzdG9tRWxlbWVu
dDsKIAogICAgIHJldHVybiBQc2V1ZG9Vbmtub3duOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwCmluZGV4IDY4ODA5MzQuLjQ4NTRk
NGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVs
ZW1lbnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xF
bGVtZW50cy5jcHAKQEAgLTExODYsNiArMTE4NiwxNCBAQCBNZWRpYUNvbnRyb2xUZXh0VHJhY2tD
b250YWluZXJFbGVtZW50OjpNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50KERv
YwogICAgICwgbV9mb250U2l6ZSgwKQogewogfQorICAgIAordm9pZCBNZWRpYUNvbnRyb2xUZXh0
VHJhY2tDb250YWluZXJFbGVtZW50OjpjcmVhdGVTdWJ0cmVlcyhEb2N1bWVudCogZG9jdW1lbnQp
Cit7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBBdG9taWNTdHJpbmcsIGN1ZSwgKCJj
dWUiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CisgICAgbV9jdWVDb250
YWluZXIgPSBIVE1MRWxlbWVudDo6Y3JlYXRlKHNwYW5UYWcsIGRvY3VtZW50KTsKKyAgICBtX2N1
ZUNvbnRhaW5lci0+c2V0UHNldWRvKGN1ZSk7CisgICAgYXBwZW5kQ2hpbGQobV9jdWVDb250YWlu
ZXIsIEFTU0VSVF9OT19FWENFUFRJT04sIGZhbHNlKTsKK30KIAogUGFzc1JlZlB0cjxNZWRpYUNv
bnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50PiBNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250
YWluZXJFbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQqIGRvY3VtZW50KQogewpAQCAtMTI2NCw3ICsx
MjcyLDcgQEAgdm9pZCBNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50Ojp1cGRh
dGVEaXNwbGF5KCkKIAogICAgICAgICBpZiAoZGlzcGxheUJveC0+aGFzQ2hpbGROb2RlcygpICYm
ICFjb250YWlucyhzdGF0aWNfY2FzdDxOb2RlKj4oZGlzcGxheUJveC5nZXQoKSkpKQogICAgICAg
ICAgICAgLy8gTm90ZTogdGhlIGRpc3BsYXkgdHJlZSBvZiBhIGN1ZSBpcyByZW1vdmVkIHdoZW4g
dGhlIGFjdGl2ZSBmbGFnIG9mIHRoZSBjdWUgaXMgdW5zZXQuCi0gICAgICAgICAgICBhcHBlbmRD
aGlsZChkaXNwbGF5Qm94LCBBU1NFUlRfTk9fRVhDRVBUSU9OLCBmYWxzZSk7CisgICAgICAgICAg
ICBtX2N1ZUNvbnRhaW5lci0+YXBwZW5kQ2hpbGQoZGlzcGxheUJveCwgQVNTRVJUX05PX0VYQ0VQ
VElPTiwgZmFsc2UpOwogICAgIH0KIAogICAgIC8vIDExLiBSZXR1cm4gb3V0cHV0LgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuaCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmgKaW5kZXgg
MDI2NTZjYy4uMWI2MzIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9sRWxlbWVudHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9N
ZWRpYUNvbnRyb2xFbGVtZW50cy5oCkBAIC00MzUsNiArNDM1LDcgQEAgcHVibGljOgogCiAgICAg
dm9pZCB1cGRhdGVEaXNwbGF5KCk7CiAgICAgdm9pZCB1cGRhdGVTaXplcygpOworICAgIHZvaWQg
Y3JlYXRlU3VidHJlZXMoRG9jdW1lbnQqKTsKIAogcHJpdmF0ZToKICAgICBleHBsaWNpdCBNZWRp
YUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50KERvY3VtZW50Kik7CkBAIC00NDQsNiAr
NDQ1LDcgQEAgcHJpdmF0ZToKIAogICAgIEludFJlY3QgbV92aWRlb0Rpc3BsYXlTaXplOwogICAg
IGZsb2F0IG1fZm9udFNpemU7CisgICAgUmVmUHRyPEhUTUxFbGVtZW50PiBtX2N1ZUNvbnRhaW5l
cjsKIH07CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9scy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRy
b2xzLmNwcAppbmRleCBkY2I3ZDkxLi41ZWZlNWQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3NoYWRvdy9NZWRpYUNvbnRyb2xzLmNwcApAQCAtMzY5LDcgKzM2OSw5IEBAIHZvaWQgTWVkaWFD
b250cm9sczo6Y3JlYXRlVGV4dFRyYWNrRGlzcGxheSgpCiAKICAgICAvLyBJbnNlcnQgaXQgYmVm
b3JlIHRoZSBmaXJzdCBjb250cm9sbGVyIGVsZW1lbnQgc28gaXQgYWx3YXlzIGRpc3BsYXlzIGJl
aGluZCB0aGUgY29udHJvbHMuCiAgICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICBpbnNlcnRCZWZv
cmUodGV4dERpc3BsYXlDb250YWluZXIucmVsZWFzZSgpLCBtX3BhbmVsLCBlYywgdHJ1ZSk7Cisg
ICAgaW5zZXJ0QmVmb3JlKHRleHREaXNwbGF5Q29udGFpbmVyLCBtX3BhbmVsLCBlYywgdHJ1ZSk7
CisgICAgdGV4dERpc3BsYXlDb250YWluZXItPmNyZWF0ZVN1YnRyZWVzKGRvY3VtZW50KCkpOwor
ICAgIHRleHREaXNwbGF5Q29udGFpbmVyLnJlbGVhc2UoKTsKIH0KIAogdm9pZCBNZWRpYUNvbnRy
b2xzOjpzaG93VGV4dFRyYWNrRGlzcGxheSgpCg==
</data>
<flag name="commit-queue"
          id="194594"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178268</attachid>
            <date>2012-12-07 13:58:22 -0800</date>
            <delta_ts>2012-12-07 15:11:59 -0800</delta_ts>
            <desc>Proposed fix 0.6</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>8503</size>
            <attacher name="Dima Gorbik">dgorbik</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlMjMwMjE1Li5lMjQ1MWUwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTItMTIt
MDcgIERpbWEgR29yYmlrICA8ZGdvcmJpa0BhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50
IGdlbmVyYWwgOjpjdWUgcHNldWRvIGVsZW1lbnQgZm9yIHRoZSA8dmlkZW8+CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQwNDMKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIG1lZGlhL3RyYWNrL2NhcHRp
b25zLXdlYnZ0dC9zdHlsaW5nLnZ0dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvdHJhY2svdHJh
Y2stY3NzLWFsbC1jdWVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvdHJh
Y2svdHJhY2stY3NzLWFsbC1jdWVzLmh0bWw6IEFkZGVkLgorCiAyMDEyLTEyLTA2ICBEYXZpZCBH
cm9nYW4gIDxkZ3JvZ2FuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBJbmRleGVkREI6IEFkZCB3
ZWJraXRFcnJvck1lc3NhZ2UgdG8gSURCVHJhbnNhY3Rpb24KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL21lZGlhL3RyYWNrL2NhcHRpb25zLXdlYnZ0dC9zdHlsaW5nLnZ0dCBiL0xheW91dFRlc3Rz
L21lZGlhL3RyYWNrL2NhcHRpb25zLXdlYnZ0dC9zdHlsaW5nLnZ0dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi43OWZmODk5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdHJhY2svY2FwdGlvbnMtd2VidnR0L3N0eWxpbmcudnR0CkBAIC0wLDAgKzEsNCBA
QAorV0VCVlRUCisKKzAwOjAwLjAwMCAtLT4gMDA6MDQuMDAwCitMb3J1bSBpcHN1bQpcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNr
L3RyYWNrLWNzcy1hbGwtY3Vlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFj
ay90cmFjay1jc3MtYWxsLWN1ZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmJmNDA5ZjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRp
YS90cmFjay90cmFjay1jc3MtYWxsLWN1ZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAor
VGVzdCB0aGF0IHN0eWxlIHRvIGFsbCBjdWVzIGlzIGFwcGxpZWQgY29ycmVjdGx5LgorRVZFTlQo
Y2FucGxheXRocm91Z2gpCitFVkVOVChzZWVrZWQpCitFWFBFQ1RFRCAoZ2V0Q29tcHV0ZWRTdHls
ZSh0ZXh0VHJhY2tEaXNwbGF5RWxlbWVudCh2aWRlbykuZmlyc3RDaGlsZCkuY29sb3IgPT0gJ3Jn
YigyNTUsIDAsIDApJykgT0sKK0VORCBPRiBURVNUCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L21lZGlhL3RyYWNrL3RyYWNrLWNzcy1hbGwtY3Vlcy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dHJhY2svdHJhY2stY3NzLWFsbC1jdWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uZWYyMWMzNjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90
cmFjay90cmFjay1jc3MtYWxsLWN1ZXMuaHRtbApAQCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250
ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCIgLz4KKworICAgICAg
ICA8c2NyaXB0IHNyYz0uLi9tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0uLi92aWRlby10ZXN0LmpzPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0uLi9t
ZWRpYS1jb250cm9scy5qcz48L3NjcmlwdD4KKworICAgICAgICA8c3R5bGU+CisKKyAgICAgICAg
dmlkZW86OmN1ZSB7IGNvbG9yOnJlZCB9CisKKyAgICAgICAgPC9zdHlsZT4KKworICAgICAgICA8
c2NyaXB0PgorCisgICAgICAgIGZ1bmN0aW9uIHNlZWtlZCgpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIHRlc3RFeHBlY3RlZCgiZ2V0Q29tcHV0ZWRTdHlsZSh0ZXh0VHJhY2tEaXNwbGF5RWxlbWVu
dCh2aWRlbykuZmlyc3RDaGlsZCkuY29sb3IiLCAicmdiKDI1NSwgMCwgMCkiKTsKKyAgICAgICAg
ICAgIGVuZFRlc3QoKTsKKyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9uIGxvYWRlZCgpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgiVGVzdCB0aGF0IHN0eWxlIHRvIGFs
bCBjdWVzIGlzIGFwcGxpZWQgY29ycmVjdGx5LiIpOworICAgICAgICAgICAgZmluZE1lZGlhRWxl
bWVudCgpOworICAgICAgICAgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgndmlkZW8nLCAn
Li4vY29udGVudC90ZXN0Jyk7CisgICAgICAgICAgICB3YWl0Rm9yRXZlbnQoJ3NlZWtlZCcsIHNl
ZWtlZCk7CisgICAgICAgICAgICB3YWl0Rm9yRXZlbnQoJ2NhbnBsYXl0aHJvdWdoJywgZnVuY3Rp
b24oKSB7IHZpZGVvLmN1cnJlbnRUaW1lID0gLjU7IH0pOworICAgICAgICB9CisKKyAgICAgICAg
PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0ibG9hZGVkKCkiPgorICAg
ICAgICA8dmlkZW8gY29udHJvbHMgPgorICAgICAgICAgICAgPHRyYWNrIHNyYz0iY2FwdGlvbnMt
d2VidnR0L3N0eWxpbmcudnR0IiBraW5kPSJjYXB0aW9ucyIgZGVmYXVsdD4KKyAgICAgICAgPC92
aWRlbz4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODNjMWQ4YS4uMDA3MWM4
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTEyLTA3ICBEaW1hIEdvcmJpayAg
PGRnb3JiaWtAYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCBnZW5lcmFsIDo6Y3VlIHBz
ZXVkbyBlbGVtZW50IGZvciB0aGUgPHZpZGVvPgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA0MDQzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50ZWQgdGhlIDo6Y3VlIHBzZXVkbyBlbGVtZW50
IHRvIGJlIGFibGUgdG8gc3R5bGUgYWxsIFdlYlZUVCBjdWVzLgorICAgICAgICBBZGRlZCB0aGUg
c3ViY29udGFpbmVyIHdpdGggYSAnOjpjdWUnIHBzZXVkb0lkIGluIGJldHdlZW4gdGhlIFRleHRU
cmFja0NvbnRhaW5lckVsZW1lbnQgYW5kIFdlYlZUVCBub2RlcyB0byBzZXBhcmF0ZQorICAgICAg
ICB1c2VyIGFnZW50IGRlZmF1bHQgc3R5bGVzIGZyb20gdXNlciBkZWZpbmVkIHN0eWxlcyBmb3Ig
dGhlIGN1ZSBlbGVtZW50cy4KKworICAgICAgICBUZXN0OiBtZWRpYS90cmFjay90cmFjay1jc3Mt
YWxsLWN1ZXMuaHRtbAorCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDogOjpjdWUgcHNl
dWRvIHNlbGVjdG9yIGRvZXNuJ3QgaGF2ZSBhIHZhbGlkIHByZWZpeCBidXQgc2hvdWxkIGJlIGFs
bG93ZWQgaW4gdGhlIHVzZXItYWdlbnQgc3R5bGVzaGVldC4KKyAgICAgICAgKFdlYkNvcmU6OkNT
U1NlbGVjdG9yOjpwYXJzZVBzZXVkb1R5cGUpOgorICAgICAgICAqIGh0bWwvc2hhZG93L01lZGlh
Q29udHJvbEVsZW1lbnRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29y
ZTo6TWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDo6Y3JlYXRlU3VidHJlZXMp
OiBjcmVhdGUgYSBzdWJjb250YWluZXIgYW5kIHNldCBpdHMgcHNldWRvSWQgdG8gJzo6Y3VlJy4K
KyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6
OnVwZGF0ZURpc3BsYXkpOiBhcHBlbmQgV2ViVlRUIG5vZGVzIHRvIHRoZSBuZXdseSBjcmVhdGVk
IHN1YmNvbnRhaW5lci4KKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50
cy5oOgorICAgICAgICAoTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudCk6Cisg
ICAgICAgICogaHRtbC9zaGFkb3cvTWVkaWFDb250cm9scy5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpNZWRpYUNvbnRyb2xzOjpjcmVhdGVUZXh0VHJhY2tEaXNwbGF5KTogaW5pdGlhdGUgY3JlYXRp
bmcgc3VidHJlZXMgZm9yIHRoZSBNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50
LgorICAgICAgICAqIGh0bWwvc2hhZG93L01lZGlhQ29udHJvbHNDaHJvbWl1bS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xzQ2hyb21pdW06OmNyZWF0ZVRleHRUcmFja0Rpc3Bs
YXkpOgorCiAyMDEyLTEyLTA2ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1Ad2Via2l0Lm9yZz4K
IAogICAgICAgICBbV2luZG93cywgV2luQ2Fpcm9dIFVucmV2aWV3ZWQgYnVpbGQgY29ycmVjdGlv
bi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwCmluZGV4IGM5ZGQxOTMuLmZkYzY3NDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNwcApAQCAtMzk1LDcgKzM5NSw3IEBAIENTU1NlbGVj
dG9yOjpQc2V1ZG9UeXBlIENTU1NlbGVjdG9yOjpwYXJzZVBzZXVkb1R5cGUoY29uc3QgQXRvbWlj
U3RyaW5nJiBuYW1lKQogCiAgICAgaWYgKG5hbWUuc3RhcnRzV2l0aCgiLXdlYmtpdC0iKSkKICAg
ICAgICAgcmV0dXJuIFBzZXVkb1dlYktpdEN1c3RvbUVsZW1lbnQ7Ci0gICAgaWYgKG5hbWUuc3Rh
cnRzV2l0aCgieC0iKSkKKyAgICBpZiAobmFtZS5zdGFydHNXaXRoKCJ4LSIpIHx8IG5hbWUuc3Rh
cnRzV2l0aCgiY3VlIikpCiAgICAgICAgIHJldHVybiBQc2V1ZG9Vc2VyQWdlbnRDdXN0b21FbGVt
ZW50OwogCiAgICAgcmV0dXJuIFBzZXVkb1Vua25vd247CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAKaW5kZXggNjg4MDkzNC4uNDg1
NGQ0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9s
RWxlbWVudHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJv
bEVsZW1lbnRzLmNwcApAQCAtMTE4Niw2ICsxMTg2LDE0IEBAIE1lZGlhQ29udHJvbFRleHRUcmFj
a0NvbnRhaW5lckVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQo
RG9jCiAgICAgLCBtX2ZvbnRTaXplKDApCiB7CiB9CisgICAgCit2b2lkIE1lZGlhQ29udHJvbFRl
eHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OmNyZWF0ZVN1YnRyZWVzKERvY3VtZW50KiBkb2N1bWVu
dCkKK3sKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21pY1N0cmluZywgY3VlLCAo
ImN1ZSIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpKTsKKyAgICBtX2N1ZUNv
bnRhaW5lciA9IEhUTUxFbGVtZW50OjpjcmVhdGUoc3BhblRhZywgZG9jdW1lbnQpOworICAgIG1f
Y3VlQ29udGFpbmVyLT5zZXRQc2V1ZG8oY3VlKTsKKyAgICBhcHBlbmRDaGlsZChtX2N1ZUNvbnRh
aW5lciwgQVNTRVJUX05PX0VYQ0VQVElPTiwgZmFsc2UpOworfQogCiBQYXNzUmVmUHRyPE1lZGlh
Q29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ+IE1lZGlhQ29udHJvbFRleHRUcmFja0Nv
bnRhaW5lckVsZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCogZG9jdW1lbnQpCiB7CkBAIC0xMjY0LDcg
KzEyNzIsNyBAQCB2b2lkIE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQ6OnVw
ZGF0ZURpc3BsYXkoKQogCiAgICAgICAgIGlmIChkaXNwbGF5Qm94LT5oYXNDaGlsZE5vZGVzKCkg
JiYgIWNvbnRhaW5zKHN0YXRpY19jYXN0PE5vZGUqPihkaXNwbGF5Qm94LmdldCgpKSkpCiAgICAg
ICAgICAgICAvLyBOb3RlOiB0aGUgZGlzcGxheSB0cmVlIG9mIGEgY3VlIGlzIHJlbW92ZWQgd2hl
biB0aGUgYWN0aXZlIGZsYWcgb2YgdGhlIGN1ZSBpcyB1bnNldC4KLSAgICAgICAgICAgIGFwcGVu
ZENoaWxkKGRpc3BsYXlCb3gsIEFTU0VSVF9OT19FWENFUFRJT04sIGZhbHNlKTsKKyAgICAgICAg
ICAgIG1fY3VlQ29udGFpbmVyLT5hcHBlbmRDaGlsZChkaXNwbGF5Qm94LCBBU1NFUlRfTk9fRVhD
RVBUSU9OLCBmYWxzZSk7CiAgICAgfQogCiAgICAgLy8gMTEuIFJldHVybiBvdXRwdXQuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5o
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuaAppbmRl
eCAwMjY1NmNjLi4xYjYzMjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9NZWRpYUNvbnRyb2xFbGVtZW50cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93
L01lZGlhQ29udHJvbEVsZW1lbnRzLmgKQEAgLTQzNSw2ICs0MzUsNyBAQCBwdWJsaWM6CiAKICAg
ICB2b2lkIHVwZGF0ZURpc3BsYXkoKTsKICAgICB2b2lkIHVwZGF0ZVNpemVzKCk7CisgICAgdm9p
ZCBjcmVhdGVTdWJ0cmVlcyhEb2N1bWVudCopOwogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IE1l
ZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQoRG9jdW1lbnQqKTsKQEAgLTQ0NCw2
ICs0NDUsNyBAQCBwcml2YXRlOgogCiAgICAgSW50UmVjdCBtX3ZpZGVvRGlzcGxheVNpemU7CiAg
ICAgZmxvYXQgbV9mb250U2l6ZTsKKyAgICBSZWZQdHI8SFRNTEVsZW1lbnQ+IG1fY3VlQ29udGFp
bmVyOwogfTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9NZWRpYUNvbnRyb2xzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29u
dHJvbHMuY3BwCmluZGV4IGRjYjdkOTEuLjVlZmU1ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L01lZGlhQ29udHJvbHMuY3BwCkBAIC0zNjksNyArMzY5LDkgQEAgdm9pZCBNZWRp
YUNvbnRyb2xzOjpjcmVhdGVUZXh0VHJhY2tEaXNwbGF5KCkKIAogICAgIC8vIEluc2VydCBpdCBi
ZWZvcmUgdGhlIGZpcnN0IGNvbnRyb2xsZXIgZWxlbWVudCBzbyBpdCBhbHdheXMgZGlzcGxheXMg
YmVoaW5kIHRoZSBjb250cm9scy4KICAgICBFeGNlcHRpb25Db2RlIGVjOwotICAgIGluc2VydEJl
Zm9yZSh0ZXh0RGlzcGxheUNvbnRhaW5lci5yZWxlYXNlKCksIG1fcGFuZWwsIGVjLCB0cnVlKTsK
KyAgICBpbnNlcnRCZWZvcmUodGV4dERpc3BsYXlDb250YWluZXIsIG1fcGFuZWwsIGVjLCB0cnVl
KTsKKyAgICB0ZXh0RGlzcGxheUNvbnRhaW5lci0+Y3JlYXRlU3VidHJlZXMoZG9jdW1lbnQoKSk7
CisgICAgdGV4dERpc3BsYXlDb250YWluZXIucmVsZWFzZSgpOwogfQogCiB2b2lkIE1lZGlhQ29u
dHJvbHM6OnNob3dUZXh0VHJhY2tEaXNwbGF5KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L01lZGlhQ29udHJvbHNDaHJvbWl1bS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xzQ2hyb21pdW0uY3BwCmluZGV4IDVjYTQ2N2EuLjU1Y2Zh
YzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbHND
aHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9s
c0Nocm9taXVtLmNwcApAQCAtMjE0LDcgKzIxNCw5IEBAIHZvaWQgTWVkaWFDb250cm9sc0Nocm9t
aXVtOjpjcmVhdGVUZXh0VHJhY2tEaXNwbGF5KCkKIAogICAgIC8vIEluc2VydCBpdCBiZWZvcmUg
dGhlIGZpcnN0IGNvbnRyb2xsZXIgZWxlbWVudCBzbyBpdCBhbHdheXMgZGlzcGxheXMgYmVoaW5k
IHRoZSBjb250cm9scy4KICAgICAvLyBJbiB0aGUgQ2hyb21pdW0gY2FzZSwgdGhhdCdzIHRoZSBl
bmNsb3N1cmUgZWxlbWVudC4KLSAgICBpbnNlcnRCZWZvcmUodGV4dERpc3BsYXlDb250YWluZXIu
cmVsZWFzZSgpLCBtX2VuY2xvc3VyZSwgQVNTRVJUX05PX0VYQ0VQVElPTiwgdHJ1ZSk7CisgICAg
aW5zZXJ0QmVmb3JlKHRleHREaXNwbGF5Q29udGFpbmVyLCBtX2VuY2xvc3VyZSwgQVNTRVJUX05P
X0VYQ0VQVElPTiwgdHJ1ZSk7CisgICAgdGV4dERpc3BsYXlDb250YWluZXItPmNyZWF0ZVN1YnRy
ZWVzKGRvY3VtZW50KCkpOworICAgIHRleHREaXNwbGF5Q29udGFpbmVyLnJlbGVhc2UoKTsKIH0K
ICNlbmRpZgogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>