<?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>79169</bug_id>
          
          <creation_ts>2012-02-21 17:30:07 -0800</creation_ts>
          <short_desc>[Qt][WK2] Enable WebGL for WebKit2-Qt Linux/GLX</short_desc>
          <delta_ts>2012-10-05 11:17:04 -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>WebGL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>90881</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>84030</dependson>
    
    <dependson>86214</dependson>
    
    <dependson>90881</dependson>
    
    <dependson>93252</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Noam Rosenthal">noam</reporter>
          <assigned_to name="Zeno Albisser">zeno</assigned_to>
          <cc>hausmann</cc>
    
    <cc>jesus</cc>
    
    <cc>lauro.neto</cc>
    
    <cc>rafael.lobo</cc>
    
    <cc>zeno</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>561412</commentid>
    <comment_count>0</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-02-21 17:30:07 -0800</bug_when>
    <thetext>see subject.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>561763</commentid>
    <comment_count>1</comment_count>
    <who name="Zeno Albisser">zeno</who>
    <bug_when>2012-02-22 01:58:30 -0800</bug_when>
    <thetext>noam: i&apos;m reassigning this one to myself, i guess that is fine with you.
i already started to look into why webgl stopped working with QtTestBrowser. - As a starting point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>561903</commentid>
    <comment_count>2</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-02-22 06:00:07 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; noam: i&apos;m reassigning this one to myself, i guess that is fine with you.
&gt; i already started to look into why webgl stopped working with QtTestBrowser. - As a starting point.

Great!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>668810</commentid>
    <comment_count>3</comment_count>
      <attachid>152206</attachid>
    <who name="Zeno Albisser">zeno</who>
    <bug_when>2012-07-13 03:16:25 -0700</bug_when>
    <thetext>Created attachment 152206
patch for review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>668869</commentid>
    <comment_count>4</comment_count>
      <attachid>152206</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-07-13 04:30:32 -0700</bug_when>
    <thetext>Comment on attachment 152206
patch for review.

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

&gt; Source/WebCore/platform/graphics/qt/GraphicsContext3DQt.cpp:88
&gt; +#if OS(DARWIN)
&gt;      RefPtr&lt;GraphicsSurface&gt; m_frontBufferGraphicsSurface;
&gt;      RefPtr&lt;GraphicsSurface&gt; m_backBufferGraphicsSurface;
&gt; +#else
&gt; +    RefPtr&lt;GraphicsSurface&gt; m_graphicsSurface;
&gt; +#endif

I supposed that there are two users of GraphicsSurface: Those who need double-buffering and those who don&apos;t (they write to the surface only once and then are done with it).

I think should be encapsulated in GraphicsSurface itself (for example having a front and a back PlatformGraphicsSurface) and be a parameter of the creating API. Requiring OS(DARWIN) on the
_caller_ side feels wrong.

Is that the direction you plan to take after this patch or in another iteration?

&gt; Source/WebCore/platform/graphics/texmap/TextureMapperBackingStore.cpp:71
&gt; +    static_cast&lt;TextureMapperGL*&gt;(textureMapper)-&gt;drawTexture(m_textureID, 0, m_graphicsSurfaceSize, targetRect, adjustedTransform, opacity, mask);

Similarly here, perhaps drawTexture should be a function of GraphicsSurface that depending on the platform implementation uses drawTextureRectangleARGB or drawTexture of a TextureMapperGL parameter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>668887</commentid>
    <comment_count>5</comment_count>
    <who name="Zeno Albisser">zeno</who>
    <bug_when>2012-07-13 04:59:43 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; I supposed that there are two users of GraphicsSurface: Those who need double-buffering and those who don&apos;t (they write to the surface only once and then are done with it).
&gt; 
&gt; I think should be encapsulated in GraphicsSurface itself (for example having a front and a back PlatformGraphicsSurface) and be a parameter of the creating API. Requiring OS(DARWIN) on the
&gt; _caller_ side feels wrong.
&gt; 
&gt; Is that the direction you plan to take after this patch or in another iteration?
That&apos;s exactly what am working on right now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>669050</commentid>
    <comment_count>6</comment_count>
      <attachid>152206</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-07-13 08:10:25 -0700</bug_when>
    <thetext>Comment on attachment 152206
patch for review.

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

A bit too #ifdeffy... i&apos;d rather it would be capability based and not OS based.

&gt;&gt; Source/WebCore/platform/graphics/qt/GraphicsContext3DQt.cpp:88
&gt;&gt; +#endif
&gt; 
&gt; I supposed that there are two users of GraphicsSurface: Those who need double-buffering and those who don&apos;t (they write to the surface only once and then are done with it).
&gt; 
&gt; I think should be encapsulated in GraphicsSurface itself (for example having a front and a back PlatformGraphicsSurface) and be a parameter of the creating API. Requiring OS(DARWIN) on the
&gt; _caller_ side feels wrong.
&gt; 
&gt; Is that the direction you plan to take after this patch or in another iteration?

I&apos;d rather this be done with a runtime flag like GraphicsSurface::isDoubleBufferred, even now. Then we can keep m_front... and initialize the back one only if double buffered is not supported.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>735792</commentid>
    <comment_count>7</comment_count>
    <who name="Zeno Albisser">zeno</who>
    <bug_when>2012-10-05 11:17:04 -0700</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 90881 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>152206</attachid>
            <date>2012-07-13 03:16:25 -0700</date>
            <delta_ts>2012-07-13 08:10:25 -0700</delta_ts>
            <desc>patch for review.</desc>
            <filename>79169_20120713-121546.patch</filename>
            <type>text/plain</type>
            <size>9519</size>
            <attacher name="Zeno Albisser">zeno</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBiNDM5NWFlLi40YjBmZmRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTItMDctMTMgIFplbm8gQWxiaXNzZXIgIDx6ZW5vQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgW1F0XVtXSzJdIEVuYWJsZSBXZWJHTCBmb3IgV2ViS2l0Mi1RdCBMaW51eC9HTFguCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTE2OQorCisgICAg
ICAgIFRoaXMgcGF0Y2ggYmFzaWNhbGx5IHJldXNlcyB0aGUgR3JhcGhpY3NTdXJmYWNlIGJhc2Vk
CisgICAgICAgIFdlYkdMIGltcGxlbWVudGF0aW9uIHRoYXQgYWxyZWFkeSBleGlzdHMgZm9yIFF0
L01hYy4KKyAgICAgICAgVGhlIG1ham9yIGRpZmZlcmVuY2UgaW4gaW1wbGVtZW50YXRpb24gaXMg
dGhhdCBvbiBNYWMKKyAgICAgICAgd2UgbmVlZCB0d28gR3JhcGhpY3NTdXJmYWNlcyAoSU9TdXJm
YWNlcykgd2hlcmUgb24gTGludXgKKyAgICAgICAgd2Ugb25seSBuZWVkIGEgc2luZ2xlIEdyYXBo
aWNzU3VyZmFjZS4KKyAgICAgICAgVGhpcyBpcyB0aGUgY2FzZSBiZWNhdXNlIHRoZSBMaW51eCBH
cmFwaGljc1N1cmZhY2UgaXMKKyAgICAgICAgYmFzZWQgb24gYW4gWFdpbmRvdyB0aGF0IGFscmVh
ZHkgaGFzIGEgZnJvbnQgYW5kIGEgYmFjayBidWZmZXIuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGlj
c0NvbnRleHQzRFF0LmNwcDoKKyAgICAgICAgKEdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRFByaXZhdGU6OkdyYXBoaWNzQ29udGV4
dDNEUHJpdmF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRFByaXZhdGU6
OmNvcHlUb0dyYXBoaWNzU3VyZmFjZSk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHQzRFByaXZhdGU6OmJsaXRNdWx0aXNhbXBsZUZyYW1lYnVmZmVyQW5kUmVzdG9yZUNvbnRleHQp
OgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0RQcml2YXRlOjpjcmVhdGVHcmFw
aGljc1N1cmZhY2VzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVy
ZU1hcHBlckJhY2tpbmdTdG9yZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVy
U3VyZmFjZUJhY2tpbmdTdG9yZTo6c2V0R3JhcGhpY3NTdXJmYWNlKToKKyAgICAgICAgKFdlYkNv
cmU6OlRleHR1cmVNYXBwZXJTdXJmYWNlQmFja2luZ1N0b3JlOjpwYWludFRvVGV4dHVyZU1hcHBl
cik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJCYWNr
aW5nU3RvcmUuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoVGV4dHVyZU1hcHBlclN1
cmZhY2VCYWNraW5nU3RvcmUpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlclN1cmZh
Y2VCYWNraW5nU3RvcmU6OnNldFN1cmZhY2UpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1h
cHBlclN1cmZhY2VCYWNraW5nU3RvcmU6OlRleHR1cmVNYXBwZXJTdXJmYWNlQmFja2luZ1N0b3Jl
KToKKwogMjAxMi0wNy0xMyAgQW5kcmVpIEJ1Y3VyICA8YWJ1Y3VyQGFkb2JlLmNvbT4KIAogICAg
ICAgICBbQ1NTIFJlZ2lvbnNdIEZpeCB0aGUgbGlmZWN5Y2xlIGZvciB0aGUgZmxvdyBvYmplY3Rz
IGFuZCB0aGVpciByZW5kZXJlcnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RRdC5jcHAKaW5kZXggYzcxOTFlMy4u
NmMxZjgwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQv
R3JhcGhpY3NDb250ZXh0M0RRdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RRdC5jcHAKQEAgLTgwLDggKzgwLDEyIEBAIHB1Ymxp
YzoKICAgICBQbGF0Zm9ybUdyYXBoaWNzQ29udGV4dDNEIG1fcGxhdGZvcm1Db250ZXh0OwogI2lm
IFVTRShHUkFQSElDU19TVVJGQUNFKQogICAgIEdyYXBoaWNzU3VyZmFjZTo6RmxhZ3MgbV9zdXJm
YWNlRmxhZ3M7CisjaWYgT1MoREFSV0lOKQogICAgIFJlZlB0cjxHcmFwaGljc1N1cmZhY2U+IG1f
ZnJvbnRCdWZmZXJHcmFwaGljc1N1cmZhY2U7CiAgICAgUmVmUHRyPEdyYXBoaWNzU3VyZmFjZT4g
bV9iYWNrQnVmZmVyR3JhcGhpY3NTdXJmYWNlOworI2Vsc2UKKyAgICBSZWZQdHI8R3JhcGhpY3NT
dXJmYWNlPiBtX2dyYXBoaWNzU3VyZmFjZTsKKyNlbmRpZgogI2VuZGlmCiB9OwogCkBAIC0xMzcs
OCArMTQxLDEyIEBAIEdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6R3JhcGhpY3NDb250ZXh0M0RQ
cml2YXRlKEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0LCBICiAgICAgICAgICAgICAgICAgICAg
IHwgR3JhcGhpY3NTdXJmYWNlOjpTdXBwb3J0c1NoYXJpbmc7CiAKICAgICBpZiAoIXN1cmZhY2VT
aXplLmlzRW1wdHkoKSkgeworI2lmIE9TKERBUldJTikKICAgICAgICAgbV9mcm9udEJ1ZmZlckdy
YXBoaWNzU3VyZmFjZSA9IEdyYXBoaWNzU3VyZmFjZTo6Y3JlYXRlKHN1cmZhY2VTaXplLCBtX3N1
cmZhY2VGbGFncyk7CiAgICAgICAgIG1fYmFja0J1ZmZlckdyYXBoaWNzU3VyZmFjZSA9IEdyYXBo
aWNzU3VyZmFjZTo6Y3JlYXRlKHN1cmZhY2VTaXplLCBtX3N1cmZhY2VGbGFncyk7CisjZWxzZQor
ICAgICAgICBtX2dyYXBoaWNzU3VyZmFjZSA9IEdyYXBoaWNzU3VyZmFjZTo6Y3JlYXRlKHN1cmZh
Y2VTaXplLCBtX3N1cmZhY2VGbGFncyk7CisjZW5kaWYKICAgICB9CiAjZW5kaWYKIH0KQEAgLTIx
Nyw2ICsyMjUsNyBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6cGFpbnRUb1RleHR1
cmVNYXBwZXIoVGV4dHVyZU1hcHBlciogdGV4dHVyZU1hcHBlcgogI2lmIFVTRShHUkFQSElDU19T
VVJGQUNFKQogdWludDMyX3QgR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlOjpjb3B5VG9HcmFwaGlj
c1N1cmZhY2UoKQogeworI2lmIE9TKERBUldJTikKICAgICBpZiAoIW1fZnJvbnRCdWZmZXJHcmFw
aGljc1N1cmZhY2UgfHwgIW1fYmFja0J1ZmZlckdyYXBoaWNzU3VyZmFjZSkKICAgICAgICAgcmV0
dXJuIDA7CiAKQEAgLTIyNSw2ICsyMzQsMTUgQEAgdWludDMyX3QgR3JhcGhpY3NDb250ZXh0M0RQ
cml2YXRlOjpjb3B5VG9HcmFwaGljc1N1cmZhY2UoKQogICAgIG1fYmFja0J1ZmZlckdyYXBoaWNz
U3VyZmFjZS0+Y29weUZyb21GcmFtZWJ1ZmZlcihtX2NvbnRleHQtPm1fZmJvLCBJbnRSZWN0KDAs
IDAsIG1fY29udGV4dC0+bV9jdXJyZW50V2lkdGgsIG1fY29udGV4dC0+bV9jdXJyZW50SGVpZ2h0
KSk7CiAgICAgc3RkOjpzd2FwKG1fZnJvbnRCdWZmZXJHcmFwaGljc1N1cmZhY2UsIG1fYmFja0J1
ZmZlckdyYXBoaWNzU3VyZmFjZSk7CiAgICAgcmV0dXJuIG1fZnJvbnRCdWZmZXJHcmFwaGljc1N1
cmZhY2UtPmV4cG9ydFRva2VuKCk7CisjZWxzZQorICAgIGlmICghbV9ncmFwaGljc1N1cmZhY2Up
CisgICAgICAgIHJldHVybiAwOworCisgICAgYmxpdE11bHRpc2FtcGxlRnJhbWVidWZmZXJBbmRS
ZXN0b3JlQ29udGV4dCgpOworICAgIG1ha2VDdXJyZW50SWZOZWVkZWQoKTsKKyAgICBtX2dyYXBo
aWNzU3VyZmFjZS0+Y29weUZyb21GcmFtZWJ1ZmZlcihtX2NvbnRleHQtPm1fZmJvLCBJbnRSZWN0
KDAsIDAsIG1fY29udGV4dC0+bV9jdXJyZW50V2lkdGgsIG1fY29udGV4dC0+bV9jdXJyZW50SGVp
Z2h0KSk7CisgICAgcmV0dXJuIG1fZ3JhcGhpY3NTdXJmYWNlLT5leHBvcnRUb2tlbigpOworI2Vu
ZGlmCiB9CiAjZW5kaWYKIApAQCAtMjUxLDE1ICsyNjksMTEgQEAgdm9pZCBHcmFwaGljc0NvbnRl
eHQzRFByaXZhdGU6OmJsaXRNdWx0aXNhbXBsZUZyYW1lYnVmZmVyQW5kUmVzdG9yZUNvbnRleHQo
KSBjb24KICAgICAgICAgcmV0dXJuOwogCiAjaWYgSEFWRShRVDUpCi0gICAgY29uc3QgUU9wZW5H
TENvbnRleHQqIGN1cnJlbnRDb250ZXh0ID0gUU9wZW5HTENvbnRleHQ6OmN1cnJlbnRDb250ZXh0
KCk7Ci0gICAgUVN1cmZhY2UqIGN1cnJlbnRTdXJmYWNlID0gMDsKLSAgICBpZiAoY3VycmVudENv
bnRleHQgIT0gbV9wbGF0Zm9ybUNvbnRleHQpIHsKLSAgICAgICAgY3VycmVudFN1cmZhY2UgPSBj
dXJyZW50Q29udGV4dC0+c3VyZmFjZSgpOworICAgIGlmIChRT3BlbkdMQ29udGV4dDo6Y3VycmVu
dENvbnRleHQoKSAhPSBtX3BsYXRmb3JtQ29udGV4dCkKICAgICAgICAgbV9wbGF0Zm9ybUNvbnRl
eHQtPm1ha2VDdXJyZW50KG1fc3VyZmFjZSk7Ci0gICAgfQorCiAgICAgYmxpdE11bHRpc2FtcGxl
RnJhbWVidWZmZXIoKTsKLSAgICBpZiAoY3VycmVudFN1cmZhY2UpCi0gICAgICAgIGNvbnN0X2Nh
c3Q8UU9wZW5HTENvbnRleHQqPihjdXJyZW50Q29udGV4dCktPm1ha2VDdXJyZW50KGN1cnJlbnRT
dXJmYWNlKTsKKyAgICBtX3BsYXRmb3JtQ29udGV4dC0+bWFrZUN1cnJlbnQobV9zdXJmYWNlKTsK
ICNlbHNlCiAgICAgY29uc3QgUUdMQ29udGV4dCogY3VycmVudENvbnRleHQgPSBRR0xDb250ZXh0
OjpjdXJyZW50Q29udGV4dCgpOwogICAgIGNvbnN0IFFHTENvbnRleHQqIHdpZGdldENvbnRleHQg
PSBtX3N1cmZhY2UtPmNvbnRleHQoKTsKQEAgLTI5NCw2ICszMDgsNyBAQCBib29sIEdyYXBoaWNz
Q29udGV4dDNEUHJpdmF0ZTo6bWFrZUN1cnJlbnRJZk5lZWRlZCgpIGNvbnN0CiB2b2lkIEdyYXBo
aWNzQ29udGV4dDNEUHJpdmF0ZTo6Y3JlYXRlR3JhcGhpY3NTdXJmYWNlcyhjb25zdCBJbnRTaXpl
JiBzaXplKQogewogI2lmIFVTRShHUkFQSElDU19TVVJGQUNFKQorI2lmIE9TKERBUldJTikKICAg
ICBpZiAoc2l6ZS5pc0VtcHR5KCkpIHsKICAgICAgICAgbV9mcm9udEJ1ZmZlckdyYXBoaWNzU3Vy
ZmFjZS5jbGVhcigpOwogICAgICAgICBtX2JhY2tCdWZmZXJHcmFwaGljc1N1cmZhY2UuY2xlYXIo
KTsKQEAgLTMwMSw2ICszMTYsMTIgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQzRFByaXZhdGU6OmNy
ZWF0ZUdyYXBoaWNzU3VyZmFjZXMoY29uc3QgSW50U2l6ZSYgc2l6ZSkKICAgICAgICAgbV9mcm9u
dEJ1ZmZlckdyYXBoaWNzU3VyZmFjZSA9IEdyYXBoaWNzU3VyZmFjZTo6Y3JlYXRlKHNpemUsIG1f
c3VyZmFjZUZsYWdzKTsKICAgICAgICAgbV9iYWNrQnVmZmVyR3JhcGhpY3NTdXJmYWNlID0gR3Jh
cGhpY3NTdXJmYWNlOjpjcmVhdGUoc2l6ZSwgbV9zdXJmYWNlRmxhZ3MpOwogICAgIH0KKyNlbHNl
CisgICAgaWYgKHNpemUuaXNFbXB0eSgpKQorICAgICAgICBtX2dyYXBoaWNzU3VyZmFjZS5jbGVh
cigpOworICAgIGVsc2UKKyAgICAgICAgbV9ncmFwaGljc1N1cmZhY2UgPSBHcmFwaGljc1N1cmZh
Y2U6OmNyZWF0ZShzaXplLCBtX3N1cmZhY2VGbGFncyk7CisjZW5kaWYKICNlbmRpZgogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVy
ZU1hcHBlckJhY2tpbmdTdG9yZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy90ZXhtYXAvVGV4dHVyZU1hcHBlckJhY2tpbmdTdG9yZS5jcHAKaW5kZXggZWZhNjU5Zi4uNjZl
NzEwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFw
L1RleHR1cmVNYXBwZXJCYWNraW5nU3RvcmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyQmFja2luZ1N0b3JlLmNwcApAQCAtMzQs
NiArMzQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAjaWYgVVNFKEdSQVBISUNTX1NVUkZBQ0Up
CiB2b2lkIFRleHR1cmVNYXBwZXJTdXJmYWNlQmFja2luZ1N0b3JlOjpzZXRHcmFwaGljc1N1cmZh
Y2UodWludDMyX3QgZ3JhcGhpY3NTdXJmYWNlVG9rZW4sIGNvbnN0IEludFNpemUmIHN1cmZhY2VT
aXplKQogeworI2lmIE9TKERBUldJTikKICAgICBpZiAoZ3JhcGhpY3NTdXJmYWNlVG9rZW4gIT0g
bV9iYWNrQnVmZmVyR3JhcGhpY3NTdXJmYWNlRGF0YS5tX2dyYXBoaWNzU3VyZmFjZVRva2VuKSB7
CiAgICAgICAgIEdyYXBoaWNzU3VyZmFjZTo6RmxhZ3Mgc3VyZmFjZUZsYWdzID0gR3JhcGhpY3NT
dXJmYWNlOjpTdXBwb3J0c1RleHR1cmVUYXJnZXQKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCBHcmFwaGljc1N1cmZhY2U6OlN1cHBvcnRzU2hhcmluZzsKQEAg
LTQyLDYgKzQzLDE0IEBAIHZvaWQgVGV4dHVyZU1hcHBlclN1cmZhY2VCYWNraW5nU3RvcmU6OnNl
dEdyYXBoaWNzU3VyZmFjZSh1aW50MzJfdCBncmFwaGljc1N1cmZhCiAgICAgfQogCiAgICAgc3Rk
Ojpzd2FwKG1fYmFja0J1ZmZlckdyYXBoaWNzU3VyZmFjZURhdGEsIG1fZnJvbnRCdWZmZXJHcmFw
aGljc1N1cmZhY2VEYXRhKTsKKyNlbHNlCisgICAgaWYgKGdyYXBoaWNzU3VyZmFjZVRva2VuICE9
IG1fZ3JhcGhpY3NTdXJmYWNlVG9rZW4pIHsKKyAgICAgICAgR3JhcGhpY3NTdXJmYWNlOjpGbGFn
cyBzdXJmYWNlRmxhZ3MgPSBHcmFwaGljc1N1cmZhY2U6OlN1cHBvcnRzVGV4dHVyZVRhcmdldAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IEdyYXBoaWNzU3Vy
ZmFjZTo6U3VwcG9ydHNTaGFyaW5nOworICAgICAgICBzZXRTdXJmYWNlKEdyYXBoaWNzU3VyZmFj
ZTo6Y3JlYXRlKHN1cmZhY2VTaXplLCBzdXJmYWNlRmxhZ3MsIGdyYXBoaWNzU3VyZmFjZVRva2Vu
KSk7CisgICAgICAgIG1fZ3JhcGhpY3NTdXJmYWNlU2l6ZSA9IHN1cmZhY2VTaXplOworICAgIH0K
KyNlbmRpZgogfQogCiBQYXNzUmVmUHRyPEJpdG1hcFRleHR1cmU+IFRleHR1cmVNYXBwZXJTdXJm
YWNlQmFja2luZ1N0b3JlOjp0ZXh0dXJlKCkgY29uc3QKQEAgLTU5LDkgKzY4LDcgQEAgdm9pZCBU
ZXh0dXJlTWFwcGVyU3VyZmFjZUJhY2tpbmdTdG9yZTo6cGFpbnRUb1RleHR1cmVNYXBwZXIoVGV4
dHVyZU1hcHBlciogdGV4dHUKICAgICAvLyBUaGlzIGlzIHNwZWNpZmljIHRvIHRoZSBNYWMgaW1w
bGVtZW50YXRpb24gb2YgR3JhcGhpY3NTdXJmYWNlLiBJT1N1cmZhY2UgcmVxdWlyZXMgR0xfVEVY
VFVSRV9SRUNUQU5HTEVfQVJCIHRvIGJlIHVzZWQuCiAgICAgc3RhdGljX2Nhc3Q8VGV4dHVyZU1h
cHBlckdMKj4odGV4dHVyZU1hcHBlciktPmRyYXdUZXh0dXJlUmVjdGFuZ2xlQVJCKG1fZnJvbnRC
dWZmZXJHcmFwaGljc1N1cmZhY2VEYXRhLm1fdGV4dHVyZUlELCAwLCBtX2dyYXBoaWNzU3VyZmFj
ZVNpemUsIHRhcmdldFJlY3QsIGFkanVzdGVkVHJhbnNmb3JtLCBvcGFjaXR5LCBtYXNrKTsKICNl
bHNlCi0gICAgVU5VU0VEX1BBUkFNKHRleHR1cmVNYXBwZXIpOwotICAgIFVOVVNFRF9QQVJBTShv
cGFjaXR5KTsKLSAgICBVTlVTRURfUEFSQU0obWFzayk7CisgICAgc3RhdGljX2Nhc3Q8VGV4dHVy
ZU1hcHBlckdMKj4odGV4dHVyZU1hcHBlciktPmRyYXdUZXh0dXJlKG1fdGV4dHVyZUlELCAwLCBt
X2dyYXBoaWNzU3VyZmFjZVNpemUsIHRhcmdldFJlY3QsIGFkanVzdGVkVHJhbnNmb3JtLCBvcGFj
aXR5LCBtYXNrKTsKICNlbmRpZgogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckJhY2tpbmdTdG9yZS5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJCYWNr
aW5nU3RvcmUuaAppbmRleCAwZjcxYzQ1Li5mYjllM2YyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckJhY2tpbmdTdG9yZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFw
cGVyQmFja2luZ1N0b3JlLmgKQEAgLTQ1LDYgKzQ1LDcgQEAgcHJvdGVjdGVkOgogfTsKIAogI2lm
IFVTRShHUkFQSElDU19TVVJGQUNFKQorI2lmIE9TKERBUldJTikKIHN0cnVjdCBHcmFwaGljc1N1
cmZhY2VEYXRhIHsKICAgICB2b2lkIHNldFN1cmZhY2UoUGFzc1JlZlB0cjxHcmFwaGljc1N1cmZh
Y2U+IHN1cmZhY2UpCiAgICAgewpAQCAtNjIsNiArNjMsNyBAQCBzdHJ1Y3QgR3JhcGhpY3NTdXJm
YWNlRGF0YSB7CiAgICAgdWludDMyX3QgbV9ncmFwaGljc1N1cmZhY2VUb2tlbjsKICAgICBSZWZQ
dHI8V2ViQ29yZTo6R3JhcGhpY3NTdXJmYWNlPiBtX2dyYXBoaWNzU3VyZmFjZTsKIH07CisjZW5k
aWYKIAogY2xhc3MgVGV4dHVyZU1hcHBlclN1cmZhY2VCYWNraW5nU3RvcmUgOiBwdWJsaWMgVGV4
dHVyZU1hcHBlckJhY2tpbmdTdG9yZSB7CiBwdWJsaWM6CkBAIC03MCwxMCArNzIsMzIgQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxCaXRtYXBUZXh0dXJlPiB0ZXh0dXJlKCkgY29u
c3Q7CiAgICAgdmlydHVhbCB2b2lkIHBhaW50VG9UZXh0dXJlTWFwcGVyKFRleHR1cmVNYXBwZXIq
LCBjb25zdCBGbG9hdFJlY3QmLCBjb25zdCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCYsIGZsb2F0LCBC
aXRtYXBUZXh0dXJlKik7CiAgICAgdmlydHVhbCB+VGV4dHVyZU1hcHBlclN1cmZhY2VCYWNraW5n
U3RvcmUoKSB7IH0KKworI2lmICFPUyhEQVJXSU4pCitwcm90ZWN0ZWQ6CisgICAgdm9pZCBzZXRT
dXJmYWNlKFBhc3NSZWZQdHI8R3JhcGhpY3NTdXJmYWNlPiBzdXJmYWNlKQorICAgIHsKKyAgICAg
ICAgbV9ncmFwaGljc1N1cmZhY2UgPSBzdXJmYWNlOworICAgICAgICBtX2dyYXBoaWNzU3VyZmFj
ZVRva2VuID0gbV9ncmFwaGljc1N1cmZhY2UtPmV4cG9ydFRva2VuKCk7CisgICAgICAgIG1fdGV4
dHVyZUlEID0gbV9ncmFwaGljc1N1cmZhY2UtPmdldFRleHR1cmVJRCgpOworICAgIH0KKworcHJp
dmF0ZToKKyAgICBUZXh0dXJlTWFwcGVyU3VyZmFjZUJhY2tpbmdTdG9yZSgpCisgICAgICAgIDog
VGV4dHVyZU1hcHBlckJhY2tpbmdTdG9yZSgpCisgICAgICAgICwgbV90ZXh0dXJlSUQoMCkKKyAg
ICAgICAgLCBtX2dyYXBoaWNzU3VyZmFjZVRva2VuKDApCisgICAgICAgIHsgfQorCisgICAgdWlu
dDMyX3QgbV90ZXh0dXJlSUQ7CisgICAgdWludDMyX3QgbV9ncmFwaGljc1N1cmZhY2VUb2tlbjsK
KyAgICBSZWZQdHI8V2ViQ29yZTo6R3JhcGhpY3NTdXJmYWNlPiBtX2dyYXBoaWNzU3VyZmFjZTsK
KyNlbHNlCiBwcml2YXRlOgotICAgIEludFNpemUgbV9ncmFwaGljc1N1cmZhY2VTaXplOwogICAg
IEdyYXBoaWNzU3VyZmFjZURhdGEgbV9mcm9udEJ1ZmZlckdyYXBoaWNzU3VyZmFjZURhdGE7CiAg
ICAgR3JhcGhpY3NTdXJmYWNlRGF0YSBtX2JhY2tCdWZmZXJHcmFwaGljc1N1cmZhY2VEYXRhOwor
I2VuZGlmCisgICAgSW50U2l6ZSBtX2dyYXBoaWNzU3VyZmFjZVNpemU7CiB9OwogI2VuZGlmCiAK
</data>
<flag name="review"
          id="160839"
          type_id="1"
          status="-"
          setter="noam"
    />
          </attachment>
      

    </bug>

</bugzilla>