<?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>147189</bug_id>
          
          <creation_ts>2015-07-22 05:49:58 -0700</creation_ts>
          <short_desc>Fix fullscreen and PiP video animation and sizing regressions.</short_desc>
          <delta_ts>2015-07-23 03:13:08 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>iPhone / iPad</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeremy Jones">jeremyj-wk</reporter>
          <assigned_to name="Jeremy Jones">jeremyj-wk</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>jer.noble</cc>
    
    <cc>jonlee</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1111246</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2015-07-22 05:49:58 -0700</bug_when>
    <thetext>Fix fullscreen and PiP video animation and sizing regressions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111247</commentid>
    <comment_count>1</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2015-07-22 05:52:54 -0700</bug_when>
    <thetext>rdar://problem/21930899</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111249</commentid>
    <comment_count>2</comment_count>
      <attachid>257261</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2015-07-22 05:59:41 -0700</bug_when>
    <thetext>Created attachment 257261
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111326</commentid>
    <comment_count>3</comment_count>
      <attachid>257261</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-07-22 10:05:13 -0700</bug_when>
    <thetext>Comment on attachment 257261
Patch

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

&gt; Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm:467
&gt; -    RefPtr&lt;WebVideoFullscreenControllerContext&gt; strongThis(this);
&gt; -    RetainPtr&lt;CALayer&gt; videoFullscreenLayer = [m_videoFullscreenView layer];
&gt; -
&gt; -    mach_port_name_t fencePort = [[videoFullscreenLayer context] createFencePort];
&gt; -    
&gt; -    WebThreadRun([strongThis, this, frame, fencePort, videoFullscreenLayer] {
&gt; -        [CATransaction begin];
&gt; -        [CATransaction setAnimationDuration:0];
&gt; -        if (m_model)
&gt; -            m_model-&gt;setVideoLayerFrame(frame);
&gt; -        [[videoFullscreenLayer context] setFencePort:fencePort];
&gt; -        mach_port_deallocate(mach_task_self(), fencePort);
&gt; -        [CATransaction commit];
&gt; -    });
&gt; +    if (m_model)
&gt; +        m_model-&gt;setVideoLayerFrame(frame);

Is there anything we do inside setVideoLayerFrame() which assumes it&apos;s being run on the web thread?

&gt; Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm:532
&gt; +        FloatRect videoLayerFrame = FloatRect(0, 0, videoElementClientRect.width(), videoElementClientRect.height());

You can just do: 

FloatRect videoLayerFrame = FloatRect(FloatPoint(), videoElementClientRect.size());  

Or use constructor syntax rather than assignment. FloatSize is constructible from an IntSize (but not vice-versa).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111374</commentid>
    <comment_count>4</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2015-07-22 12:03:50 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 257261 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=257261&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm:467
&gt; &gt; -    RefPtr&lt;WebVideoFullscreenControllerContext&gt; strongThis(this);
&gt; &gt; -    RetainPtr&lt;CALayer&gt; videoFullscreenLayer = [m_videoFullscreenView layer];
&gt; &gt; -
&gt; &gt; -    mach_port_name_t fencePort = [[videoFullscreenLayer context] createFencePort];
&gt; &gt; -    
&gt; &gt; -    WebThreadRun([strongThis, this, frame, fencePort, videoFullscreenLayer] {
&gt; &gt; -        [CATransaction begin];
&gt; &gt; -        [CATransaction setAnimationDuration:0];
&gt; &gt; -        if (m_model)
&gt; &gt; -            m_model-&gt;setVideoLayerFrame(frame);
&gt; &gt; -        [[videoFullscreenLayer context] setFencePort:fencePort];
&gt; &gt; -        mach_port_deallocate(mach_task_self(), fencePort);
&gt; &gt; -        [CATransaction commit];
&gt; &gt; -    });
&gt; &gt; +    if (m_model)
&gt; &gt; +        m_model-&gt;setVideoLayerFrame(frame);
&gt; 
&gt; Is there anything we do inside setVideoLayerFrame() which assumes it&apos;s being
&gt; run on the web thread?

Maybe. Just to be base I&apos;ll move the operations that need to be sync&apos;d into the web thread instead of into the UIThread.

&gt; 
&gt; &gt; Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm:532
&gt; &gt; +        FloatRect videoLayerFrame = FloatRect(0, 0, videoElementClientRect.width(), videoElementClientRect.height());
&gt; 
&gt; You can just do: 
&gt; 
&gt; FloatRect videoLayerFrame = FloatRect(FloatPoint(),
&gt; videoElementClientRect.size());  
&gt; 
&gt; Or use constructor syntax rather than assignment. FloatSize is constructible
&gt; from an IntSize (but not vice-versa).

I thought there had to be something more succinct.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111394</commentid>
    <comment_count>5</comment_count>
      <attachid>257290</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2015-07-22 13:36:25 -0700</bug_when>
    <thetext>Created attachment 257290
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111397</commentid>
    <comment_count>6</comment_count>
      <attachid>257293</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2015-07-22 13:39:16 -0700</bug_when>
    <thetext>Created attachment 257293
Patch for landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111422</commentid>
    <comment_count>7</comment_count>
      <attachid>257293</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-22 14:32:59 -0700</bug_when>
    <thetext>Comment on attachment 257293
Patch for landing.

Clearing flags on attachment: 257293

Committed r187183: &lt;http://trac.webkit.org/changeset/187183&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111423</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-22 14:33:02 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111624</commentid>
    <comment_count>9</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-07-23 03:13:08 -0700</bug_when>
    <thetext>Build fix: http://trac.webkit.org/changeset/187225</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>257261</attachid>
            <date>2015-07-22 05:59:41 -0700</date>
            <delta_ts>2015-07-22 13:36:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147189-20150722055827.patch</filename>
            <type>text/plain</type>
            <size>6471</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg3MTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTk2ZjBhNzdjMDQzMGQy
YjkyYzRlNGMyNzU0NzA4NzMzY2QwNGRkOS4uYmQyOWFjZGMyNTg3ODIzMTIwODBmMjRjMTczMDAz
NzA3ODMzNmQyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE1LTA3LTIyICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBGaXggZnVsbHNjcmVlbiBh
bmQgUGlQIHZpZGVvIGFuaW1hdGlvbiBhbmQgc2l6aW5nIHJlZ3Jlc3Npb25zLgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3MTg5CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS8yMTkzMDg5OT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBGaXhlcyBXSzEgc3BlY2lmaWMgcmVncmVzc2lvbnMgaW50cm9kdWNl
ZCBieSByMTg3MDQ0LiBGbGlja2VyIHdoZW4gZW50ZXJpbmcgZnVsbHNjcmVlbiwKKyAgICAgICAg
d3JvbmcgYW5pbWF0aW9uIGFuZCBtaXNzaW5nIGluaXRpYWwgYW5pbWF0aW9uIHJlY3RzLgorCisg
ICAgICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJBVktpdC5t
bToKKyAgICAgICAgKGVsZW1lbnRSZWN0SW5XaW5kb3cpOiBBZGRlZC4KKyAgICAgICAgKFdlYlZp
ZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0OjpkaWRTZXR1cEZ1bGxzY3JlZW4pOiBDbGVh
ciBiYWNrZ3JvdW5kIGRlY3JlYXNlcyBmbGFzaC4KKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVl
bkNvbnRyb2xsZXJDb250ZXh0OjpmdWxsc2NyZWVuTWF5UmV0dXJuVG9JbmxpbmUpOiBVc2UgY29u
c2lzdGVudCBpbmxpbmUgcmVjdC4KKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xs
ZXJDb250ZXh0OjpzZXRWaWRlb0xheWVyRnJhbWUpOiAKKyAgICAgICAgRmVuY2UgcG9ydHMgYXJl
IG5vdCBzeW5jaHJvbml6aW5nIHByZWNpY2VseSBlbm91Z2guIERvIGl0IG9uIHRoZSBtYWluIHRo
cmVhZCBsaWtlIHdlIHVzZWQgdG8uCisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9s
bGVyQ29udGV4dDo6c2V0VXBGdWxsc2NyZWVuKTogVXNlIGNvbnNpc3RlbnQgaW5saW5lIHJlY3Qu
CisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6ZXhpdEZ1bGxz
Y3JlZW4pOiBVc2UgY29uc2lzdGVudCBpbmxpbmUgcmVjdC4KKwogMjAxNS0wNy0yMSAgQmVuamFt
aW4gUG91bGFpbiAgPGJwb3VsYWluQGFwcGxlLmNvbT4KIAogICAgICAgICBbQ1NTIFNlbGVjdG9y
cyBMZXZlbCA0XSBBZGQgI2lmZGVmcyB0byB0aGUgbmV3ICc+PicgZGVzY2VuZGFudCBjb21iaW5h
dG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxs
c2NyZWVuQ29udHJvbGxlckFWS2l0Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dl
YlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJBVktpdC5tbQppbmRleCA2MGQyOGJjMmZkM2MyOTJl
NDI2ZTNlYTlmMWZhNmI4ZTc5ZTBhMWE4Li5iOTZjYWQ1YmRmNDFiZTliYzAwMWE1YTNjYzI4ODg0
NDJiN2YyZDA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlk
ZW9GdWxsc2NyZWVuQ29udHJvbGxlckFWS2l0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQubW0KQEAgLTM2LDcgKzM2
LDkgQEAKICNpbXBvcnQgIldlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0LmgiCiAjaW1w
b3J0ICJXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5oIgogI2ltcG9ydCA8UXVh
cnR6Q29yZS9Db3JlQW5pbWF0aW9uLmg+CisjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lVmlldy5oPgog
I2ltcG9ydCA8V2ViQ29yZS9IVE1MVmlkZW9FbGVtZW50Lmg+CisjaW1wb3J0IDxXZWJDb3JlL1Jl
bmRlckVsZW1lbnQuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZVRocmVhZFJ1bi5oPgogCiBT
T0ZUX0xJTktfRlJBTUVXT1JLKFVJS2l0KQpAQCAtNDQsNiArNDYsMTQgQEAgU09GVF9MSU5LX0NM
QVNTKFVJS2l0LCBVSVZpZXcpCiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCitzdGF0aWMg
SW50UmVjdCBlbGVtZW50UmVjdEluV2luZG93KEhUTUxWaWRlb0VsZW1lbnQqIHZpZGVvRWxlbWVu
dCkKK3sKKyAgICBpZiAoIXZpZGVvRWxlbWVudCB8fCAhdmlkZW9FbGVtZW50LT5yZW5kZXJlcigp
IHx8ICF2aWRlb0VsZW1lbnQtPmRvY3VtZW50KCkudmlldygpKQorICAgICAgICByZXR1cm4gSW50
UmVjdCgpOworICAgIAorICAgIHJldHVybiB2aWRlb0VsZW1lbnQtPmRvY3VtZW50KCkudmlldygp
LT5jb252ZXJ0VG9Db250YWluaW5nV2luZG93KHZpZGVvRWxlbWVudC0+cmVuZGVyZXIoKS0+YWJz
b2x1dGVCb3VuZGluZ0JveFJlY3QoKSk7Cit9CisKICNpZiBfX0lQSE9ORV9PU19WRVJTSU9OX01J
Tl9SRVFVSVJFRCA8PSA4MDIwMCB8fCAhSEFWRShBVktJVCkKIAogQGltcGxlbWVudGF0aW9uIFdl
YlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXIKQEAgLTE1NCw2ICsxNjQsNyBAQCB2b2lkIFdlYlZp
ZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0OjpkaWRTZXR1cEZ1bGxzY3JlZW4oKQogICAg
IFJlZlB0cjxXZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dD4gc3Ryb25nVGhpcyh0
aGlzKTsKICAgICBSZXRhaW5QdHI8Q0FMYXllcj4gdmlkZW9GdWxsc2NyZWVuTGF5ZXIgPSBbbV92
aWRlb0Z1bGxzY3JlZW5WaWV3IGxheWVyXTsKICAgICBXZWJUaHJlYWRSdW4oW3N0cm9uZ1RoaXMs
IHRoaXMsIHZpZGVvRnVsbHNjcmVlbkxheWVyXSB7CisgICAgICAgIFt2aWRlb0Z1bGxzY3JlZW5M
YXllciBzZXRCYWNrZ3JvdW5kQ29sb3I6Y2FjaGVkQ0dDb2xvcihXZWJDb3JlOjpDb2xvcjo6dHJh
bnNwYXJlbnQsIFdlYkNvcmU6OkNvbG9yU3BhY2VEZXZpY2VSR0IpXTsKICAgICAgICAgbV9tb2Rl
bC0+c2V0VmlkZW9GdWxsc2NyZWVuTGF5ZXIodmlkZW9GdWxsc2NyZWVuTGF5ZXIuZ2V0KCkpOwog
ICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBbc3Ryb25n
VGhpcywgdGhpc10gewogICAgICAgICAgICAgbV9pbnRlcmZhY2UtPmVudGVyRnVsbHNjcmVlbigp
OwpAQCAtMTk4LDcgKzIwOSw3IEBAIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNv
bnRleHQ6OmZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSgpCiAgICAgQVNTRVJUKGlzVUlUaHJl
YWQoKSk7CiAgICAgUmVmUHRyPFdlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0PiBz
dHJvbmdUaGlzKHRoaXMpOwogICAgIFdlYlRocmVhZFJ1bihbc3Ryb25nVGhpcywgdGhpc10gewot
ICAgICAgICBJbnRSZWN0IGNsaWVudFJlY3QgPSBtX3ZpZGVvRWxlbWVudC0+Y2xpZW50UmVjdCgp
OworICAgICAgICBJbnRSZWN0IGNsaWVudFJlY3QgPSBlbGVtZW50UmVjdEluV2luZG93KG1fdmlk
ZW9FbGVtZW50LmdldCgpKTsKICAgICAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21h
aW5fcXVldWUoKSwgW3N0cm9uZ1RoaXMsIHRoaXMsIGNsaWVudFJlY3RdIHsKICAgICAgICAgICAg
IG1faW50ZXJmYWNlLT5wcmVwYXJlZFRvUmV0dXJuVG9JbmxpbmUodHJ1ZSwgY2xpZW50UmVjdCk7
CiAgICAgICAgIH0pOwpAQCAtNDUyLDIwICs0NjMsOCBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVl
bkNvbnRyb2xsZXJDb250ZXh0OjpyZXF1ZXN0RXhpdEZ1bGxzY3JlZW4oKQogdm9pZCBXZWJWaWRl
b0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6c2V0VmlkZW9MYXllckZyYW1lKEZsb2F0UmVj
dCBmcmFtZSkKIHsKICAgICBBU1NFUlQoaXNVSVRocmVhZCgpKTsKLSAgICBSZWZQdHI8V2ViVmlk
ZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRleHQ+IHN0cm9uZ1RoaXModGhpcyk7Ci0gICAgUmV0
YWluUHRyPENBTGF5ZXI+IHZpZGVvRnVsbHNjcmVlbkxheWVyID0gW21fdmlkZW9GdWxsc2NyZWVu
VmlldyBsYXllcl07Ci0KLSAgICBtYWNoX3BvcnRfbmFtZV90IGZlbmNlUG9ydCA9IFtbdmlkZW9G
dWxsc2NyZWVuTGF5ZXIgY29udGV4dF0gY3JlYXRlRmVuY2VQb3J0XTsKLSAgICAKLSAgICBXZWJU
aHJlYWRSdW4oW3N0cm9uZ1RoaXMsIHRoaXMsIGZyYW1lLCBmZW5jZVBvcnQsIHZpZGVvRnVsbHNj
cmVlbkxheWVyXSB7Ci0gICAgICAgIFtDQVRyYW5zYWN0aW9uIGJlZ2luXTsKLSAgICAgICAgW0NB
VHJhbnNhY3Rpb24gc2V0QW5pbWF0aW9uRHVyYXRpb246MF07Ci0gICAgICAgIGlmIChtX21vZGVs
KQotICAgICAgICAgICAgbV9tb2RlbC0+c2V0VmlkZW9MYXllckZyYW1lKGZyYW1lKTsKLSAgICAg
ICAgW1t2aWRlb0Z1bGxzY3JlZW5MYXllciBjb250ZXh0XSBzZXRGZW5jZVBvcnQ6ZmVuY2VQb3J0
XTsKLSAgICAgICAgbWFjaF9wb3J0X2RlYWxsb2NhdGUobWFjaF90YXNrX3NlbGYoKSwgZmVuY2VQ
b3J0KTsKLSAgICAgICAgW0NBVHJhbnNhY3Rpb24gY29tbWl0XTsKLSAgICB9KTsKKyAgICBpZiAo
bV9tb2RlbCkKKyAgICAgICAgbV9tb2RlbC0+c2V0VmlkZW9MYXllckZyYW1lKGZyYW1lKTsKIH0K
IAogdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6c2V0VmlkZW9MYXll
ckdyYXZpdHkoV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWw6OlZpZGVvR3Jhdml0eSB2aWRlb0dyYXZp
dHkpCkBAIC01MjgsNyArNTI3LDEwIEBAIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxl
ckNvbnRleHQ6OnNldFVwRnVsbHNjcmVlbihIVE1MVmlkZW9FbGVtZW50JiB2aWRlCiAgICAgICAg
IG1fbW9kZWwtPnNldFZpZGVvRWxlbWVudChtX3ZpZGVvRWxlbWVudC5nZXQoKSk7CiAgICAgICAg
IAogICAgICAgICBib29sIGFsbG93c1BpY3R1cmVJblBpY3R1cmUgPSBtX3ZpZGVvRWxlbWVudC0+
bWVkaWFTZXNzaW9uKCkuYWxsb3dzUGljdHVyZUluUGljdHVyZSgqbV92aWRlb0VsZW1lbnQuZ2V0
KCkpOwotICAgICAgICBJbnRSZWN0IHZpZGVvRWxlbWVudENsaWVudFJlY3QgPSBtX3ZpZGVvRWxl
bWVudC0+Y2xpZW50UmVjdCgpOworCisgICAgICAgIEludFJlY3QgdmlkZW9FbGVtZW50Q2xpZW50
UmVjdCA9IGVsZW1lbnRSZWN0SW5XaW5kb3cobV92aWRlb0VsZW1lbnQuZ2V0KCkpOworICAgICAg
ICBGbG9hdFJlY3QgdmlkZW9MYXllckZyYW1lID0gRmxvYXRSZWN0KDAsIDAsIHZpZGVvRWxlbWVu
dENsaWVudFJlY3Qud2lkdGgoKSwgdmlkZW9FbGVtZW50Q2xpZW50UmVjdC5oZWlnaHQoKSk7Cisg
ICAgICAgIG1fbW9kZWwtPnNldFZpZGVvTGF5ZXJGcmFtZSh2aWRlb0xheWVyRnJhbWUpOwogICAg
ICAgICAKICAgICAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwg
W3N0cm9uZ1RoaXMsIHRoaXMsIHZpZGVvRWxlbWVudENsaWVudFJlY3QsIHZpZXdSZWYsIG1vZGUs
IGFsbG93c1BpY3R1cmVJblBpY3R1cmVdIHsKICAgICAgICAgICAgIG1faW50ZXJmYWNlLT5zZXR1
cEZ1bGxzY3JlZW4oKm1fdmlkZW9GdWxsc2NyZWVuVmlldy5nZXQoKSwgdmlkZW9FbGVtZW50Q2xp
ZW50UmVjdCwgdmlld1JlZi5nZXQoKSwgbW9kZSwgYWxsb3dzUGljdHVyZUluUGljdHVyZSk7CkBA
IC01MzksMTEgKzU0MSwxMSBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250
ZXh0OjpzZXRVcEZ1bGxzY3JlZW4oSFRNTFZpZGVvRWxlbWVudCYgdmlkZQogdm9pZCBXZWJWaWRl
b0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6ZXhpdEZ1bGxzY3JlZW4oKQogewogICAgIEFT
U0VSVChXZWJUaHJlYWRJc0N1cnJlbnQoKSB8fCBpc01haW5UaHJlYWQoKSk7Ci0gICAgSW50UmVj
dCBzY3JlZW5SZWN0ID0gbV92aWRlb0VsZW1lbnQtPnNjcmVlblJlY3QoKTsKKyAgICBJbnRSZWN0
IGNsaWVudFJlY3QgPSBlbGVtZW50UmVjdEluV2luZG93KG1fdmlkZW9FbGVtZW50LmdldCgpKTsK
ICAgICBSZWZQdHI8V2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRleHQ+IHN0cm9uZ1Ro
aXModGhpcyk7Ci0gICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwg
W3N0cm9uZ1RoaXMsIHRoaXMsIHNjcmVlblJlY3RdIHsKKyAgICBkaXNwYXRjaF9hc3luYyhkaXNw
YXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBbc3Ryb25nVGhpcywgdGhpcywgY2xpZW50UmVjdF0gewog
ICAgICAgICBBU1NFUlQoaXNVSVRocmVhZCgpKTsKLSAgICAgICAgbV9pbnRlcmZhY2UtPmV4aXRG
dWxsc2NyZWVuKHNjcmVlblJlY3QpOworICAgICAgICBtX2ludGVyZmFjZS0+ZXhpdEZ1bGxzY3Jl
ZW4oY2xpZW50UmVjdCk7CiAgICAgfSk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>257290</attachid>
            <date>2015-07-22 13:36:25 -0700</date>
            <delta_ts>2015-07-22 13:40:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147189-20150722133510.patch</filename>
            <type>text/plain</type>
            <size>7873</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg3MTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTk2ZjBhNzdjMDQzMGQy
YjkyYzRlNGMyNzU0NzA4NzMzY2QwNGRkOS4uZmRkNjA1ZmJhNzNhZDE5NGE5Nzc1NjJmMzJjNzJk
ZmQ5MWI4NjMzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE1LTA3LTIyICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBGaXggZnVsbHNjcmVlbiBh
bmQgUGlQIHZpZGVvIGFuaW1hdGlvbiBhbmQgc2l6aW5nIHJlZ3Jlc3Npb25zLgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3MTg5CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS8yMTkzMDg5OT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBGaXhlcyBXSzEgc3BlY2lmaWMgcmVncmVzc2lvbnMgaW50cm9kdWNl
ZCBieSByMTg3MDQ0LiBGbGlja2VyIHdoZW4gZW50ZXJpbmcgZnVsbHNjcmVlbiwKKyAgICAgICAg
d3JvbmcgYW5pbWF0aW9uIGFuZCBtaXNzaW5nIGluaXRpYWwgYW5pbWF0aW9uIHJlY3RzLgorCisg
ICAgICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJBVktpdC5t
bToKKyAgICAgICAgKGVsZW1lbnRSZWN0SW5XaW5kb3cpOiBBZGRlZC4KKyAgICAgICAgKFdlYlZp
ZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0OjpkaWRTZXR1cEZ1bGxzY3JlZW4pOiBDbGVh
ciBiYWNrZ3JvdW5kIGRlY3JlYXNlcyBmbGFzaC4KKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVl
bkNvbnRyb2xsZXJDb250ZXh0OjpmdWxsc2NyZWVuTWF5UmV0dXJuVG9JbmxpbmUpOiBVc2UgY29u
c2lzdGVudCBpbmxpbmUgcmVjdC4KKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xs
ZXJDb250ZXh0OjpzZXRWaWRlb0xheWVyRnJhbWUpOiAKKyAgICAgICAgQ2xlYXIgdGhlIHRyYW5z
Zm9ybSBvbiB0aGUgd2ViIHRocmVhZCBpbnN0ZWFkIG9mIG9uIHRoZSBVSSB0aHJlYWQuCisgICAg
ICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6c2V0VXBGdWxsc2NyZWVu
KTogVXNlIGNvbnNpc3RlbnQgaW5saW5lIHJlY3QuCisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3Jl
ZW5Db250cm9sbGVyQ29udGV4dDo6ZXhpdEZ1bGxzY3JlZW4pOiBVc2UgY29uc2lzdGVudCBpbmxp
bmUgcmVjdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQubW06IAorICAgICAgICAoLVtXZWJBVlBsYXllckxheWVyIHJlc29sdmVCb3VuZHNd
KTogQ2xlYXIgdHJhbnNmb3JtIGFmdGVyIHNldHRpbmcgZnJhbWUuCisKIDIwMTUtMDctMjEgIEJl
bmphbWluIFBvdWxhaW4gIDxicG91bGFpbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0NTUyBTZWxl
Y3RvcnMgTGV2ZWwgNF0gQWRkICNpZmRlZnMgdG8gdGhlIG5ldyAnPj4nIGRlc2NlbmRhbnQgY29t
YmluYXRvcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVv
RnVsbHNjcmVlbkNvbnRyb2xsZXJBVktpdC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lv
cy9XZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQubW0KaW5kZXggNjBkMjhiYzJmZDNj
MjkyZTQyNmUzZWE5ZjFmYTZiOGU3OWUwYTFhOC4uYWNkYjk0NjI4ZWE3NjE3ZTJlNDc2NDA3MDQz
MWM5ZDA3YTAwZWM1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dl
YlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJBVktpdC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckFWS2l0Lm1tCkBAIC0zNiw3
ICszNiw5IEBACiAjaW1wb3J0ICJXZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oIgog
I2ltcG9ydCAiV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaCIKICNpbXBvcnQg
PFF1YXJ0ekNvcmUvQ29yZUFuaW1hdGlvbi5oPgorI2ltcG9ydCA8V2ViQ29yZS9GcmFtZVZpZXcu
aD4KICNpbXBvcnQgPFdlYkNvcmUvSFRNTFZpZGVvRWxlbWVudC5oPgorI2ltcG9ydCA8V2ViQ29y
ZS9SZW5kZXJFbGVtZW50Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVUaHJlYWRSdW4uaD4K
IAogU09GVF9MSU5LX0ZSQU1FV09SSyhVSUtpdCkKQEAgLTQ0LDYgKzQ2LDE0IEBAIFNPRlRfTElO
S19DTEFTUyhVSUtpdCwgVUlWaWV3KQogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAorc3Rh
dGljIEludFJlY3QgZWxlbWVudFJlY3RJbldpbmRvdyhIVE1MVmlkZW9FbGVtZW50KiB2aWRlb0Vs
ZW1lbnQpCit7CisgICAgaWYgKCF2aWRlb0VsZW1lbnQgfHwgIXZpZGVvRWxlbWVudC0+cmVuZGVy
ZXIoKSB8fCAhdmlkZW9FbGVtZW50LT5kb2N1bWVudCgpLnZpZXcoKSkKKyAgICAgICAgcmV0dXJu
IEludFJlY3QoKTsKKyAgICAKKyAgICByZXR1cm4gdmlkZW9FbGVtZW50LT5kb2N1bWVudCgpLnZp
ZXcoKS0+Y29udmVydFRvQ29udGFpbmluZ1dpbmRvdyh2aWRlb0VsZW1lbnQtPnJlbmRlcmVyKCkt
PmFic29sdXRlQm91bmRpbmdCb3hSZWN0KCkpOworfQorCiAjaWYgX19JUEhPTkVfT1NfVkVSU0lP
Tl9NSU5fUkVRVUlSRUQgPD0gODAyMDAgfHwgIUhBVkUoQVZLSVQpCiAKIEBpbXBsZW1lbnRhdGlv
biBXZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyCkBAIC0xNTQsNiArMTY0LDcgQEAgdm9pZCBX
ZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6ZGlkU2V0dXBGdWxsc2NyZWVuKCkK
ICAgICBSZWZQdHI8V2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRleHQ+IHN0cm9uZ1Ro
aXModGhpcyk7CiAgICAgUmV0YWluUHRyPENBTGF5ZXI+IHZpZGVvRnVsbHNjcmVlbkxheWVyID0g
W21fdmlkZW9GdWxsc2NyZWVuVmlldyBsYXllcl07CiAgICAgV2ViVGhyZWFkUnVuKFtzdHJvbmdU
aGlzLCB0aGlzLCB2aWRlb0Z1bGxzY3JlZW5MYXllcl0geworICAgICAgICBbdmlkZW9GdWxsc2Ny
ZWVuTGF5ZXIgc2V0QmFja2dyb3VuZENvbG9yOmNhY2hlZENHQ29sb3IoV2ViQ29yZTo6Q29sb3I6
OnRyYW5zcGFyZW50LCBXZWJDb3JlOjpDb2xvclNwYWNlRGV2aWNlUkdCKV07CiAgICAgICAgIG1f
bW9kZWwtPnNldFZpZGVvRnVsbHNjcmVlbkxheWVyKHZpZGVvRnVsbHNjcmVlbkxheWVyLmdldCgp
KTsKICAgICAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgW3N0
cm9uZ1RoaXMsIHRoaXNdIHsKICAgICAgICAgICAgIG1faW50ZXJmYWNlLT5lbnRlckZ1bGxzY3Jl
ZW4oKTsKQEAgLTE5OCw3ICsyMDksNyBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xs
ZXJDb250ZXh0OjpmdWxsc2NyZWVuTWF5UmV0dXJuVG9JbmxpbmUoKQogICAgIEFTU0VSVChpc1VJ
VGhyZWFkKCkpOwogICAgIFJlZlB0cjxXZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4
dD4gc3Ryb25nVGhpcyh0aGlzKTsKICAgICBXZWJUaHJlYWRSdW4oW3N0cm9uZ1RoaXMsIHRoaXNd
IHsKLSAgICAgICAgSW50UmVjdCBjbGllbnRSZWN0ID0gbV92aWRlb0VsZW1lbnQtPmNsaWVudFJl
Y3QoKTsKKyAgICAgICAgSW50UmVjdCBjbGllbnRSZWN0ID0gZWxlbWVudFJlY3RJbldpbmRvdyht
X3ZpZGVvRWxlbWVudC5nZXQoKSk7CiAgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dl
dF9tYWluX3F1ZXVlKCksIFtzdHJvbmdUaGlzLCB0aGlzLCBjbGllbnRSZWN0XSB7CiAgICAgICAg
ICAgICBtX2ludGVyZmFjZS0+cHJlcGFyZWRUb1JldHVyblRvSW5saW5lKHRydWUsIGNsaWVudFJl
Y3QpOwogICAgICAgICB9KTsKQEAgLTQ1NCwxNyArNDY1LDIxIEBAIHZvaWQgV2ViVmlkZW9GdWxs
c2NyZWVuQ29udHJvbGxlckNvbnRleHQ6OnNldFZpZGVvTGF5ZXJGcmFtZShGbG9hdFJlY3QgZnJh
bWUpCiAgICAgQVNTRVJUKGlzVUlUaHJlYWQoKSk7CiAgICAgUmVmUHRyPFdlYlZpZGVvRnVsbHNj
cmVlbkNvbnRyb2xsZXJDb250ZXh0PiBzdHJvbmdUaGlzKHRoaXMpOwogICAgIFJldGFpblB0cjxD
QUxheWVyPiB2aWRlb0Z1bGxzY3JlZW5MYXllciA9IFttX3ZpZGVvRnVsbHNjcmVlblZpZXcgbGF5
ZXJdOwotCi0gICAgbWFjaF9wb3J0X25hbWVfdCBmZW5jZVBvcnQgPSBbW3ZpZGVvRnVsbHNjcmVl
bkxheWVyIGNvbnRleHRdIGNyZWF0ZUZlbmNlUG9ydF07CiAgICAgCi0gICAgV2ViVGhyZWFkUnVu
KFtzdHJvbmdUaGlzLCB0aGlzLCBmcmFtZSwgZmVuY2VQb3J0LCB2aWRlb0Z1bGxzY3JlZW5MYXll
cl0gewotICAgICAgICBbQ0FUcmFuc2FjdGlvbiBiZWdpbl07Ci0gICAgICAgIFtDQVRyYW5zYWN0
aW9uIHNldEFuaW1hdGlvbkR1cmF0aW9uOjBdOwotICAgICAgICBpZiAobV9tb2RlbCkKLSAgICAg
ICAgICAgIG1fbW9kZWwtPnNldFZpZGVvTGF5ZXJGcmFtZShmcmFtZSk7Ci0gICAgICAgIFtbdmlk
ZW9GdWxsc2NyZWVuTGF5ZXIgY29udGV4dF0gc2V0RmVuY2VQb3J0OmZlbmNlUG9ydF07Ci0gICAg
ICAgIG1hY2hfcG9ydF9kZWFsbG9jYXRlKG1hY2hfdGFza19zZWxmKCksIGZlbmNlUG9ydCk7Ci0g
ICAgICAgIFtDQVRyYW5zYWN0aW9uIGNvbW1pdF07CisgICAgW3ZpZGVvRnVsbHNjcmVlbkxheWVy
IHNldFN1YmxheWVyVHJhbnNmb3JtOlt2aWRlb0Z1bGxzY3JlZW5MYXllciB0cmFuc2Zvcm1dXTsK
KworICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CisgICAg
ICAgIFdlYlRocmVhZFJ1bihbc3Ryb25nVGhpcywgdGhpcywgZnJhbWUsIHZpZGVvRnVsbHNjcmVl
bkxheWVyXSB7CisgICAgICAgICAgICBbQ0FUcmFuc2FjdGlvbiBiZWdpbl07CisgICAgICAgICAg
ICBbQ0FUcmFuc2FjdGlvbiBzZXREaXNhYmxlQWN0aW9uczpZRVNdOworICAgICAgICAgICAgW0NB
VHJhbnNhY3Rpb24gc2V0QW5pbWF0aW9uRHVyYXRpb246MF07CisgICAgICAgICAgICAKKyAgICAg
ICAgICAgIFt2aWRlb0Z1bGxzY3JlZW5MYXllciBzZXRTdWJsYXllclRyYW5zZm9ybTpDQVRyYW5z
Zm9ybTNESWRlbnRpdHldOworICAgICAgICAgICAgCisgICAgICAgICAgICBpZiAobV9tb2RlbCkK
KyAgICAgICAgICAgICAgICBtX21vZGVsLT5zZXRWaWRlb0xheWVyRnJhbWUoZnJhbWUpOworICAg
ICAgICAgICAgW0NBVHJhbnNhY3Rpb24gY29tbWl0XTsKKyAgICAgICAgfSk7CiAgICAgfSk7CiB9
CiAKQEAgLTUyOCw3ICs1NDMsMTAgQEAgdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVy
Q29udGV4dDo6c2V0VXBGdWxsc2NyZWVuKEhUTUxWaWRlb0VsZW1lbnQmIHZpZGUKICAgICAgICAg
bV9tb2RlbC0+c2V0VmlkZW9FbGVtZW50KG1fdmlkZW9FbGVtZW50LmdldCgpKTsKICAgICAgICAg
CiAgICAgICAgIGJvb2wgYWxsb3dzUGljdHVyZUluUGljdHVyZSA9IG1fdmlkZW9FbGVtZW50LT5t
ZWRpYVNlc3Npb24oKS5hbGxvd3NQaWN0dXJlSW5QaWN0dXJlKCptX3ZpZGVvRWxlbWVudC5nZXQo
KSk7Ci0gICAgICAgIEludFJlY3QgdmlkZW9FbGVtZW50Q2xpZW50UmVjdCA9IG1fdmlkZW9FbGVt
ZW50LT5jbGllbnRSZWN0KCk7CisKKyAgICAgICAgSW50UmVjdCB2aWRlb0VsZW1lbnRDbGllbnRS
ZWN0ID0gZWxlbWVudFJlY3RJbldpbmRvdyhtX3ZpZGVvRWxlbWVudC5nZXQoKSk7CisgICAgICAg
IEZsb2F0UmVjdCB2aWRlb0xheWVyRnJhbWUgPSBGbG9hdFJlY3QoMCwgMCwgdmlkZW9FbGVtZW50
Q2xpZW50UmVjdC53aWR0aCgpLCB2aWRlb0VsZW1lbnRDbGllbnRSZWN0LmhlaWdodCgpKTsKKyAg
ICAgICAgbV9tb2RlbC0+c2V0VmlkZW9MYXllckZyYW1lKHZpZGVvTGF5ZXJGcmFtZSk7CiAgICAg
ICAgIAogICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBb
c3Ryb25nVGhpcywgdGhpcywgdmlkZW9FbGVtZW50Q2xpZW50UmVjdCwgdmlld1JlZiwgbW9kZSwg
YWxsb3dzUGljdHVyZUluUGljdHVyZV0gewogICAgICAgICAgICAgbV9pbnRlcmZhY2UtPnNldHVw
RnVsbHNjcmVlbigqbV92aWRlb0Z1bGxzY3JlZW5WaWV3LmdldCgpLCB2aWRlb0VsZW1lbnRDbGll
bnRSZWN0LCB2aWV3UmVmLmdldCgpLCBtb2RlLCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlKTsKQEAg
LTUzOSwxMSArNTU3LDExIEBAIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRl
eHQ6OnNldFVwRnVsbHNjcmVlbihIVE1MVmlkZW9FbGVtZW50JiB2aWRlCiB2b2lkIFdlYlZpZGVv
RnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0OjpleGl0RnVsbHNjcmVlbigpCiB7CiAgICAgQVNT
RVJUKFdlYlRocmVhZElzQ3VycmVudCgpIHx8IGlzTWFpblRocmVhZCgpKTsKLSAgICBJbnRSZWN0
IHNjcmVlblJlY3QgPSBtX3ZpZGVvRWxlbWVudC0+c2NyZWVuUmVjdCgpOworICAgIEludFJlY3Qg
Y2xpZW50UmVjdCA9IGVsZW1lbnRSZWN0SW5XaW5kb3cobV92aWRlb0VsZW1lbnQuZ2V0KCkpOwog
ICAgIFJlZlB0cjxXZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dD4gc3Ryb25nVGhp
cyh0aGlzKTsKLSAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBb
c3Ryb25nVGhpcywgdGhpcywgc2NyZWVuUmVjdF0geworICAgIGRpc3BhdGNoX2FzeW5jKGRpc3Bh
dGNoX2dldF9tYWluX3F1ZXVlKCksIFtzdHJvbmdUaGlzLCB0aGlzLCBjbGllbnRSZWN0XSB7CiAg
ICAgICAgIEFTU0VSVChpc1VJVGhyZWFkKCkpOwotICAgICAgICBtX2ludGVyZmFjZS0+ZXhpdEZ1
bGxzY3JlZW4oc2NyZWVuUmVjdCk7CisgICAgICAgIG1faW50ZXJmYWNlLT5leGl0RnVsbHNjcmVl
bihjbGllbnRSZWN0KTsKICAgICB9KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1t
CmluZGV4IDI3NDc4ZGU2NmZjOGU0NDEyZTZiNzI2NjI5NjUzZTkwMDRjMjY4YzEuLmYxOWY2M2Vl
NDE3NzI0MzMwMzM1OTFkNjM1ODcyZjYwOTU1YmYyYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNl
QVZLaXQubW0KQEAgLTY4MywxMCArNjgzLDExIEBAIHN0YXRpYyBXZWJWaWRlb0Z1bGxzY3JlZW5J
bnRlcmZhY2VBVktpdDo6RXhpdEZ1bGxTY3JlZW5SZWFzb24gY29udmVydFRvRXhpdEZ1bGxTCiAg
ICAgCiAgICAgW0NBVHJhbnNhY3Rpb24gYmVnaW5dOwogICAgIFtDQVRyYW5zYWN0aW9uIHNldEFu
aW1hdGlvbkR1cmF0aW9uOjBdOworICAgIFtDQVRyYW5zYWN0aW9uIHNldERpc2FibGVBY3Rpb25z
OllFU107CiAgICAgCi0gICAgWyhVSVZpZXcgKilbX3ZpZGVvU3VibGF5ZXIgZGVsZWdhdGVdIHNl
dFRyYW5zZm9ybTpDR0FmZmluZVRyYW5zZm9ybUlkZW50aXR5XTsKICAgICBzZWxmLm1vZGVsVmlk
ZW9MYXllckZyYW1lID0gW3NlbGYgYm91bmRzXTsKICAgICBbX2F2UGxheWVyQ29udHJvbGxlciBk
ZWxlZ2F0ZV0tPnNldFZpZGVvTGF5ZXJGcmFtZShzZWxmLm1vZGVsVmlkZW9MYXllckZyYW1lKTsK
KyAgICBbKFVJVmlldyAqKVtfdmlkZW9TdWJsYXllciBkZWxlZ2F0ZV0gc2V0VHJhbnNmb3JtOkNH
QWZmaW5lVHJhbnNmb3JtSWRlbnRpdHldOwogICAgIAogICAgIFtDQVRyYW5zYWN0aW9uIGNvbW1p
dF07CiB9Cg==
</data>
<flag name="commit-queue"
          id="282442"
          type_id="3"
          status="+"
          setter="jeremyj-wk"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>257293</attachid>
            <date>2015-07-22 13:39:16 -0700</date>
            <delta_ts>2015-07-22 14:32:59 -0700</delta_ts>
            <desc>Patch for landing.</desc>
            <filename>bug-147189-20150722133801.patch</filename>
            <type>text/plain</type>
            <size>7842</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg3MTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTk2ZjBhNzdjMDQzMGQy
YjkyYzRlNGMyNzU0NzA4NzMzY2QwNGRkOS4uNjRkMDUwN2UxNmQ3Mjk0ZWJiNDJkZDNmMzMwZjgx
MDkxNzNhYTE1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE1LTA3LTIyICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBGaXggZnVsbHNjcmVlbiBh
bmQgUGlQIHZpZGVvIGFuaW1hdGlvbiBhbmQgc2l6aW5nIHJlZ3Jlc3Npb25zLgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3MTg5CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS8yMTkzMDg5OT4KKworICAgICAgICBSZXZpZXdlZCBieSBKZXIgTm9ibGUu
CisKKyAgICAgICAgRml4ZXMgV0sxIHNwZWNpZmljIHJlZ3Jlc3Npb25zIGludHJvZHVjZWQgYnkg
cjE4NzA0NC4gRmxpY2tlciB3aGVuIGVudGVyaW5nIGZ1bGxzY3JlZW4sCisgICAgICAgIHdyb25n
IGFuaW1hdGlvbiBhbmQgbWlzc2luZyBpbml0aWFsIGFuaW1hdGlvbiByZWN0cy4KKworICAgICAg
ICAqIHBsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQubW06Cisg
ICAgICAgIChlbGVtZW50UmVjdEluV2luZG93KTogQWRkZWQuCisgICAgICAgIChXZWJWaWRlb0Z1
bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6ZGlkU2V0dXBGdWxsc2NyZWVuKTogQ2xlYXIgYmFj
a2dyb3VuZCBkZWNyZWFzZXMgZmxhc2guCisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5Db250
cm9sbGVyQ29udGV4dDo6ZnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5lKTogVXNlIGNvbnNpc3Rl
bnQgaW5saW5lIHJlY3QuCisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29u
dGV4dDo6c2V0VmlkZW9MYXllckZyYW1lKTogCisgICAgICAgIENsZWFyIHRoZSB0cmFuc2Zvcm0g
b24gdGhlIHdlYiB0aHJlYWQgaW5zdGVhZCBvZiBvbiB0aGUgVUkgdGhyZWFkLgorICAgICAgICAo
V2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRleHQ6OnNldFVwRnVsbHNjcmVlbik6IFVz
ZSBjb25zaXN0ZW50IGlubGluZSByZWN0LgorICAgICAgICAoV2ViVmlkZW9GdWxsc2NyZWVuQ29u
dHJvbGxlckNvbnRleHQ6OmV4aXRGdWxsc2NyZWVuKTogVXNlIGNvbnNpc3RlbnQgaW5saW5lIHJl
Y3QuCisgICAgICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFW
S2l0Lm1tOiAKKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJMYXllciByZXNvbHZlQm91bmRzXSk6IENs
ZWFyIHRyYW5zZm9ybSBhZnRlciBzZXR0aW5nIGZyYW1lLgorCiAyMDE1LTA3LTIxICBCZW5qYW1p
biBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtDU1MgU2VsZWN0b3Jz
IExldmVsIDRdIEFkZCAjaWZkZWZzIHRvIHRoZSBuZXcgJz4+JyBkZXNjZW5kYW50IGNvbWJpbmF0
b3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxz
Y3JlZW5Db250cm9sbGVyQVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2Vi
VmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckFWS2l0Lm1tCmluZGV4IDYwZDI4YmMyZmQzYzI5MmU0
MjZlM2VhOWYxZmE2YjhlNzllMGExYTguLjczNjkyMmI3NTZkMGE3MTQyOTAwOTY0MWQzMTZkYjMz
ODM3MDIzOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJBVktpdC5tbQpAQCAtMzYsNyArMzYs
OSBAQAogI2ltcG9ydCAiV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaCIKICNpbXBv
cnQgIldlYlZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmgiCiAjaW1wb3J0IDxRdWFy
dHpDb3JlL0NvcmVBbmltYXRpb24uaD4KKyNpbXBvcnQgPFdlYkNvcmUvRnJhbWVWaWV3Lmg+CiAj
aW1wb3J0IDxXZWJDb3JlL0hUTUxWaWRlb0VsZW1lbnQuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUmVu
ZGVyRWxlbWVudC5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlVGhyZWFkUnVuLmg+CiAKIFNP
RlRfTElOS19GUkFNRVdPUksoVUlLaXQpCkBAIC00NCw2ICs0NiwxNCBAQCBTT0ZUX0xJTktfQ0xB
U1MoVUlLaXQsIFVJVmlldykKIAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKK3N0YXRpYyBJ
bnRSZWN0IGVsZW1lbnRSZWN0SW5XaW5kb3coSFRNTFZpZGVvRWxlbWVudCogdmlkZW9FbGVtZW50
KQoreworICAgIGlmICghdmlkZW9FbGVtZW50IHx8ICF2aWRlb0VsZW1lbnQtPnJlbmRlcmVyKCkg
fHwgIXZpZGVvRWxlbWVudC0+ZG9jdW1lbnQoKS52aWV3KCkpCisgICAgICAgIHJldHVybiBJbnRS
ZWN0KCk7CisgICAgCisgICAgcmV0dXJuIHZpZGVvRWxlbWVudC0+ZG9jdW1lbnQoKS52aWV3KCkt
PmNvbnZlcnRUb0NvbnRhaW5pbmdXaW5kb3codmlkZW9FbGVtZW50LT5yZW5kZXJlcigpLT5hYnNv
bHV0ZUJvdW5kaW5nQm94UmVjdCgpKTsKK30KKwogI2lmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlO
X1JFUVVJUkVEIDw9IDgwMjAwIHx8ICFIQVZFKEFWS0lUKQogCiBAaW1wbGVtZW50YXRpb24gV2Vi
VmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlcgpAQCAtMTU0LDYgKzE2NCw3IEBAIHZvaWQgV2ViVmlk
ZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRleHQ6OmRpZFNldHVwRnVsbHNjcmVlbigpCiAgICAg
UmVmUHRyPFdlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0PiBzdHJvbmdUaGlzKHRo
aXMpOwogICAgIFJldGFpblB0cjxDQUxheWVyPiB2aWRlb0Z1bGxzY3JlZW5MYXllciA9IFttX3Zp
ZGVvRnVsbHNjcmVlblZpZXcgbGF5ZXJdOwogICAgIFdlYlRocmVhZFJ1bihbc3Ryb25nVGhpcywg
dGhpcywgdmlkZW9GdWxsc2NyZWVuTGF5ZXJdIHsKKyAgICAgICAgW3ZpZGVvRnVsbHNjcmVlbkxh
eWVyIHNldEJhY2tncm91bmRDb2xvcjpjYWNoZWRDR0NvbG9yKFdlYkNvcmU6OkNvbG9yOjp0cmFu
c3BhcmVudCwgV2ViQ29yZTo6Q29sb3JTcGFjZURldmljZVJHQildOwogICAgICAgICBtX21vZGVs
LT5zZXRWaWRlb0Z1bGxzY3JlZW5MYXllcih2aWRlb0Z1bGxzY3JlZW5MYXllci5nZXQoKSk7CiAg
ICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIFtzdHJvbmdU
aGlzLCB0aGlzXSB7CiAgICAgICAgICAgICBtX2ludGVyZmFjZS0+ZW50ZXJGdWxsc2NyZWVuKCk7
CkBAIC0xOTgsNyArMjA5LDcgQEAgdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29u
dGV4dDo6ZnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5lKCkKICAgICBBU1NFUlQoaXNVSVRocmVh
ZCgpKTsKICAgICBSZWZQdHI8V2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRleHQ+IHN0
cm9uZ1RoaXModGhpcyk7CiAgICAgV2ViVGhyZWFkUnVuKFtzdHJvbmdUaGlzLCB0aGlzXSB7Ci0g
ICAgICAgIEludFJlY3QgY2xpZW50UmVjdCA9IG1fdmlkZW9FbGVtZW50LT5jbGllbnRSZWN0KCk7
CisgICAgICAgIEludFJlY3QgY2xpZW50UmVjdCA9IGVsZW1lbnRSZWN0SW5XaW5kb3cobV92aWRl
b0VsZW1lbnQuZ2V0KCkpOwogICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFp
bl9xdWV1ZSgpLCBbc3Ryb25nVGhpcywgdGhpcywgY2xpZW50UmVjdF0gewogICAgICAgICAgICAg
bV9pbnRlcmZhY2UtPnByZXBhcmVkVG9SZXR1cm5Ub0lubGluZSh0cnVlLCBjbGllbnRSZWN0KTsK
ICAgICAgICAgfSk7CkBAIC00NTQsMTcgKzQ2NSwyMSBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVl
bkNvbnRyb2xsZXJDb250ZXh0OjpzZXRWaWRlb0xheWVyRnJhbWUoRmxvYXRSZWN0IGZyYW1lKQog
ICAgIEFTU0VSVChpc1VJVGhyZWFkKCkpOwogICAgIFJlZlB0cjxXZWJWaWRlb0Z1bGxzY3JlZW5D
b250cm9sbGVyQ29udGV4dD4gc3Ryb25nVGhpcyh0aGlzKTsKICAgICBSZXRhaW5QdHI8Q0FMYXll
cj4gdmlkZW9GdWxsc2NyZWVuTGF5ZXIgPSBbbV92aWRlb0Z1bGxzY3JlZW5WaWV3IGxheWVyXTsK
LQotICAgIG1hY2hfcG9ydF9uYW1lX3QgZmVuY2VQb3J0ID0gW1t2aWRlb0Z1bGxzY3JlZW5MYXll
ciBjb250ZXh0XSBjcmVhdGVGZW5jZVBvcnRdOwogICAgIAotICAgIFdlYlRocmVhZFJ1bihbc3Ry
b25nVGhpcywgdGhpcywgZnJhbWUsIGZlbmNlUG9ydCwgdmlkZW9GdWxsc2NyZWVuTGF5ZXJdIHsK
LSAgICAgICAgW0NBVHJhbnNhY3Rpb24gYmVnaW5dOwotICAgICAgICBbQ0FUcmFuc2FjdGlvbiBz
ZXRBbmltYXRpb25EdXJhdGlvbjowXTsKLSAgICAgICAgaWYgKG1fbW9kZWwpCi0gICAgICAgICAg
ICBtX21vZGVsLT5zZXRWaWRlb0xheWVyRnJhbWUoZnJhbWUpOwotICAgICAgICBbW3ZpZGVvRnVs
bHNjcmVlbkxheWVyIGNvbnRleHRdIHNldEZlbmNlUG9ydDpmZW5jZVBvcnRdOwotICAgICAgICBt
YWNoX3BvcnRfZGVhbGxvY2F0ZShtYWNoX3Rhc2tfc2VsZigpLCBmZW5jZVBvcnQpOwotICAgICAg
ICBbQ0FUcmFuc2FjdGlvbiBjb21taXRdOworICAgIFt2aWRlb0Z1bGxzY3JlZW5MYXllciBzZXRT
dWJsYXllclRyYW5zZm9ybTpbdmlkZW9GdWxsc2NyZWVuTGF5ZXIgdHJhbnNmb3JtXV07CisKKyAg
ICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBeeworICAgICAgICBX
ZWJUaHJlYWRSdW4oW3N0cm9uZ1RoaXMsIHRoaXMsIGZyYW1lLCB2aWRlb0Z1bGxzY3JlZW5MYXll
cl0geworICAgICAgICAgICAgW0NBVHJhbnNhY3Rpb24gYmVnaW5dOworICAgICAgICAgICAgW0NB
VHJhbnNhY3Rpb24gc2V0RGlzYWJsZUFjdGlvbnM6WUVTXTsKKyAgICAgICAgICAgIFtDQVRyYW5z
YWN0aW9uIHNldEFuaW1hdGlvbkR1cmF0aW9uOjBdOworICAgICAgICAgICAgCisgICAgICAgICAg
ICBbdmlkZW9GdWxsc2NyZWVuTGF5ZXIgc2V0U3VibGF5ZXJUcmFuc2Zvcm06Q0FUcmFuc2Zvcm0z
RElkZW50aXR5XTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgaWYgKG1fbW9kZWwpCisgICAg
ICAgICAgICAgICAgbV9tb2RlbC0+c2V0VmlkZW9MYXllckZyYW1lKGZyYW1lKTsKKyAgICAgICAg
ICAgIFtDQVRyYW5zYWN0aW9uIGNvbW1pdF07CisgICAgICAgIH0pOwogICAgIH0pOwogfQogCkBA
IC01MjgsNyArNTQzLDEwIEBAIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRl
eHQ6OnNldFVwRnVsbHNjcmVlbihIVE1MVmlkZW9FbGVtZW50JiB2aWRlCiAgICAgICAgIG1fbW9k
ZWwtPnNldFZpZGVvRWxlbWVudChtX3ZpZGVvRWxlbWVudC5nZXQoKSk7CiAgICAgICAgIAogICAg
ICAgICBib29sIGFsbG93c1BpY3R1cmVJblBpY3R1cmUgPSBtX3ZpZGVvRWxlbWVudC0+bWVkaWFT
ZXNzaW9uKCkuYWxsb3dzUGljdHVyZUluUGljdHVyZSgqbV92aWRlb0VsZW1lbnQuZ2V0KCkpOwot
ICAgICAgICBJbnRSZWN0IHZpZGVvRWxlbWVudENsaWVudFJlY3QgPSBtX3ZpZGVvRWxlbWVudC0+
Y2xpZW50UmVjdCgpOworCisgICAgICAgIEludFJlY3QgdmlkZW9FbGVtZW50Q2xpZW50UmVjdCA9
IGVsZW1lbnRSZWN0SW5XaW5kb3cobV92aWRlb0VsZW1lbnQuZ2V0KCkpOworICAgICAgICBGbG9h
dFJlY3QgdmlkZW9MYXllckZyYW1lID0gRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgdmlkZW9FbGVt
ZW50Q2xpZW50UmVjdC5zaXplKCkpOworICAgICAgICBtX21vZGVsLT5zZXRWaWRlb0xheWVyRnJh
bWUodmlkZW9MYXllckZyYW1lKTsKICAgICAgICAgCiAgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRp
c3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIFtzdHJvbmdUaGlzLCB0aGlzLCB2aWRlb0VsZW1lbnRD
bGllbnRSZWN0LCB2aWV3UmVmLCBtb2RlLCBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlXSB7CiAgICAg
ICAgICAgICBtX2ludGVyZmFjZS0+c2V0dXBGdWxsc2NyZWVuKCptX3ZpZGVvRnVsbHNjcmVlblZp
ZXcuZ2V0KCksIHZpZGVvRWxlbWVudENsaWVudFJlY3QsIHZpZXdSZWYuZ2V0KCksIG1vZGUsIGFs
bG93c1BpY3R1cmVJblBpY3R1cmUpOwpAQCAtNTM5LDExICs1NTcsMTEgQEAgdm9pZCBXZWJWaWRl
b0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6c2V0VXBGdWxsc2NyZWVuKEhUTUxWaWRlb0Vs
ZW1lbnQmIHZpZGUKIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRleHQ6OmV4
aXRGdWxsc2NyZWVuKCkKIHsKICAgICBBU1NFUlQoV2ViVGhyZWFkSXNDdXJyZW50KCkgfHwgaXNN
YWluVGhyZWFkKCkpOwotICAgIEludFJlY3Qgc2NyZWVuUmVjdCA9IG1fdmlkZW9FbGVtZW50LT5z
Y3JlZW5SZWN0KCk7CisgICAgSW50UmVjdCBjbGllbnRSZWN0ID0gZWxlbWVudFJlY3RJbldpbmRv
dyhtX3ZpZGVvRWxlbWVudC5nZXQoKSk7CiAgICAgUmVmUHRyPFdlYlZpZGVvRnVsbHNjcmVlbkNv
bnRyb2xsZXJDb250ZXh0PiBzdHJvbmdUaGlzKHRoaXMpOwotICAgIGRpc3BhdGNoX2FzeW5jKGRp
c3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIFtzdHJvbmdUaGlzLCB0aGlzLCBzY3JlZW5SZWN0XSB7
CisgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgW3N0cm9uZ1Ro
aXMsIHRoaXMsIGNsaWVudFJlY3RdIHsKICAgICAgICAgQVNTRVJUKGlzVUlUaHJlYWQoKSk7Ci0g
ICAgICAgIG1faW50ZXJmYWNlLT5leGl0RnVsbHNjcmVlbihzY3JlZW5SZWN0KTsKKyAgICAgICAg
bV9pbnRlcmZhY2UtPmV4aXRGdWxsc2NyZWVuKGNsaWVudFJlY3QpOwogICAgIH0pOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVu
SW50ZXJmYWNlQVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9G
dWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KaW5kZXggMjc0NzhkZTY2ZmM4ZTQ0MTJlNmI3MjY2
Mjk2NTNlOTAwNGMyNjhjMS4uZjE5ZjYzZWU0MTc3MjQzMzAzMzU5MWQ2MzU4NzJmNjA5NTViZjJh
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNj
cmVlbkludGVyZmFjZUFWS2l0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9X
ZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQpAQCAtNjgzLDEwICs2ODMsMTEgQEAg
c3RhdGljIFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjpFeGl0RnVsbFNjcmVlblJl
YXNvbiBjb252ZXJ0VG9FeGl0RnVsbFMKICAgICAKICAgICBbQ0FUcmFuc2FjdGlvbiBiZWdpbl07
CiAgICAgW0NBVHJhbnNhY3Rpb24gc2V0QW5pbWF0aW9uRHVyYXRpb246MF07CisgICAgW0NBVHJh
bnNhY3Rpb24gc2V0RGlzYWJsZUFjdGlvbnM6WUVTXTsKICAgICAKLSAgICBbKFVJVmlldyAqKVtf
dmlkZW9TdWJsYXllciBkZWxlZ2F0ZV0gc2V0VHJhbnNmb3JtOkNHQWZmaW5lVHJhbnNmb3JtSWRl
bnRpdHldOwogICAgIHNlbGYubW9kZWxWaWRlb0xheWVyRnJhbWUgPSBbc2VsZiBib3VuZHNdOwog
ICAgIFtfYXZQbGF5ZXJDb250cm9sbGVyIGRlbGVnYXRlXS0+c2V0VmlkZW9MYXllckZyYW1lKHNl
bGYubW9kZWxWaWRlb0xheWVyRnJhbWUpOworICAgIFsoVUlWaWV3ICopW192aWRlb1N1YmxheWVy
IGRlbGVnYXRlXSBzZXRUcmFuc2Zvcm06Q0dBZmZpbmVUcmFuc2Zvcm1JZGVudGl0eV07CiAgICAg
CiAgICAgW0NBVHJhbnNhY3Rpb24gY29tbWl0XTsKIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>