<?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>107732</bug_id>
          
          <creation_ts>2013-01-23 13:59:25 -0800</creation_ts>
          <short_desc>Mac: Avoid using k32BGRAPixelFormat on certain platforms.</short_desc>
          <delta_ts>2013-01-24 13:12:28 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>814605</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-01-23 13:59:25 -0800</bug_when>
    <thetext>Mac: Avoid using k32BGRAPixelFormat on certain platforms.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>814608</commentid>
    <comment_count>1</comment_count>
      <attachid>184305</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-01-23 14:03:50 -0800</bug_when>
    <thetext>Created attachment 184305
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>814850</commentid>
    <comment_count>2</comment_count>
      <attachid>184357</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-01-23 17:02:57 -0800</bug_when>
    <thetext>Created attachment 184357
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815138</commentid>
    <comment_count>3</comment_count>
      <attachid>184357</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-01-23 23:27:58 -0800</bug_when>
    <thetext>Comment on attachment 184357
Patch

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

&gt; Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:51
&gt; +typedef struct OpaqueVTPixelTransferSession*  VTPixelTransferSessionRef;

Extra space.

&gt; Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:1019
&gt; -    NSDictionary* attributes = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithUnsignedInt:k32BGRAPixelFormat], kCVPixelBufferPixelFormatTypeKey,
&gt; +    NSDictionary* attributes = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithUnsignedInt:
&gt; +#if __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 1090
&gt; +        kCVPixelFormatType_422YpCbCr8
&gt; +#else
&gt; +        k32BGRAPixelFormat
&gt; +#endif
&gt; +        ], kCVPixelBufferPixelFormatTypeKey,
&gt;                                  nil];
&gt;      m_videoOutput.adoptNS([[AVPlayerItemVideoOutput alloc] initWithPixelBufferAttributes:attributes]);

NSDictionary has a constructor for having a single key/object pair: dictionaryWithObject:forKey:.

I would turn the code a bit differently:
#if __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 1090
    unsigned pixelFormat = kCVPixelFormatType_422YpCbCr8;
#else
    unsigned pixelFormat = k32BGRAPixelFormat
#endif
NSDictionary* attributes = [NSDictionary dictionaryWithObject:Foo forKey:Bar]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815550</commentid>
    <comment_count>4</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-01-24 09:27:27 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 184357 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=184357&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:51
&gt; &gt; +typedef struct OpaqueVTPixelTransferSession*  VTPixelTransferSessionRef;
&gt; 
&gt; Extra space.

Fixed.

&gt; NSDictionary has a constructor for having a single key/object pair: dictionaryWithObject:forKey:.
&gt; 
&gt; I would turn the code a bit differently:
&gt; #if __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 1090
&gt;     unsigned pixelFormat = kCVPixelFormatType_422YpCbCr8;
&gt; #else
&gt;     unsigned pixelFormat = k32BGRAPixelFormat
&gt; #endif
&gt; NSDictionary* attributes = [NSDictionary dictionaryWithObject:Foo forKey:Bar]

NSDictionary has an even simpler notation: 

NSDictionary* attributes = @{ (NSString*)kCVPixelBufferPixelFormatTypeKey, @ kCVPixelFormatType_422YpCbCr8 } 

...which we could safely use in the &quot;#if 1090&quot; block.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815565</commentid>
    <comment_count>5</comment_count>
      <attachid>184517</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-01-24 09:51:31 -0800</bug_when>
    <thetext>Created attachment 184517
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815720</commentid>
    <comment_count>6</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-01-24 12:20:17 -0800</bug_when>
    <thetext>Committed r140706: &lt;http://trac.webkit.org/changeset/140706&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815748</commentid>
    <comment_count>7</comment_count>
      <attachid>184517</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-01-24 12:51:34 -0800</bug_when>
    <thetext>Comment on attachment 184517
Patch

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

&gt; Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:56
&gt; +#import &lt;VideoToolbox/VideoToolbox.h&gt;

VideoToolbox was introduced in Mountain Lion, so this breaks the Lion build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815756</commentid>
    <comment_count>8</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-01-24 13:12:28 -0800</bug_when>
    <thetext>Committed r140714: &lt;http://trac.webkit.org/changeset/140714&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184305</attachid>
            <date>2013-01-23 14:03:50 -0800</date>
            <delta_ts>2013-01-23 17:02:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107732-20130123140043.patch</filename>
            <type>text/plain</type>
            <size>2277</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwNTc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTY1N2QyZGYyYWUyNmRl
YzMxYmY4NDAzZjQ3YzRiOWYxMGYzNTQyYS4uMGEwZDQ2MmIxZTE5YzIwYTUyNDM0YmM3YmNjMzE3
YWU3MTQ2NDAyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE4IEBACiAyMDEzLTAxLTIzICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCisgICAgICAgIE1hYzogQXZvaWQgdXNpbmcg
azMyQkdSQVBpeGVsRm9ybWF0IG9uIGNlcnRhaW4gcGxhdGZvcm1zLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3NzMyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIGszMkFSR0JQaXhlbEZvcm1hdCBp
bnN0ZWFkIG9mIGszMkJHUkFQaXhlbEZvcm1hdCBvbiBjZXJ0YWluCisgICAgICAgIHBsYXRmb3Jt
cyB3aGljaCBkbyBub3Qgc3VwcG9ydCBpdHMgdXNlIGluIEFWUGxheWVySXRlbVZpZGVvT3V0cHV0
cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlh
UGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW06CisgICAgICAgIChXZWJDb3JlOjpNZWRp
YVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpjcmVhdGVWaWRlb091dHB1dCk6CisKKzIw
MTMtMDEtMjMgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CisKICAgICAgICAgTWFj
OiBWaWRlbyBhcHBlYXJzIGluIHdyb25nIHBsYWNlIGR1cmluZyBwaW5jaCBvcGVyYXRpb25zCiAg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc3MzAKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbSBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbk9iakMubW0KaW5kZXggM2QxNDc4MDU0YjM0MzU3ZTk3ZDk5NTQ3MTZkYTJl
YTI1YjI1MGNiNi4uYjlkZTdiN2IwNGFlNjBmNjk2ODFhOGI0ZjFmZjI5YTFmNTMwYWVmOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29i
amMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZh
dGVBVkZvdW5kYXRpb25PYmpDLm1tCkBAIC0xMDAwLDcgKzEwMDAsMTQgQEAgdm9pZCBNZWRpYVBs
YXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpjcmVhdGVWaWRlb091dHB1dCgpCiAgICAgaWYg
KCFtX2F2UGxheWVySXRlbSB8fCBtX3ZpZGVvT3V0cHV0KQogICAgICAgICByZXR1cm47CiAKLSAg
ICBOU0RpY3Rpb25hcnkqIGF0dHJpYnV0ZXMgPSBbTlNEaWN0aW9uYXJ5IGRpY3Rpb25hcnlXaXRo
T2JqZWN0c0FuZEtleXM6W05TTnVtYmVyIG51bWJlcldpdGhVbnNpZ25lZEludDprMzJCR1JBUGl4
ZWxGb3JtYXRdLCBrQ1ZQaXhlbEJ1ZmZlclBpeGVsRm9ybWF0VHlwZUtleSwKKyAgICBOU0RpY3Rp
b25hcnkqIGF0dHJpYnV0ZXMgPSBbTlNEaWN0aW9uYXJ5IGRpY3Rpb25hcnlXaXRoT2JqZWN0c0Fu
ZEtleXM6W05TTnVtYmVyIG51bWJlcldpdGhVbnNpZ25lZEludDoKKyNpZiBfX01BQ19PU19YX1ZF
UlNJT05fTUlOX1JFUVVJUkVEID49IDEwOTAKKyAgICAgICAgLy8gRklYTUU6IHRoZSBiZWxvdyBp
cyBuZWVkZWQgdW50aWwgPHJkYXI6Ly9wcm9ibGVtLzEzMDU0NzU5PiBpcyBmaXhlZC4KKyAgICAg
ICAgazMyQVJHQlBpeGVsRm9ybWF0CisjZWxzZQorICAgICAgICBrMzJCR1JBUGl4ZWxGb3JtYXQK
KyNlbmRpZgorICAgICAgICBdLCBrQ1ZQaXhlbEJ1ZmZlclBpeGVsRm9ybWF0VHlwZUtleSwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmlsXTsKICAgICBtX3ZpZGVvT3V0cHV0LmFk
b3B0TlMoW1tBVlBsYXllckl0ZW1WaWRlb091dHB1dCBhbGxvY10gaW5pdFdpdGhQaXhlbEJ1ZmZl
ckF0dHJpYnV0ZXM6YXR0cmlidXRlc10pOwogICAgIEFTU0VSVChtX3ZpZGVvT3V0cHV0KTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184357</attachid>
            <date>2013-01-23 17:02:57 -0800</date>
            <delta_ts>2013-01-24 09:51:30 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107732-20130123165950.patch</filename>
            <type>text/plain</type>
            <size>6948</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwNjA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJhZDg1MTIwMmNiZTk0
OTZlNTU3M2ViMTA3MDYxMzE2M2E0ZDA2Ny4uZTdiM2E5OTE2ZjE0MjhmODI3ZDJhOWE5MTg2Yjkz
NWJiNzIwZWRmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI2IEBACiAyMDEzLTAxLTIzICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCisgICAgICAgIE1hYzogQXZvaWQgdXNpbmcg
azMyQkdSQVBpeGVsRm9ybWF0IG9uIGNlcnRhaW4gcGxhdGZvcm1zLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3NzMyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNpbmcgYSBBVlBsYXllckl0ZW1WaWRl
b091dHB1dCB0byBnZW5lcmF0ZSBBUkdCIHBpeGVsIGJ1ZmZlcnMgaXMgYSBwb3RlbnRpYWwgcGVy
Zm9ybWFuY2UKKyAgICAgICAgaGl0LCBhcyB0aGUgQVZQbGF5ZXJJdGVtVmlkZW9PdXRwdXQgd2ls
bCBzZW5kIFlVViBidWZmZXJzIHRocm91Z2ggYSBWVFBpeGVCdWZmZXJUcmFuc2ZlclNlc3Npb24K
KyAgICAgICAgdG8gY29udmVydCB0aGVtIHRvIEFSR0IgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIG9y
IG5vdCBhIGdpdmVuIGJ1ZmZlciB3aWxsIGJlIHVzZWQuIEluc3RlYWQsCisgICAgICAgIGFzayB0
aGUgQVZQbGF5ZXJJdGVtVmlkZW9PdXRwdXQgZm9yIHBpeGVsIGJ1ZmZlcnMgaW4gdGhlIGRlY29k
ZXIncyBuYXRpdmUgcGl4ZWwgZm9ybWF0IGFuZCB1c2UKKyAgICAgICAgdGhlIFZUUGl4ZWxCdWZm
ZXJUcmFuc2ZlclNlc3Npb24gdG8gY29udmVydCB0byBBUkdCIG9ubHkgdGhvc2UgcGl4ZWwgYnVm
ZmVycyB3aGljaCB3ZXJlIGFjdHVhbGx5CisgICAgICAgIHJlcXVlc3RlZC4KKworICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFW
Rm91bmRhdGlvbk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tOgorICAgICAgICAo
V2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6Y3JlYXRlVmlkZW9P
dXRwdXQpOiBBc2sgZm9yIHRoZSBkZWNvZGVyJ3MgbmF0aXZlCisgICAgICAgICAgICBwaXhlbCBm
b3JtYXQuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25P
YmpDOjpjcmVhdGVQaXhlbEJ1ZmZlcik6IExhemlseSBjcmVhdGUgYSBWVFBpeGVsVHJhbnNmZXJT
ZXNzaW9uCisgICAgICAgICAgICBhbmQgY29udmVydCBvdXRwdXQgcGl4ZWwgYnVmZmVycyB0byBr
MzJCR1JBUGl4ZWxGb3JtYXQuCisKKzIwMTMtMDEtMjMgIEplciBOb2JsZSAgPGplci5ub2JsZUBh
cHBsZS5jb20+CisKICAgICAgICAgTWFjOiBWaWRlbyBhcHBlYXJzIGluIHdyb25nIHBsYWNlIGR1
cmluZyBwaW5jaCBvcGVyYXRpb25zCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDc3MzAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5oCmluZGV4IGEzYzJlMTgw
OTU4ZGQyZmU1YjdhZGY1M2UxMDY1ODVhMWQwNGE1MDAuLjY4ZjljYzM4YmI2MzI5YTRiZTdjOTQy
NzdjMTE5Y2Q3M2M4ODIzMDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9i
akMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24v
b2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmgKQEAgLTQ4LDYgKzQ4LDcg
QEAgT0JKQ19DTEFTUyBBVkFzc2V0UmVzb3VyY2VMb2FkaW5nUmVxdWVzdDsKIAogdHlwZWRlZiBz
dHJ1Y3QgQ0dJbWFnZSAqQ0dJbWFnZVJlZjsKIHR5cGVkZWYgc3RydWN0IF9fQ1ZCdWZmZXIgKkNW
UGl4ZWxCdWZmZXJSZWY7Cit0eXBlZGVmIHN0cnVjdCBPcGFxdWVWVFBpeGVsVHJhbnNmZXJTZXNz
aW9uKiAgVlRQaXhlbFRyYW5zZmVyU2Vzc2lvblJlZjsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CkBAIC0xNzQsNiArMTc1LDEwIEBAIHByaXZhdGU6CiAgICAgUmV0YWluUHRyPENWUGl4ZWxCdWZm
ZXJSZWY+IG1fbGFzdEltYWdlOwogI2VuZGlmCiAKKyNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlO
X1JFUVVJUkVEID49IDEwOTAKKyAgICBSZXRhaW5QdHI8VlRQaXhlbFRyYW5zZmVyU2Vzc2lvblJl
Zj4gbV9waXhlbFRyYW5zZmVyU2Vzc2lvbjsKKyNlbmRpZgorCiAjaWYgRU5BQkxFKEVOQ1JZUFRF
RF9NRURJQSkgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDkwCiAgICAg
UmV0YWluUHRyPFdlYkNvcmVBVkZMb2FkZXJEZWxlZ2F0ZT4gbV9sb2FkZXJEZWxlZ2F0ZTsKICAg
ICBIYXNoTWFwPFN0cmluZywgUmV0YWluUHRyPEFWQXNzZXRSZXNvdXJjZUxvYWRpbmdSZXF1ZXN0
PiA+IG1fa2V5VVJJVG9SZXF1ZXN0TWFwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3Vu
ZGF0aW9uT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRh
dGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0KaW5kZXggM2Qx
NDc4MDU0YjM0MzU3ZTk3ZDk5NTQ3MTZkYTJlYTI1YjI1MGNiNi4uOGJjYmEyZjNhOWNiYjVkMzE5
NTcyOGUwZDk0ZTk1MmZjOWFhNWRmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uT2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCkBAIC01MCwx
NiArNTAsMjQgQEAKICNpbXBvcnQgPHd0Zi9VaW50MTZBcnJheS5oPgogI2ltcG9ydCA8d3RmL1Vp
bnQzMkFycmF5Lmg+CiAKLSNpbXBvcnQgPENvcmVNZWRpYS9Db3JlTWVkaWEuaD4KICNpbXBvcnQg
PEFWRm91bmRhdGlvbi9BVkZvdW5kYXRpb24uaD4KKyNpbXBvcnQgPENvcmVNZWRpYS9Db3JlTWVk
aWEuaD4KKyNpbXBvcnQgPENvcmVWaWRlby9Db3JlVmlkZW8uaD4KKyNpbXBvcnQgPFZpZGVvVG9v
bGJveC9WaWRlb1Rvb2xib3guaD4KIAogU09GVF9MSU5LX0ZSQU1FV09SS19PUFRJT05BTChBVkZv
dW5kYXRpb24pCiBTT0ZUX0xJTktfRlJBTUVXT1JLX09QVElPTkFMKENvcmVNZWRpYSkKK1NPRlRf
TElOS19GUkFNRVdPUktfT1BUSU9OQUwoQ29yZVZpZGVvKQorU09GVF9MSU5LX0ZSQU1FV09SS19P
UFRJT05BTChWaWRlb1Rvb2xib3gpCiAKIFNPRlRfTElOSyhDb3JlTWVkaWEsIENNVGltZUNvbXBh
cmUsIGludDMyX3QsIChDTVRpbWUgdGltZTEsIENNVGltZSB0aW1lMiksICh0aW1lMSwgdGltZTIp
KQogU09GVF9MSU5LKENvcmVNZWRpYSwgQ01UaW1lTWFrZVdpdGhTZWNvbmRzLCBDTVRpbWUsIChG
bG9hdDY0IHNlY29uZHMsIGludDMyX3QgcHJlZmVycmVkVGltZVNjYWxlKSwgKHNlY29uZHMsIHBy
ZWZlcnJlZFRpbWVTY2FsZSkpCiBTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTVRpbWVHZXRTZWNvbmRz
LCBGbG9hdDY0LCAoQ01UaW1lIHRpbWUpLCAodGltZSkpCiBTT0ZUX0xJTksoQ29yZU1lZGlhLCBD
TVRpbWVSYW5nZUdldEVuZCwgQ01UaW1lLCAoQ01UaW1lUmFuZ2UgcmFuZ2UpLCAocmFuZ2UpKQor
U09GVF9MSU5LKENvcmVWaWRlbywgQ1ZQaXhlbEJ1ZmZlckdldFdpZHRoLCBzaXplX3QsIChDVlBp
eGVsQnVmZmVyUmVmIHBpeGVsQnVmZmVyKSwgKHBpeGVsQnVmZmVyKSkKK1NPRlRfTElOSyhDb3Jl
VmlkZW8sIENWUGl4ZWxCdWZmZXJHZXRIZWlnaHQsIHNpemVfdCwgKENWUGl4ZWxCdWZmZXJSZWYg
cGl4ZWxCdWZmZXIpLCAocGl4ZWxCdWZmZXIpKQorU09GVF9MSU5LKFZpZGVvVG9vbGJveCwgVlRQ
aXhlbFRyYW5zZmVyU2Vzc2lvbkNyZWF0ZSwgT1NTdGF0dXMsIChDRkFsbG9jYXRvclJlZiBhbGxv
Y2F0b3IsIFZUUGl4ZWxUcmFuc2ZlclNlc3Npb25SZWYgKnBpeGVsVHJhbnNmZXJTZXNzaW9uT3V0
KSwgKGFsbG9jYXRvciwgcGl4ZWxUcmFuc2ZlclNlc3Npb25PdXQpKQorU09GVF9MSU5LKFZpZGVv
VG9vbGJveCwgVlRQaXhlbFRyYW5zZmVyU2Vzc2lvblRyYW5zZmVySW1hZ2UsIE9TU3RhdHVzLCAo
VlRQaXhlbFRyYW5zZmVyU2Vzc2lvblJlZiBzZXNzaW9uLCBDVlBpeGVsQnVmZmVyUmVmIHNvdXJj
ZUJ1ZmZlciwgQ1ZQaXhlbEJ1ZmZlclJlZiBkZXN0aW5hdGlvbkJ1ZmZlciksIChzZXNzaW9uLCBz
b3VyY2VCdWZmZXIsIGRlc3RpbmF0aW9uQnVmZmVyKSkKIAogU09GVF9MSU5LX0NMQVNTKEFWRm91
bmRhdGlvbiwgQVZQbGF5ZXIpCiBTT0ZUX0xJTktfQ0xBU1MoQVZGb3VuZGF0aW9uLCBBVlBsYXll
ckl0ZW0pCkBAIC0xMDAwLDcgKzEwMDgsMTMgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb25PYmpDOjpjcmVhdGVWaWRlb091dHB1dCgpCiAgICAgaWYgKCFtX2F2UGxheWVySXRl
bSB8fCBtX3ZpZGVvT3V0cHV0KQogICAgICAgICByZXR1cm47CiAKLSAgICBOU0RpY3Rpb25hcnkq
IGF0dHJpYnV0ZXMgPSBbTlNEaWN0aW9uYXJ5IGRpY3Rpb25hcnlXaXRoT2JqZWN0c0FuZEtleXM6
W05TTnVtYmVyIG51bWJlcldpdGhVbnNpZ25lZEludDprMzJCR1JBUGl4ZWxGb3JtYXRdLCBrQ1ZQ
aXhlbEJ1ZmZlclBpeGVsRm9ybWF0VHlwZUtleSwKKyAgICBOU0RpY3Rpb25hcnkqIGF0dHJpYnV0
ZXMgPSBbTlNEaWN0aW9uYXJ5IGRpY3Rpb25hcnlXaXRoT2JqZWN0c0FuZEtleXM6W05TTnVtYmVy
IG51bWJlcldpdGhVbnNpZ25lZEludDoKKyNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJ
UkVEID49IDEwOTAKKyAgICAgICAga0NWUGl4ZWxGb3JtYXRUeXBlXzQyMllwQ2JDcjgKKyNlbHNl
CisgICAgICAgIGszMkJHUkFQaXhlbEZvcm1hdAorI2VuZGlmCisgICAgICAgIF0sIGtDVlBpeGVs
QnVmZmVyUGl4ZWxGb3JtYXRUeXBlS2V5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBuaWxdOwogICAgIG1fdmlkZW9PdXRwdXQuYWRvcHROUyhbW0FWUGxheWVySXRlbVZpZGVvT3V0
cHV0IGFsbG9jXSBpbml0V2l0aFBpeGVsQnVmZmVyQXR0cmlidXRlczphdHRyaWJ1dGVzXSk7CiAg
ICAgQVNTRVJUKG1fdmlkZW9PdXRwdXQpOwpAQCAtMTAzMiw3ICsxMDQ2LDI2IEBAIFJldGFpblB0
cjxDVlBpeGVsQnVmZmVyUmVmPiBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpj
cmVhdGVQaXhlbEJ1ZmZlCiAgICAgZG91YmxlIHN0YXJ0ID0gV1RGOjpjdXJyZW50VGltZSgpOwog
I2VuZGlmCiAKLSAgICBSZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gYnVmZmVyID0gYWRvcHRD
RihbbV92aWRlb091dHB1dC5nZXQoKSBjb3B5UGl4ZWxCdWZmZXJGb3JJdGVtVGltZTpbbV9hdlBs
YXllckl0ZW0uZ2V0KCkgY3VycmVudFRpbWVdIGl0ZW1UaW1lRm9yRGlzcGxheTpuaWxdKTsKKyAg
ICBDTVRpbWUgY3VycmVudFRpbWUgPSBbbV9hdlBsYXllckl0ZW0uZ2V0KCkgY3VycmVudFRpbWVd
OworCisgICAgaWYgKCFbbV92aWRlb091dHB1dC5nZXQoKSBoYXNOZXdQaXhlbEJ1ZmZlckZvckl0
ZW1UaW1lOmN1cnJlbnRUaW1lXSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBSZXRhaW5QdHI8
Q1ZQaXhlbEJ1ZmZlclJlZj4gYnVmZmVyID0gYWRvcHRDRihbbV92aWRlb091dHB1dC5nZXQoKSBj
b3B5UGl4ZWxCdWZmZXJGb3JJdGVtVGltZTpjdXJyZW50VGltZSBpdGVtVGltZUZvckRpc3BsYXk6
bmlsXSk7CisKKyNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwOTAKKyAg
ICAvLyBDcmVhdGUgYSBWVFBpeGVsVHJhbnNmZXJTZXNzaW9uLCBpZiBuZWNlc3NhcnksIGFzIHdl
IGNhbm5vdCBndWFyYW50ZWUgdGltZWx5IGRlbGl2ZXJ5IG9mIEFSR0IgcGl4ZWxzLgorICAgIGlm
ICghbV9waXhlbFRyYW5zZmVyU2Vzc2lvbikgeworICAgICAgICBWVFBpeGVsVHJhbnNmZXJTZXNz
aW9uUmVmIHNlc3Npb24gPSAwOworICAgICAgICBWVFBpeGVsVHJhbnNmZXJTZXNzaW9uQ3JlYXRl
KGtDRkFsbG9jYXRvckRlZmF1bHQsICZzZXNzaW9uKTsKKyAgICAgICAgbV9waXhlbFRyYW5zZmVy
U2Vzc2lvbiA9IGFkb3B0Q0Yoc2Vzc2lvbik7CisgICAgfQorCisgICAgQ1ZQaXhlbEJ1ZmZlclJl
ZiBvdXRwdXRCdWZmZXI7CisgICAgQ1ZQaXhlbEJ1ZmZlckNyZWF0ZShrQ0ZBbGxvY2F0b3JEZWZh
dWx0LCBDVlBpeGVsQnVmZmVyR2V0V2lkdGgoYnVmZmVyLmdldCgpKSwgQ1ZQaXhlbEJ1ZmZlckdl
dEhlaWdodChidWZmZXIuZ2V0KCkpLCBrMzJCR1JBUGl4ZWxGb3JtYXQsIDAsICZvdXRwdXRCdWZm
ZXIpOworICAgIFZUUGl4ZWxUcmFuc2ZlclNlc3Npb25UcmFuc2ZlckltYWdlKG1fcGl4ZWxUcmFu
c2ZlclNlc3Npb24uZ2V0KCksIGJ1ZmZlci5nZXQoKSwgb3V0cHV0QnVmZmVyKTsKKyAgICBidWZm
ZXIgPSBhZG9wdENGKG91dHB1dEJ1ZmZlcik7CisjZW5kaWYKIAogI2lmICFMT0dfRElTQUJMRUQK
ICAgICBkb3VibGUgZHVyYXRpb24gPSBXVEY6OmN1cnJlbnRUaW1lKCkgLSBzdGFydDsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184517</attachid>
            <date>2013-01-24 09:51:31 -0800</date>
            <delta_ts>2013-01-24 12:51:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107732-20130124094824.patch</filename>
            <type>text/plain</type>
            <size>6844</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwNjA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJhZDg1MTIwMmNiZTk0
OTZlNTU3M2ViMTA3MDYxMzE2M2E0ZDA2Ny4uZTdiM2E5OTE2ZjE0MjhmODI3ZDJhOWE5MTg2Yjkz
NWJiNzIwZWRmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI2IEBACiAyMDEzLTAxLTIzICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCisgICAgICAgIE1hYzogQXZvaWQgdXNpbmcg
azMyQkdSQVBpeGVsRm9ybWF0IG9uIGNlcnRhaW4gcGxhdGZvcm1zLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3NzMyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNpbmcgYSBBVlBsYXllckl0ZW1WaWRl
b091dHB1dCB0byBnZW5lcmF0ZSBBUkdCIHBpeGVsIGJ1ZmZlcnMgaXMgYSBwb3RlbnRpYWwgcGVy
Zm9ybWFuY2UKKyAgICAgICAgaGl0LCBhcyB0aGUgQVZQbGF5ZXJJdGVtVmlkZW9PdXRwdXQgd2ls
bCBzZW5kIFlVViBidWZmZXJzIHRocm91Z2ggYSBWVFBpeGVCdWZmZXJUcmFuc2ZlclNlc3Npb24K
KyAgICAgICAgdG8gY29udmVydCB0aGVtIHRvIEFSR0IgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIG9y
IG5vdCBhIGdpdmVuIGJ1ZmZlciB3aWxsIGJlIHVzZWQuIEluc3RlYWQsCisgICAgICAgIGFzayB0
aGUgQVZQbGF5ZXJJdGVtVmlkZW9PdXRwdXQgZm9yIHBpeGVsIGJ1ZmZlcnMgaW4gdGhlIGRlY29k
ZXIncyBuYXRpdmUgcGl4ZWwgZm9ybWF0IGFuZCB1c2UKKyAgICAgICAgdGhlIFZUUGl4ZWxCdWZm
ZXJUcmFuc2ZlclNlc3Npb24gdG8gY29udmVydCB0byBBUkdCIG9ubHkgdGhvc2UgcGl4ZWwgYnVm
ZmVycyB3aGljaCB3ZXJlIGFjdHVhbGx5CisgICAgICAgIHJlcXVlc3RlZC4KKworICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFW
Rm91bmRhdGlvbk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tOgorICAgICAgICAo
V2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6Y3JlYXRlVmlkZW9P
dXRwdXQpOiBBc2sgZm9yIHRoZSBkZWNvZGVyJ3MgbmF0aXZlCisgICAgICAgICAgICBwaXhlbCBm
b3JtYXQuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25P
YmpDOjpjcmVhdGVQaXhlbEJ1ZmZlcik6IExhemlseSBjcmVhdGUgYSBWVFBpeGVsVHJhbnNmZXJT
ZXNzaW9uCisgICAgICAgICAgICBhbmQgY29udmVydCBvdXRwdXQgcGl4ZWwgYnVmZmVycyB0byBr
MzJCR1JBUGl4ZWxGb3JtYXQuCisKKzIwMTMtMDEtMjMgIEplciBOb2JsZSAgPGplci5ub2JsZUBh
cHBsZS5jb20+CisKICAgICAgICAgTWFjOiBWaWRlbyBhcHBlYXJzIGluIHdyb25nIHBsYWNlIGR1
cmluZyBwaW5jaCBvcGVyYXRpb25zCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDc3MzAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5oCmluZGV4IGEzYzJlMTgw
OTU4ZGQyZmU1YjdhZGY1M2UxMDY1ODVhMWQwNGE1MDAuLjYyYTAyZWJmMWU1OTViNDNmNmYyOTkx
YjgyNTRjMDcwN2ZlM2MzNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9i
akMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24v
b2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmgKQEAgLTQ4LDYgKzQ4LDcg
QEAgT0JKQ19DTEFTUyBBVkFzc2V0UmVzb3VyY2VMb2FkaW5nUmVxdWVzdDsKIAogdHlwZWRlZiBz
dHJ1Y3QgQ0dJbWFnZSAqQ0dJbWFnZVJlZjsKIHR5cGVkZWYgc3RydWN0IF9fQ1ZCdWZmZXIgKkNW
UGl4ZWxCdWZmZXJSZWY7Cit0eXBlZGVmIHN0cnVjdCBPcGFxdWVWVFBpeGVsVHJhbnNmZXJTZXNz
aW9uKiBWVFBpeGVsVHJhbnNmZXJTZXNzaW9uUmVmOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
QEAgLTE3NCw2ICsxNzUsMTAgQEAgcHJpdmF0ZToKICAgICBSZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZl
clJlZj4gbV9sYXN0SW1hZ2U7CiAjZW5kaWYKIAorI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTA5MAorICAgIFJldGFpblB0cjxWVFBpeGVsVHJhbnNmZXJTZXNzaW9uUmVm
PiBtX3BpeGVsVHJhbnNmZXJTZXNzaW9uOworI2VuZGlmCisKICNpZiBFTkFCTEUoRU5DUllQVEVE
X01FRElBKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwOTAKICAgICBS
ZXRhaW5QdHI8V2ViQ29yZUFWRkxvYWRlckRlbGVnYXRlPiBtX2xvYWRlckRlbGVnYXRlOwogICAg
IEhhc2hNYXA8U3RyaW5nLCBSZXRhaW5QdHI8QVZBc3NldFJlc291cmNlTG9hZGluZ1JlcXVlc3Q+
ID4gbV9rZXlVUklUb1JlcXVlc3RNYXA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb25PYmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbQppbmRleCAzZDE0
NzgwNTRiMzQzNTdlOTdkOTk1NDcxNmRhMmVhMjViMjUwY2I2Li5mMWRmYTcwZDQ5ZDA4MDk1NzA2
YTU4NDM0MWM2ZjhkOWY1MTEyYmZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRp
b25PYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRh
dGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0KQEAgLTUwLDE2
ICs1MCwyNCBAQAogI2ltcG9ydCA8d3RmL1VpbnQxNkFycmF5Lmg+CiAjaW1wb3J0IDx3dGYvVWlu
dDMyQXJyYXkuaD4KIAotI2ltcG9ydCA8Q29yZU1lZGlhL0NvcmVNZWRpYS5oPgogI2ltcG9ydCA8
QVZGb3VuZGF0aW9uL0FWRm91bmRhdGlvbi5oPgorI2ltcG9ydCA8Q29yZU1lZGlhL0NvcmVNZWRp
YS5oPgorI2ltcG9ydCA8Q29yZVZpZGVvL0NvcmVWaWRlby5oPgorI2ltcG9ydCA8VmlkZW9Ub29s
Ym94L1ZpZGVvVG9vbGJveC5oPgogCiBTT0ZUX0xJTktfRlJBTUVXT1JLX09QVElPTkFMKEFWRm91
bmRhdGlvbikKIFNPRlRfTElOS19GUkFNRVdPUktfT1BUSU9OQUwoQ29yZU1lZGlhKQorU09GVF9M
SU5LX0ZSQU1FV09SS19PUFRJT05BTChDb3JlVmlkZW8pCitTT0ZUX0xJTktfRlJBTUVXT1JLX09Q
VElPTkFMKFZpZGVvVG9vbGJveCkKIAogU09GVF9MSU5LKENvcmVNZWRpYSwgQ01UaW1lQ29tcGFy
ZSwgaW50MzJfdCwgKENNVGltZSB0aW1lMSwgQ01UaW1lIHRpbWUyKSwgKHRpbWUxLCB0aW1lMikp
CiBTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTVRpbWVNYWtlV2l0aFNlY29uZHMsIENNVGltZSwgKEZs
b2F0NjQgc2Vjb25kcywgaW50MzJfdCBwcmVmZXJyZWRUaW1lU2NhbGUpLCAoc2Vjb25kcywgcHJl
ZmVycmVkVGltZVNjYWxlKSkKIFNPRlRfTElOSyhDb3JlTWVkaWEsIENNVGltZUdldFNlY29uZHMs
IEZsb2F0NjQsIChDTVRpbWUgdGltZSksICh0aW1lKSkKIFNPRlRfTElOSyhDb3JlTWVkaWEsIENN
VGltZVJhbmdlR2V0RW5kLCBDTVRpbWUsIChDTVRpbWVSYW5nZSByYW5nZSksIChyYW5nZSkpCitT
T0ZUX0xJTksoQ29yZVZpZGVvLCBDVlBpeGVsQnVmZmVyR2V0V2lkdGgsIHNpemVfdCwgKENWUGl4
ZWxCdWZmZXJSZWYgcGl4ZWxCdWZmZXIpLCAocGl4ZWxCdWZmZXIpKQorU09GVF9MSU5LKENvcmVW
aWRlbywgQ1ZQaXhlbEJ1ZmZlckdldEhlaWdodCwgc2l6ZV90LCAoQ1ZQaXhlbEJ1ZmZlclJlZiBw
aXhlbEJ1ZmZlciksIChwaXhlbEJ1ZmZlcikpCitTT0ZUX0xJTksoVmlkZW9Ub29sYm94LCBWVFBp
eGVsVHJhbnNmZXJTZXNzaW9uQ3JlYXRlLCBPU1N0YXR1cywgKENGQWxsb2NhdG9yUmVmIGFsbG9j
YXRvciwgVlRQaXhlbFRyYW5zZmVyU2Vzc2lvblJlZiAqcGl4ZWxUcmFuc2ZlclNlc3Npb25PdXQp
LCAoYWxsb2NhdG9yLCBwaXhlbFRyYW5zZmVyU2Vzc2lvbk91dCkpCitTT0ZUX0xJTksoVmlkZW9U
b29sYm94LCBWVFBpeGVsVHJhbnNmZXJTZXNzaW9uVHJhbnNmZXJJbWFnZSwgT1NTdGF0dXMsIChW
VFBpeGVsVHJhbnNmZXJTZXNzaW9uUmVmIHNlc3Npb24sIENWUGl4ZWxCdWZmZXJSZWYgc291cmNl
QnVmZmVyLCBDVlBpeGVsQnVmZmVyUmVmIGRlc3RpbmF0aW9uQnVmZmVyKSwgKHNlc3Npb24sIHNv
dXJjZUJ1ZmZlciwgZGVzdGluYXRpb25CdWZmZXIpKQogCiBTT0ZUX0xJTktfQ0xBU1MoQVZGb3Vu
ZGF0aW9uLCBBVlBsYXllcikKIFNPRlRfTElOS19DTEFTUyhBVkZvdW5kYXRpb24sIEFWUGxheWVy
SXRlbSkKQEAgLTEwMDAsOCArMTAwOCwxMiBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91
bmRhdGlvbk9iakM6OmNyZWF0ZVZpZGVvT3V0cHV0KCkKICAgICBpZiAoIW1fYXZQbGF5ZXJJdGVt
IHx8IG1fdmlkZW9PdXRwdXQpCiAgICAgICAgIHJldHVybjsKIAorI2lmIF9fTUFDX09TX1hfVkVS
U0lPTl9NSU5fUkVRVUlSRUQgPj0gMTA5MAorICAgIE5TRGljdGlvbmFyeSogYXR0cmlidXRlcyA9
IEB7IChOU1N0cmluZyopa0NWUGl4ZWxCdWZmZXJQaXhlbEZvcm1hdFR5cGVLZXk6IEAoa0NWUGl4
ZWxGb3JtYXRUeXBlXzQyMllwQ2JDcjgpIH07CisjZWxzZQogICAgIE5TRGljdGlvbmFyeSogYXR0
cmlidXRlcyA9IFtOU0RpY3Rpb25hcnkgZGljdGlvbmFyeVdpdGhPYmplY3RzQW5kS2V5czpbTlNO
dW1iZXIgbnVtYmVyV2l0aFVuc2lnbmVkSW50OmszMkJHUkFQaXhlbEZvcm1hdF0sIGtDVlBpeGVs
QnVmZmVyUGl4ZWxGb3JtYXRUeXBlS2V5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBuaWxdOworI2VuZGlmCiAgICAgbV92aWRlb091dHB1dC5hZG9wdE5TKFtbQVZQbGF5ZXJJdGVt
VmlkZW9PdXRwdXQgYWxsb2NdIGluaXRXaXRoUGl4ZWxCdWZmZXJBdHRyaWJ1dGVzOmF0dHJpYnV0
ZXNdKTsKICAgICBBU1NFUlQobV92aWRlb091dHB1dCk7CiAKQEAgLTEwMzIsNyArMTA0NCwyNiBA
QCBSZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uT2JqQzo6Y3JlYXRlUGl4ZWxCdWZmZQogICAgIGRvdWJsZSBzdGFydCA9IFdURjo6Y3VycmVu
dFRpbWUoKTsKICNlbmRpZgogCi0gICAgUmV0YWluUHRyPENWUGl4ZWxCdWZmZXJSZWY+IGJ1ZmZl
ciA9IGFkb3B0Q0YoW21fdmlkZW9PdXRwdXQuZ2V0KCkgY29weVBpeGVsQnVmZmVyRm9ySXRlbVRp
bWU6W21fYXZQbGF5ZXJJdGVtLmdldCgpIGN1cnJlbnRUaW1lXSBpdGVtVGltZUZvckRpc3BsYXk6
bmlsXSk7CisgICAgQ01UaW1lIGN1cnJlbnRUaW1lID0gW21fYXZQbGF5ZXJJdGVtLmdldCgpIGN1
cnJlbnRUaW1lXTsKKworICAgIGlmICghW21fdmlkZW9PdXRwdXQuZ2V0KCkgaGFzTmV3UGl4ZWxC
dWZmZXJGb3JJdGVtVGltZTpjdXJyZW50VGltZV0pCisgICAgICAgIHJldHVybiAwOworCisgICAg
UmV0YWluUHRyPENWUGl4ZWxCdWZmZXJSZWY+IGJ1ZmZlciA9IGFkb3B0Q0YoW21fdmlkZW9PdXRw
dXQuZ2V0KCkgY29weVBpeGVsQnVmZmVyRm9ySXRlbVRpbWU6Y3VycmVudFRpbWUgaXRlbVRpbWVG
b3JEaXNwbGF5Om5pbF0pOworCisjaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+
PSAxMDkwCisgICAgLy8gQ3JlYXRlIGEgVlRQaXhlbFRyYW5zZmVyU2Vzc2lvbiwgaWYgbmVjZXNz
YXJ5LCBhcyB3ZSBjYW5ub3QgZ3VhcmFudGVlIHRpbWVseSBkZWxpdmVyeSBvZiBBUkdCIHBpeGVs
cy4KKyAgICBpZiAoIW1fcGl4ZWxUcmFuc2ZlclNlc3Npb24pIHsKKyAgICAgICAgVlRQaXhlbFRy
YW5zZmVyU2Vzc2lvblJlZiBzZXNzaW9uID0gMDsKKyAgICAgICAgVlRQaXhlbFRyYW5zZmVyU2Vz
c2lvbkNyZWF0ZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCAmc2Vzc2lvbik7CisgICAgICAgIG1fcGl4
ZWxUcmFuc2ZlclNlc3Npb24gPSBhZG9wdENGKHNlc3Npb24pOworICAgIH0KKworICAgIENWUGl4
ZWxCdWZmZXJSZWYgb3V0cHV0QnVmZmVyOworICAgIENWUGl4ZWxCdWZmZXJDcmVhdGUoa0NGQWxs
b2NhdG9yRGVmYXVsdCwgQ1ZQaXhlbEJ1ZmZlckdldFdpZHRoKGJ1ZmZlci5nZXQoKSksIENWUGl4
ZWxCdWZmZXJHZXRIZWlnaHQoYnVmZmVyLmdldCgpKSwgazMyQkdSQVBpeGVsRm9ybWF0LCAwLCAm
b3V0cHV0QnVmZmVyKTsKKyAgICBWVFBpeGVsVHJhbnNmZXJTZXNzaW9uVHJhbnNmZXJJbWFnZSht
X3BpeGVsVHJhbnNmZXJTZXNzaW9uLmdldCgpLCBidWZmZXIuZ2V0KCksIG91dHB1dEJ1ZmZlcik7
CisgICAgYnVmZmVyID0gYWRvcHRDRihvdXRwdXRCdWZmZXIpOworI2VuZGlmCiAKICNpZiAhTE9H
X0RJU0FCTEVECiAgICAgZG91YmxlIGR1cmF0aW9uID0gV1RGOjpjdXJyZW50VGltZSgpIC0gc3Rh
cnQ7Cg==
</data>
<flag name="review"
          id="203272"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
      

    </bug>

</bugzilla>