<?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>159562</bug_id>
          
          <creation_ts>2016-07-08 09:21:14 -0700</creation_ts>
          <short_desc>Build fails with GSTREAMER_GL when both desktop GL and GLES2 are enabled in gst-plugins-bad</short_desc>
          <delta_ts>2016-09-21 00:50:51 -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>WebKitGTK</component>
          <version>Other</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="Olivier Blin">olivier.blin</reporter>
          <assigned_to name="Miguel Gomez">magomez</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eocanha</cc>
    
    <cc>magomez</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>pnormand</cc>
    
    <cc>yoon</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1209132</commentid>
    <comment_count>0</comment_count>
    <who name="Olivier Blin">olivier.blin</who>
    <bug_when>2016-07-08 09:21:14 -0700</bug_when>
    <thetext>When both desktop GL and GLES2 are enabled in gst-plugins-bad, and when GSTREAMER_GL is enabled, the build of the GStreamer media backend fails with the errors below.

In file included from /home/blino/WebKit/Source/WebCore/platform/graphics/ANGLEWebKitBridge.h:43:0,
                 from /home/blino/WebKit/Source/WebCore/platform/graphics/GraphicsContext3D.h:29,
                 from /home/blino/WebKit/Source/WebCore/platform/graphics/texmap/TextureMapperGL.h:29,
                 from /home/blino/WebKit/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:38,
                 from /home/blino/WebKit/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:25:
/home/blino/WebKit/Source/WebCore/platform/graphics/OpenGLShims.h:257:67: error: expected type-specifier before &apos;glActiveTexture&apos;
 #define glActiveTexture                        LOOKUP_GL_FUNCTION(glActiveTexture)
                                                                   ^
/home/blino/WebKit/Source/WebCore/platform/graphics/OpenGLShims.h:257:67: error: expected initializer before &apos;glActiveTexture&apos;

...
many more errors with GL functions
...

/home/blino/WebKit/Source/WebCore/platform/graphics/OpenGLShims.h:312:67: error: &apos;openGLFunctionTable&apos; function with trailing return type not declared with &apos;auto&apos; type specifier
In file included from /usr/include/gstreamer-1.0/gst/gl/gstglapi.h:43:0,
                 from /usr/include/gstreamer-1.0/gst/gl/gstgl_fwd.h:26,
                 from /usr/include/gstreamer-1.0/gst/gl/gl.h:29,
                 from /home/blino/WebKit/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:49:
/usr/include/GLES2/gl2ext.h:740:59: error: expected &apos;)&apos; before &apos;n&apos;
 GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);

...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1209137</commentid>
    <comment_count>1</comment_count>
    <who name="Olivier Blin">olivier.blin</who>
    <bug_when>2016-07-08 09:28:30 -0700</bug_when>
    <thetext>For reference, my build command is:
./Tools/Scripts/build-webkit --gtk --cmakeargs=&quot;-DUSE_GSTREAMER_GL=ON&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1210446</commentid>
    <comment_count>2</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-07-13 08:37:04 -0700</bug_when>
    <thetext>I think Yoon had a similar issue, which was solved by changing the #include order of some files, IIRC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1212418</commentid>
    <comment_count>3</comment_count>
      <attachid>284017</attachid>
    <who name="Olivier Blin">olivier.blin</who>
    <bug_when>2016-07-19 10:29:12 -0700</bug_when>
    <thetext>Created attachment 284017
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1212694</commentid>
    <comment_count>4</comment_count>
      <attachid>284017</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-07-20 01:33:40 -0700</bug_when>
    <thetext>Comment on attachment 284017
Patch

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        OpenGLShims.h redefines GL functions.

How is OpenGLShims.h pulled in?

Not sure I like the #include move to the Base.h header, we try to keep our headers free of #includes as much as possible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1212728</commentid>
    <comment_count>5</comment_count>
    <who name="Olivier Blin">olivier.blin</who>
    <bug_when>2016-07-20 07:31:04 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Comment on attachment 284017 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=284017&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:11
&gt; &gt; +        OpenGLShims.h redefines GL functions.
&gt; 
&gt; How is OpenGLShims.h pulled in?
&gt; 
&gt; Not sure I like the #include move to the Base.h header, we try to keep our
&gt; headers free of #includes as much as possible.

I don&apos;t like it either, it would be easy to forget and break.

Here is the include flow:
  MediaPlayerPrivateGStreamerBase.cpp
  MediaPlayerPrivateGStreamerBase.h
  TextureMapperGL.h (for TextureMapperGL::Flags m_textureMapperRotationFlag)
  GraphicsContext3D.h
  ANGLEWebKitBridge.h
  OpenGLShims.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1212730</commentid>
    <comment_count>6</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-07-20 07:47:52 -0700</bug_when>
    <thetext>And the enum can&apos;t be forward-declared.

Maybe we should refactor the rotation flag code so that a member variable isn&apos;t needed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214920</commentid>
    <comment_count>7</comment_count>
      <attachid>284017</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2016-07-27 08:51:57 -0700</bug_when>
    <thetext>Comment on attachment 284017
Patch

(Removing from request queue based on comments above.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231616</commentid>
    <comment_count>8</comment_count>
      <attachid>289344</attachid>
    <who name="Miguel Gomez">magomez</who>
    <bug_when>2016-09-20 08:05:12 -0700</bug_when>
    <thetext>Created attachment 289344
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231618</commentid>
    <comment_count>9</comment_count>
      <attachid>289344</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-09-20 08:09:00 -0700</bug_when>
    <thetext>Comment on attachment 289344
Patch

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

&gt; Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:117
&gt; +        return 0;

ASSERT_NOT_REACHED() ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231626</commentid>
    <comment_count>10</comment_count>
      <attachid>289348</attachid>
    <who name="Miguel Gomez">magomez</who>
    <bug_when>2016-09-20 08:24:05 -0700</bug_when>
    <thetext>Created attachment 289348
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231675</commentid>
    <comment_count>11</comment_count>
    <who name="Olivier Blin">olivier.blin</who>
    <bug_when>2016-09-20 09:06:52 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; Created attachment 289348 [details]
&gt; Patch

I can confirm this fixes the build, thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1232009</commentid>
    <comment_count>12</comment_count>
      <attachid>289348</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-09-21 00:50:46 -0700</bug_when>
    <thetext>Comment on attachment 289348
Patch

Clearing flags on attachment: 289348

Committed r206202: &lt;http://trac.webkit.org/changeset/206202&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1232010</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-09-21 00:50:51 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>284017</attachid>
            <date>2016-07-19 10:29:12 -0700</date>
            <delta_ts>2016-09-20 08:03:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-159562-20160719192814.patch</filename>
            <type>text/plain</type>
            <size>2563</size>
            <attacher name="Olivier Blin">olivier.blin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAyODUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODczNjI1ZGRjMzY1Yjcw
Mzc1NjJkMDdmZDlkNzRmZDE2NzNkNGUwMi4uMTAyYWEyOGEwYmMyODY4NzRhZTlhOGMwNzE0MWVj
YmNkOWZlYzViYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE2LTA3LTE5ICBPbGl2
aWVyIEJsaW4gIDxvbGl2aWVyLmJsaW5Ac29mdGF0aG9tZS5jb20+CisKKyAgICAgICAgQnVpbGQg
ZmFpbHMgd2l0aCBHU1RSRUFNRVJfR0wgd2hlbiBib3RoIGRlc2t0b3AgR0wgYW5kIEdMRVMyIGFy
ZSBlbmFibGVkIGluIGdzdC1wbHVnaW5zLWJhZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU5NTYyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgV2hlbiBib3RoIGRlc2t0b3AgR0wgYW5kIEdMRVMyIGFyZSBl
bmFibGVkIGluIGdzdC1wbHVnaW5zLWJhZCwgYW5kCisgICAgICAgIHdoZW4gR1NUUkVBTUVSX0dM
IGlzIGVuYWJsZWQsIHRoZSBidWlsZCBvZiB0aGUgR1N0cmVhbWVyIG1lZGlhCisgICAgICAgIGJh
Y2tlbmQgZmFpbHMgYmVjYXVzZSBzeXN0ZW0gR0wgaGVhZGVycyBhcmUgaW5jbHVkZWQgYWZ0ZXIK
KyAgICAgICAgT3BlbkdMU2hpbXMuaCByZWRlZmluZXMgR0wgZnVuY3Rpb25zLgorCisgICAgICAg
IE1ha2Ugc3VyZSBnc3QvZ2wgZ2V0cyBpbmNsdWRlZCBiZWZvcmUgT3BlbkdMU2hpbXMuCisKKyAg
ICAgICAgTm8gbmV3IHRlc3RzLCBidWlsZCBmaXggb25seS4KKworICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJCYXNlLmNwcDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRl
R1N0cmVhbWVyQmFzZS5oOgorCiAyMDE2LTA3LTA2ICBPbGl2aWVyIEJsaW4gIDxvbGl2aWVyLmJs
aW5Ac29mdGF0aG9tZS5jb20+CiAKICAgICAgICAgRXhwb3NlIGNyb3NzT3JpZ2luIGF0dHJpYnV0
ZSBhcyBhIHN0YXRpYyBwcm9wZXJ0eSBpbiBIVE1MTWVkaWFFbGVtZW50CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2
YXRlR1N0cmVhbWVyQmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9n
c3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFzZS5jcHAKaW5kZXggNjQ5NGQw
ZTNiMTEzZmYyMmZjZDkxNjUyYTJkZTQwN2Y1NTBkYWMxNy4uMDU2ZTE3MTE5NTkxNTJmNmNlNjZl
NDQyY2U5NTAwMDFkOTAxMzIyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJhc2UuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXll
clByaXZhdGVHU3RyZWFtZXJCYXNlLmNwcApAQCAtNDUsMTAgKzQ1LDYgQEAKICNpbmNsdWRlIDxn
c3QvdmlkZW8vZ3N0dmlkZW9tZXRhLmg+CiAKICNpZiBVU0UoR1NUUkVBTUVSX0dMKQotI2RlZmlu
ZSBHU1RfVVNFX1VOU1RBQkxFX0FQSQotI2luY2x1ZGUgPGdzdC9nbC9nbC5oPgotI3VuZGVmIEdT
VF9VU0VfVU5TVEFCTEVfQVBJCi0KICNpbmNsdWRlICJHTENvbnRleHQuaCIKICNpZiBVU0UoR0xY
KQogI2luY2x1ZGUgIkdMQ29udGV4dEdMWC5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJh
c2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBs
YXllclByaXZhdGVHU3RyZWFtZXJCYXNlLmgKaW5kZXggZDZiZDkwNGJjMTQ2NGQ4Y2M1N2QwOTA3
MmNjNzE3NWY5NGU5Y2E0ZS4uNzRkZDMxNTgwNjE5MDg1MGRjM2U1NjliZThkY2FhZDkzMTQ4ZTUy
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVy
L01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFz
ZS5oCkBAIC0zNCw2ICszNCwxMSBAQAogI2luY2x1ZGUgPHd0Zi9Db25kaXRpb24uaD4KICNpbmNs
dWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CisjaWYgVVNFKEdT
VFJFQU1FUl9HTCkKKyNkZWZpbmUgR1NUX1VTRV9VTlNUQUJMRV9BUEkKKyNpbmNsdWRlIDxnc3Qv
Z2wvZ2wuaD4KKyN1bmRlZiBHU1RfVVNFX1VOU1RBQkxFX0FQSQorI2VuZGlmCiAjaWYgVVNFKFRF
WFRVUkVfTUFQUEVSX0dMKQogI2luY2x1ZGUgIlRleHR1cmVNYXBwZXJHTC5oIgogI2VuZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>289344</attachid>
            <date>2016-09-20 08:05:12 -0700</date>
            <delta_ts>2016-09-20 08:23:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-159562-20160920170225.patch</filename>
            <type>text/plain</type>
            <size>7106</size>
            <attacher name="Miguel Gomez">magomez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2MTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDQ4NjdiYTU2MWNhOWFi
YzgyNGQ4YTE2NWE2YzhlNTk1NTM3ZDRjNC4uMDZhZGJiMDVhN2I2MTFmOWM3ZDRmMWJkODczMGM5
ZDIzNTNmZmRlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE2LTA5LTIwICBNaWd1
ZWwgR29tZXogIDxtYWdvbWV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgQnVpbGQgZmFpbHMgd2l0
aCBHU1RSRUFNRVJfR0wgd2hlbiBib3RoIGRlc2t0b3AgR0wgYW5kIEdMRVMyIGFyZSBlbmFibGVk
IGluIGdzdC1wbHVnaW5zLWJhZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTU5NTYyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUmVmYWN0b3IgdmlkZW8gb3JpZW50YXRpb24gY29kZSBzbyBpbmNsdWRpbmcg
VGV4dHVyZU1hcHBlckdMIGluIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJhc2UuaAorICAg
ICAgICBpcyBub3QgbmVjZXNzYXJ5LgorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3RlbnQgdGVz
dHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0ZXhNYXBGbGFnRnJv
bU9yaWVudGF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJl
YW1lckJhc2U6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJhc2UpOgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFzZTo6cHVzaFRleHR1cmVUb0NvbXBv
c2l0b3IpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFz
ZTo6cGFpbnRUb1RleHR1cmVNYXBwZXIpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyQmFzZTo6c2V0VmlkZW9Tb3VyY2VPcmllbnRhdGlvbik6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1l
ckJhc2UuaDoKKwogMjAxNi0wOS0yMCAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5j
b20+CiAKICAgICAgICAgW1dpbl0gVW5yZXZpZXdlZCB3YXJuaW5nIGZpeC4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXJCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJCYXNlLmNwcAppbmRleCA5ZmYx
YmE2YTRlNGYzZTBjNWQ0MmMyNDBhODU4NmVlYTVjYzljOGFlLi41NmJhNTcwNGQ5YzUzYjEyNGNm
NDA5ZDBiMTU3ZWI2YmEwZThlNjY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFzZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxh
eWVyUHJpdmF0ZUdTdHJlYW1lckJhc2UuY3BwCkBAIC0xMDMsNiArMTAzLDIyIEBAIHN0YXRpYyBp
bnQgZ3JlYXRlc3RDb21tb25EaXZpc29yKGludCBhLCBpbnQgYikKICAgICByZXR1cm4gQUJTKGEp
OwogfQogCisjaWYgVVNFKFRFWFRVUkVfTUFQUEVSX0dMKQorc3RhdGljIGlubGluZSBUZXh0dXJl
TWFwcGVyR0w6OkZsYWdzIHRleE1hcEZsYWdGcm9tT3JpZW50YXRpb24oY29uc3QgSW1hZ2VPcmll
bnRhdGlvbiYgb3JpZW50YXRpb24pCit7CisgICAgc3dpdGNoIChvcmllbnRhdGlvbikgeworICAg
IGNhc2UgT3JpZ2luUmlnaHRUb3A6CisgICAgICAgIHJldHVybiBUZXh0dXJlTWFwcGVyR0w6OlNo
b3VsZFJvdGF0ZVRleHR1cmU5MDsKKyAgICBjYXNlIE9yaWdpbkJvdHRvbVJpZ2h0OgorICAgICAg
ICByZXR1cm4gVGV4dHVyZU1hcHBlckdMOjpTaG91bGRSb3RhdGVUZXh0dXJlMTgwOworICAgIGNh
c2UgT3JpZ2luTGVmdEJvdHRvbToKKyAgICAgICAgcmV0dXJuIFRleHR1cmVNYXBwZXJHTDo6U2hv
dWxkUm90YXRlVGV4dHVyZTI3MDsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gMDsKKyAg
ICB9Cit9CisjZW5kaWYKKwogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDU19USFJFQURFRCkg
JiYgVVNFKEdTVFJFQU1FUl9HTCkKIGNsYXNzIEdzdFZpZGVvRnJhbWVIb2xkZXIgOiBwdWJsaWMg
VGV4dHVyZU1hcHBlclBsYXRmb3JtTGF5ZXJCdWZmZXI6OlVubWFuYWdlZEJ1ZmZlckRhdGFIb2xk
ZXIgewogcHVibGljOgpAQCAtMTU0LDkgKzE3MCw2IEBAIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJl
YW1lckJhc2U6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJhc2UoTWVkaWFQbGF5ZXIqIHBs
CiAgICAgLCBtX2RyYXdUaW1lcihSdW5Mb29wOjptYWluKCksIHRoaXMsICZNZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXJCYXNlOjpyZXBhaW50KQogI2VuZGlmCiAgICAgLCBtX3VzaW5nRmFsbGJh
Y2tWaWRlb1NpbmsoZmFsc2UpCi0jaWYgVVNFKFRFWFRVUkVfTUFQUEVSX0dMKQotICAgICwgbV90
ZXh0dXJlTWFwcGVyUm90YXRpb25GbGFnKDApCi0jZW5kaWYKIHsKICAgICBnX211dGV4X2luaXQo
Jm1fc2FtcGxlTXV0ZXgpOwogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDU19USFJFQURFRCkK
QEAgLTQ4Niw3ICs0OTksNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJhc2U6
OnB1c2hUZXh0dXJlVG9Db21wb3NpdG9yKCkKICAgICAgICAgcmV0dXJuOwogCiAjaWYgVVNFKEdT
VFJFQU1FUl9HTCkKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8R3N0VmlkZW9GcmFtZUhvbGRlcj4gZnJh
bWVIb2xkZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPEdzdFZpZGVvRnJhbWVIb2xkZXI+KG1fc2FtcGxl
LmdldCgpLCBtX3RleHR1cmVNYXBwZXJSb3RhdGlvbkZsYWcpOworICAgIHN0ZDo6dW5pcXVlX3B0
cjxHc3RWaWRlb0ZyYW1lSG9sZGVyPiBmcmFtZUhvbGRlciA9IHN0ZDo6bWFrZV91bmlxdWU8R3N0
VmlkZW9GcmFtZUhvbGRlcj4obV9zYW1wbGUuZ2V0KCksIHRleE1hcEZsYWdGcm9tT3JpZW50YXRp
b24obV92aWRlb1NvdXJjZU9yaWVudGF0aW9uKSk7CiAgICAgaWYgKFVOTElLRUxZKCFmcmFtZUhv
bGRlci0+aXNWYWxpZCgpKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC01MDksNyArNTIyLDcgQEAg
dm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJCYXNlOjpwdXNoVGV4dHVyZVRvQ29tcG9z
aXRvcigpCiAgICAgICAgIGJ1ZmZlciA9IHN0ZDo6bWFrZV91bmlxdWU8VGV4dHVyZU1hcHBlclBs
YXRmb3JtTGF5ZXJCdWZmZXI+KFdURk1vdmUodGV4dHVyZSkpOwogICAgIH0KICAgICB1cGRhdGVU
ZXh0dXJlKGJ1ZmZlci0+dGV4dHVyZUdMKCksIHZpZGVvSW5mbyk7Ci0gICAgYnVmZmVyLT5zZXRF
eHRyYUZsYWdzKG1fdGV4dHVyZU1hcHBlclJvdGF0aW9uRmxhZyB8IChHU1RfVklERU9fSU5GT19I
QVNfQUxQSEEoJnZpZGVvSW5mbykgPyBUZXh0dXJlTWFwcGVyR0w6OlNob3VsZEJsZW5kIDogMCkp
OworICAgIGJ1ZmZlci0+c2V0RXh0cmFGbGFncyh0ZXhNYXBGbGFnRnJvbU9yaWVudGF0aW9uKG1f
dmlkZW9Tb3VyY2VPcmllbnRhdGlvbikgfCAoR1NUX1ZJREVPX0lORk9fSEFTX0FMUEhBKCZ2aWRl
b0luZm8pID8gVGV4dHVyZU1hcHBlckdMOjpTaG91bGRCbGVuZCA6IDApKTsKICAgICBtX3BsYXRm
b3JtTGF5ZXJQcm94eS0+cHVzaE5leHRCdWZmZXIoV1RGTW92ZShidWZmZXIpKTsKICNlbmRpZgog
fQpAQCAtNjQ2LDcgKzY1OSw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFz
ZTo6cGFpbnRUb1RleHR1cmVNYXBwZXIoVGV4dHVyZU1hcHBlciYgdGV4dHVyCiAgICAgICAgICAg
ICAgICAgcmV0dXJuOwogCiAgICAgICAgICAgICBzaXplID0gSW50U2l6ZShHU1RfVklERU9fSU5G
T19XSURUSCgmdmlkZW9JbmZvKSwgR1NUX1ZJREVPX0lORk9fSEVJR0hUKCZ2aWRlb0luZm8pKTsK
LSAgICAgICAgICAgIGZsYWdzID0gbV90ZXh0dXJlTWFwcGVyUm90YXRpb25GbGFnIHwgKEdTVF9W
SURFT19JTkZPX0hBU19BTFBIQSgmdmlkZW9JbmZvKSA/IFRleHR1cmVNYXBwZXJHTDo6U2hvdWxk
QmxlbmQgOiAwKTsKKyAgICAgICAgICAgIGZsYWdzID0gdGV4TWFwRmxhZ0Zyb21PcmllbnRhdGlv
bihtX3ZpZGVvU291cmNlT3JpZW50YXRpb24pIHwgKEdTVF9WSURFT19JTkZPX0hBU19BTFBIQSgm
dmlkZW9JbmZvKSA/IFRleHR1cmVNYXBwZXJHTDo6U2hvdWxkQmxlbmQgOiAwKTsKICAgICAgICAg
ICAgIHRleHR1cmUgPSB0ZXh0dXJlTWFwcGVyLmFjcXVpcmVUZXh0dXJlRnJvbVBvb2woc2l6ZSwg
R1NUX1ZJREVPX0lORk9fSEFTX0FMUEhBKCZ2aWRlb0luZm8pID8gQml0bWFwVGV4dHVyZTo6U3Vw
cG9ydHNBbHBoYSA6IEJpdG1hcFRleHR1cmU6Ok5vRmxhZyk7CiAgICAgICAgICAgICB1cGRhdGVU
ZXh0dXJlKHN0YXRpY19jYXN0PEJpdG1hcFRleHR1cmVHTCY+KCp0ZXh0dXJlKSwgdmlkZW9JbmZv
KTsKICAgICAgICAgfQpAQCAtNjY5LDcgKzY4Miw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRl
R1N0cmVhbWVyQmFzZTo6cGFpbnRUb1RleHR1cmVNYXBwZXIoVGV4dHVyZU1hcHBlciYgdGV4dHVy
CiAgICAgICAgIHJldHVybjsKIAogICAgIHVuc2lnbmVkIHRleHR1cmVJRCA9ICpyZWludGVycHJl
dF9jYXN0PHVuc2lnbmVkKj4odmlkZW9GcmFtZS5kYXRhWzBdKTsKLSAgICBUZXh0dXJlTWFwcGVy
R0w6OkZsYWdzIGZsYWdzID0gbV90ZXh0dXJlTWFwcGVyUm90YXRpb25GbGFnIHwgKEdTVF9WSURF
T19JTkZPX0hBU19BTFBIQSgmdmlkZW9JbmZvKSA/IFRleHR1cmVNYXBwZXJHTDo6U2hvdWxkQmxl
bmQgOiAwKTsKKyAgICBUZXh0dXJlTWFwcGVyR0w6OkZsYWdzIGZsYWdzID0gdGV4TWFwRmxhZ0Zy
b21PcmllbnRhdGlvbihtX3ZpZGVvU291cmNlT3JpZW50YXRpb24pIHwgKEdTVF9WSURFT19JTkZP
X0hBU19BTFBIQSgmdmlkZW9JbmZvKSA/IFRleHR1cmVNYXBwZXJHTDo6U2hvdWxkQmxlbmQgOiAw
KTsKIAogICAgIEludFNpemUgc2l6ZSA9IEludFNpemUoR1NUX1ZJREVPX0lORk9fV0lEVEgoJnZp
ZGVvSW5mbyksIEdTVF9WSURFT19JTkZPX0hFSUdIVCgmdmlkZW9JbmZvKSk7CiAgICAgVGV4dHVy
ZU1hcHBlckdMJiB0ZXh0dXJlTWFwcGVyR0wgPSByZWludGVycHJldF9jYXN0PFRleHR1cmVNYXBw
ZXJHTCY+KHRleHR1cmVNYXBwZXIpOwpAQCAtNzUzLDI2ICs3NjYsNiBAQCB2b2lkIE1lZGlhUGxh
eWVyUHJpdmF0ZUdTdHJlYW1lckJhc2U6OnNldFZpZGVvU291cmNlT3JpZW50YXRpb24oY29uc3Qg
SW1hZ2VPcmllbgogICAgICAgICByZXR1cm47CiAKICAgICBtX3ZpZGVvU291cmNlT3JpZW50YXRp
b24gPSBvcmllbnRhdGlvbjsKLQotI2lmIFVTRShURVhUVVJFX01BUFBFUl9HTCkKLSAgICBzd2l0
Y2ggKG1fdmlkZW9Tb3VyY2VPcmllbnRhdGlvbikgewotICAgIGNhc2UgRGVmYXVsdEltYWdlT3Jp
ZW50YXRpb246Ci0gICAgICAgIG1fdGV4dHVyZU1hcHBlclJvdGF0aW9uRmxhZyA9IDA7Ci0gICAg
ICAgIGJyZWFrOwotICAgIGNhc2UgT3JpZ2luUmlnaHRUb3A6Ci0gICAgICAgIG1fdGV4dHVyZU1h
cHBlclJvdGF0aW9uRmxhZyA9IFRleHR1cmVNYXBwZXJHTDo6U2hvdWxkUm90YXRlVGV4dHVyZTkw
OwotICAgICAgICBicmVhazsKLSAgICBjYXNlIE9yaWdpbkJvdHRvbVJpZ2h0OgotICAgICAgICBt
X3RleHR1cmVNYXBwZXJSb3RhdGlvbkZsYWcgPSBUZXh0dXJlTWFwcGVyR0w6OlNob3VsZFJvdGF0
ZVRleHR1cmUxODA7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgT3JpZ2luTGVmdEJvdHRvbToK
LSAgICAgICAgbV90ZXh0dXJlTWFwcGVyUm90YXRpb25GbGFnID0gVGV4dHVyZU1hcHBlckdMOjpT
aG91bGRSb3RhdGVUZXh0dXJlMjcwOwotICAgICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAg
ICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgfQotI2VuZGlm
CiB9CiAKIGJvb2wgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFzZTo6c3VwcG9ydHNGdWxs
c2NyZWVuKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJCYXNlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0
cmVhbWVyQmFzZS5oCmluZGV4IGE5YzEzODNjYzIwM2Y4M2IwZjg5OTU5MzI3NTUxYjI4NWNiMTc3
NTAuLmRlNmQyMzEyM2NkOGMwODkxN2JhMjdhNDI2OTQ5ZjQwMDJhZWVkOGMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXJCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJhc2UuaApAQCAtMzcsOSAr
MzcsNiBAQAogI2lmIFVTRShURVhUVVJFX01BUFBFUikKICNpbmNsdWRlICJUZXh0dXJlTWFwcGVy
UGxhdGZvcm1MYXllci5oIgogI2luY2x1ZGUgIlRleHR1cmVNYXBwZXJQbGF0Zm9ybUxheWVyUHJv
eHkuaCIKLSNpZiBVU0UoVEVYVFVSRV9NQVBQRVJfR0wpCi0jaW5jbHVkZSAiVGV4dHVyZU1hcHBl
ckdMLmgiCi0jZW5kaWYKICNlbmRpZgogCiB0eXBlZGVmIHN0cnVjdCBfR3N0U3RyZWFtVm9sdW1l
IEdzdFN0cmVhbVZvbHVtZTsKQEAgLTIwNCw5ICsyMDEsNiBAQCBwcm90ZWN0ZWQ6CiAjZW5kaWYK
IAogICAgIEltYWdlT3JpZW50YXRpb24gbV92aWRlb1NvdXJjZU9yaWVudGF0aW9uOwotI2lmIFVT
RShURVhUVVJFX01BUFBFUl9HTCkKLSAgICBUZXh0dXJlTWFwcGVyR0w6OkZsYWdzIG1fdGV4dHVy
ZU1hcHBlclJvdGF0aW9uRmxhZzsKLSNlbmRpZgogfTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>289348</attachid>
            <date>2016-09-20 08:24:05 -0700</date>
            <delta_ts>2016-09-21 00:50:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-159562-20160920172117.patch</filename>
            <type>text/plain</type>
            <size>7189</size>
            <attacher name="Miguel Gomez">magomez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2MTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDQ4NjdiYTU2MWNhOWFi
YzgyNGQ4YTE2NWE2YzhlNTk1NTM3ZDRjNC4uMDZhZGJiMDVhN2I2MTFmOWM3ZDRmMWJkODczMGM5
ZDIzNTNmZmRlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE2LTA5LTIwICBNaWd1
ZWwgR29tZXogIDxtYWdvbWV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgQnVpbGQgZmFpbHMgd2l0
aCBHU1RSRUFNRVJfR0wgd2hlbiBib3RoIGRlc2t0b3AgR0wgYW5kIEdMRVMyIGFyZSBlbmFibGVk
IGluIGdzdC1wbHVnaW5zLWJhZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTU5NTYyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUmVmYWN0b3IgdmlkZW8gb3JpZW50YXRpb24gY29kZSBzbyBpbmNsdWRpbmcg
VGV4dHVyZU1hcHBlckdMIGluIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJhc2UuaAorICAg
ICAgICBpcyBub3QgbmVjZXNzYXJ5LgorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3RlbnQgdGVz
dHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0ZXhNYXBGbGFnRnJv
bU9yaWVudGF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJl
YW1lckJhc2U6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJhc2UpOgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFzZTo6cHVzaFRleHR1cmVUb0NvbXBv
c2l0b3IpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFz
ZTo6cGFpbnRUb1RleHR1cmVNYXBwZXIpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyQmFzZTo6c2V0VmlkZW9Tb3VyY2VPcmllbnRhdGlvbik6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1l
ckJhc2UuaDoKKwogMjAxNi0wOS0yMCAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5j
b20+CiAKICAgICAgICAgW1dpbl0gVW5yZXZpZXdlZCB3YXJuaW5nIGZpeC4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXJCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJCYXNlLmNwcAppbmRleCA5ZmYx
YmE2YTRlNGYzZTBjNWQ0MmMyNDBhODU4NmVlYTVjYzljOGFlLi4wZDc4MGNkMzEzZWExZWRjNDg1
NTkyMTYwNGRlN2U2ZDc5YzEwZDgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFzZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxh
eWVyUHJpdmF0ZUdTdHJlYW1lckJhc2UuY3BwCkBAIC0xMDMsNiArMTAzLDI2IEBAIHN0YXRpYyBp
bnQgZ3JlYXRlc3RDb21tb25EaXZpc29yKGludCBhLCBpbnQgYikKICAgICByZXR1cm4gQUJTKGEp
OwogfQogCisjaWYgVVNFKFRFWFRVUkVfTUFQUEVSX0dMKQorc3RhdGljIGlubGluZSBUZXh0dXJl
TWFwcGVyR0w6OkZsYWdzIHRleE1hcEZsYWdGcm9tT3JpZW50YXRpb24oY29uc3QgSW1hZ2VPcmll
bnRhdGlvbiYgb3JpZW50YXRpb24pCit7CisgICAgc3dpdGNoIChvcmllbnRhdGlvbikgeworICAg
IGNhc2UgRGVmYXVsdEltYWdlT3JpZW50YXRpb246CisgICAgICAgIHJldHVybiAwOworICAgIGNh
c2UgT3JpZ2luUmlnaHRUb3A6CisgICAgICAgIHJldHVybiBUZXh0dXJlTWFwcGVyR0w6OlNob3Vs
ZFJvdGF0ZVRleHR1cmU5MDsKKyAgICBjYXNlIE9yaWdpbkJvdHRvbVJpZ2h0OgorICAgICAgICBy
ZXR1cm4gVGV4dHVyZU1hcHBlckdMOjpTaG91bGRSb3RhdGVUZXh0dXJlMTgwOworICAgIGNhc2Ug
T3JpZ2luTGVmdEJvdHRvbToKKyAgICAgICAgcmV0dXJuIFRleHR1cmVNYXBwZXJHTDo6U2hvdWxk
Um90YXRlVGV4dHVyZTI3MDsKKyAgICBkZWZhdWx0OgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNI
RUQoKTsKKyAgICB9CisKKyAgICByZXR1cm4gMDsKK30KKyNlbmRpZgorCiAjaWYgVVNFKENPT1JE
SU5BVEVEX0dSQVBISUNTX1RIUkVBREVEKSAmJiBVU0UoR1NUUkVBTUVSX0dMKQogY2xhc3MgR3N0
VmlkZW9GcmFtZUhvbGRlciA6IHB1YmxpYyBUZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllckJ1ZmZl
cjo6VW5tYW5hZ2VkQnVmZmVyRGF0YUhvbGRlciB7CiBwdWJsaWM6CkBAIC0xNTQsOSArMTc0LDYg
QEAgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFzZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0
cmVhbWVyQmFzZShNZWRpYVBsYXllciogcGwKICAgICAsIG1fZHJhd1RpbWVyKFJ1bkxvb3A6Om1h
aW4oKSwgdGhpcywgJk1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJhc2U6OnJlcGFpbnQpCiAj
ZW5kaWYKICAgICAsIG1fdXNpbmdGYWxsYmFja1ZpZGVvU2luayhmYWxzZSkKLSNpZiBVU0UoVEVY
VFVSRV9NQVBQRVJfR0wpCi0gICAgLCBtX3RleHR1cmVNYXBwZXJSb3RhdGlvbkZsYWcoMCkKLSNl
bmRpZgogewogICAgIGdfbXV0ZXhfaW5pdCgmbV9zYW1wbGVNdXRleCk7CiAjaWYgVVNFKENPT1JE
SU5BVEVEX0dSQVBISUNTX1RIUkVBREVEKQpAQCAtNDg2LDcgKzUwMyw3IEBAIHZvaWQgTWVkaWFQ
bGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFzZTo6cHVzaFRleHR1cmVUb0NvbXBvc2l0b3IoKQogICAg
ICAgICByZXR1cm47CiAKICNpZiBVU0UoR1NUUkVBTUVSX0dMKQotICAgIHN0ZDo6dW5pcXVlX3B0
cjxHc3RWaWRlb0ZyYW1lSG9sZGVyPiBmcmFtZUhvbGRlciA9IHN0ZDo6bWFrZV91bmlxdWU8R3N0
VmlkZW9GcmFtZUhvbGRlcj4obV9zYW1wbGUuZ2V0KCksIG1fdGV4dHVyZU1hcHBlclJvdGF0aW9u
RmxhZyk7CisgICAgc3RkOjp1bmlxdWVfcHRyPEdzdFZpZGVvRnJhbWVIb2xkZXI+IGZyYW1lSG9s
ZGVyID0gc3RkOjptYWtlX3VuaXF1ZTxHc3RWaWRlb0ZyYW1lSG9sZGVyPihtX3NhbXBsZS5nZXQo
KSwgdGV4TWFwRmxhZ0Zyb21PcmllbnRhdGlvbihtX3ZpZGVvU291cmNlT3JpZW50YXRpb24pKTsK
ICAgICBpZiAoVU5MSUtFTFkoIWZyYW1lSG9sZGVyLT5pc1ZhbGlkKCkpKQogICAgICAgICByZXR1
cm47CiAKQEAgLTUwOSw3ICs1MjYsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1l
ckJhc2U6OnB1c2hUZXh0dXJlVG9Db21wb3NpdG9yKCkKICAgICAgICAgYnVmZmVyID0gc3RkOjpt
YWtlX3VuaXF1ZTxUZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllckJ1ZmZlcj4oV1RGTW92ZSh0ZXh0
dXJlKSk7CiAgICAgfQogICAgIHVwZGF0ZVRleHR1cmUoYnVmZmVyLT50ZXh0dXJlR0woKSwgdmlk
ZW9JbmZvKTsKLSAgICBidWZmZXItPnNldEV4dHJhRmxhZ3MobV90ZXh0dXJlTWFwcGVyUm90YXRp
b25GbGFnIHwgKEdTVF9WSURFT19JTkZPX0hBU19BTFBIQSgmdmlkZW9JbmZvKSA/IFRleHR1cmVN
YXBwZXJHTDo6U2hvdWxkQmxlbmQgOiAwKSk7CisgICAgYnVmZmVyLT5zZXRFeHRyYUZsYWdzKHRl
eE1hcEZsYWdGcm9tT3JpZW50YXRpb24obV92aWRlb1NvdXJjZU9yaWVudGF0aW9uKSB8IChHU1Rf
VklERU9fSU5GT19IQVNfQUxQSEEoJnZpZGVvSW5mbykgPyBUZXh0dXJlTWFwcGVyR0w6OlNob3Vs
ZEJsZW5kIDogMCkpOwogICAgIG1fcGxhdGZvcm1MYXllclByb3h5LT5wdXNoTmV4dEJ1ZmZlcihX
VEZNb3ZlKGJ1ZmZlcikpOwogI2VuZGlmCiB9CkBAIC02NDYsNyArNjYzLDcgQEAgdm9pZCBNZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXJCYXNlOjpwYWludFRvVGV4dHVyZU1hcHBlcihUZXh0dXJl
TWFwcGVyJiB0ZXh0dXIKICAgICAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgICAgIHNp
emUgPSBJbnRTaXplKEdTVF9WSURFT19JTkZPX1dJRFRIKCZ2aWRlb0luZm8pLCBHU1RfVklERU9f
SU5GT19IRUlHSFQoJnZpZGVvSW5mbykpOwotICAgICAgICAgICAgZmxhZ3MgPSBtX3RleHR1cmVN
YXBwZXJSb3RhdGlvbkZsYWcgfCAoR1NUX1ZJREVPX0lORk9fSEFTX0FMUEhBKCZ2aWRlb0luZm8p
ID8gVGV4dHVyZU1hcHBlckdMOjpTaG91bGRCbGVuZCA6IDApOworICAgICAgICAgICAgZmxhZ3Mg
PSB0ZXhNYXBGbGFnRnJvbU9yaWVudGF0aW9uKG1fdmlkZW9Tb3VyY2VPcmllbnRhdGlvbikgfCAo
R1NUX1ZJREVPX0lORk9fSEFTX0FMUEhBKCZ2aWRlb0luZm8pID8gVGV4dHVyZU1hcHBlckdMOjpT
aG91bGRCbGVuZCA6IDApOwogICAgICAgICAgICAgdGV4dHVyZSA9IHRleHR1cmVNYXBwZXIuYWNx
dWlyZVRleHR1cmVGcm9tUG9vbChzaXplLCBHU1RfVklERU9fSU5GT19IQVNfQUxQSEEoJnZpZGVv
SW5mbykgPyBCaXRtYXBUZXh0dXJlOjpTdXBwb3J0c0FscGhhIDogQml0bWFwVGV4dHVyZTo6Tm9G
bGFnKTsKICAgICAgICAgICAgIHVwZGF0ZVRleHR1cmUoc3RhdGljX2Nhc3Q8Qml0bWFwVGV4dHVy
ZUdMJj4oKnRleHR1cmUpLCB2aWRlb0luZm8pOwogICAgICAgICB9CkBAIC02NjksNyArNjg2LDcg
QEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJCYXNlOjpwYWludFRvVGV4dHVyZU1h
cHBlcihUZXh0dXJlTWFwcGVyJiB0ZXh0dXIKICAgICAgICAgcmV0dXJuOwogCiAgICAgdW5zaWdu
ZWQgdGV4dHVyZUlEID0gKnJlaW50ZXJwcmV0X2Nhc3Q8dW5zaWduZWQqPih2aWRlb0ZyYW1lLmRh
dGFbMF0pOwotICAgIFRleHR1cmVNYXBwZXJHTDo6RmxhZ3MgZmxhZ3MgPSBtX3RleHR1cmVNYXBw
ZXJSb3RhdGlvbkZsYWcgfCAoR1NUX1ZJREVPX0lORk9fSEFTX0FMUEhBKCZ2aWRlb0luZm8pID8g
VGV4dHVyZU1hcHBlckdMOjpTaG91bGRCbGVuZCA6IDApOworICAgIFRleHR1cmVNYXBwZXJHTDo6
RmxhZ3MgZmxhZ3MgPSB0ZXhNYXBGbGFnRnJvbU9yaWVudGF0aW9uKG1fdmlkZW9Tb3VyY2VPcmll
bnRhdGlvbikgfCAoR1NUX1ZJREVPX0lORk9fSEFTX0FMUEhBKCZ2aWRlb0luZm8pID8gVGV4dHVy
ZU1hcHBlckdMOjpTaG91bGRCbGVuZCA6IDApOwogCiAgICAgSW50U2l6ZSBzaXplID0gSW50U2l6
ZShHU1RfVklERU9fSU5GT19XSURUSCgmdmlkZW9JbmZvKSwgR1NUX1ZJREVPX0lORk9fSEVJR0hU
KCZ2aWRlb0luZm8pKTsKICAgICBUZXh0dXJlTWFwcGVyR0wmIHRleHR1cmVNYXBwZXJHTCA9IHJl
aW50ZXJwcmV0X2Nhc3Q8VGV4dHVyZU1hcHBlckdMJj4odGV4dHVyZU1hcHBlcik7CkBAIC03NTMs
MjYgKzc3MCw2IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyQmFzZTo6c2V0Vmlk
ZW9Tb3VyY2VPcmllbnRhdGlvbihjb25zdCBJbWFnZU9yaWVuCiAgICAgICAgIHJldHVybjsKIAog
ICAgIG1fdmlkZW9Tb3VyY2VPcmllbnRhdGlvbiA9IG9yaWVudGF0aW9uOwotCi0jaWYgVVNFKFRF
WFRVUkVfTUFQUEVSX0dMKQotICAgIHN3aXRjaCAobV92aWRlb1NvdXJjZU9yaWVudGF0aW9uKSB7
Ci0gICAgY2FzZSBEZWZhdWx0SW1hZ2VPcmllbnRhdGlvbjoKLSAgICAgICAgbV90ZXh0dXJlTWFw
cGVyUm90YXRpb25GbGFnID0gMDsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBPcmlnaW5SaWdo
dFRvcDoKLSAgICAgICAgbV90ZXh0dXJlTWFwcGVyUm90YXRpb25GbGFnID0gVGV4dHVyZU1hcHBl
ckdMOjpTaG91bGRSb3RhdGVUZXh0dXJlOTA7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgT3Jp
Z2luQm90dG9tUmlnaHQ6Ci0gICAgICAgIG1fdGV4dHVyZU1hcHBlclJvdGF0aW9uRmxhZyA9IFRl
eHR1cmVNYXBwZXJHTDo6U2hvdWxkUm90YXRlVGV4dHVyZTE4MDsKLSAgICAgICAgYnJlYWs7Ci0g
ICAgY2FzZSBPcmlnaW5MZWZ0Qm90dG9tOgotICAgICAgICBtX3RleHR1cmVNYXBwZXJSb3RhdGlv
bkZsYWcgPSBUZXh0dXJlTWFwcGVyR0w6OlNob3VsZFJvdGF0ZVRleHR1cmUyNzA7Ci0gICAgICAg
IGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAg
ICAgICBicmVhazsKLSAgICB9Ci0jZW5kaWYKIH0KIAogYm9vbCBNZWRpYVBsYXllclByaXZhdGVH
U3RyZWFtZXJCYXNlOjpzdXBwb3J0c0Z1bGxzY3JlZW4oKSBjb25zdApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0
ZUdTdHJlYW1lckJhc2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJCYXNlLmgKaW5kZXggYTljMTM4M2NjMjAz
ZjgzYjBmODk5NTkzMjc1NTFiMjg1Y2IxNzc1MC4uZGU2ZDIzMTIzY2Q4YzA4OTE3YmEyN2E0MjY5
NDlmNDAwMmFlZWQ4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lckJhc2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRl
R1N0cmVhbWVyQmFzZS5oCkBAIC0zNyw5ICszNyw2IEBACiAjaWYgVVNFKFRFWFRVUkVfTUFQUEVS
KQogI2luY2x1ZGUgIlRleHR1cmVNYXBwZXJQbGF0Zm9ybUxheWVyLmgiCiAjaW5jbHVkZSAiVGV4
dHVyZU1hcHBlclBsYXRmb3JtTGF5ZXJQcm94eS5oIgotI2lmIFVTRShURVhUVVJFX01BUFBFUl9H
TCkKLSNpbmNsdWRlICJUZXh0dXJlTWFwcGVyR0wuaCIKLSNlbmRpZgogI2VuZGlmCiAKIHR5cGVk
ZWYgc3RydWN0IF9Hc3RTdHJlYW1Wb2x1bWUgR3N0U3RyZWFtVm9sdW1lOwpAQCAtMjA0LDkgKzIw
MSw2IEBAIHByb3RlY3RlZDoKICNlbmRpZgogCiAgICAgSW1hZ2VPcmllbnRhdGlvbiBtX3ZpZGVv
U291cmNlT3JpZW50YXRpb247Ci0jaWYgVVNFKFRFWFRVUkVfTUFQUEVSX0dMKQotICAgIFRleHR1
cmVNYXBwZXJHTDo6RmxhZ3MgbV90ZXh0dXJlTWFwcGVyUm90YXRpb25GbGFnOwotI2VuZGlmCiB9
OwogfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>