<?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>101071</bug_id>
          
          <creation_ts>2012-11-02 10:51:59 -0700</creation_ts>
          <short_desc>[CSS Shaders] Remove the dependency on CustomFilterValidatedProgram from CustomFilterRenderer</short_desc>
          <delta_ts>2013-05-13 09:29:59 -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>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>100905</dependson>
          <blocked>98990</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexandru Chiculita">achicu</reporter>
          <assigned_to name="Alexandru Chiculita">achicu</assigned_to>
          <cc>dino</cc>
    
    <cc>dongseong.hwang</cc>
    
    <cc>mvujovic</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>757333</commentid>
    <comment_count>0</comment_count>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2012-11-02 10:51:59 -0700</bug_when>
    <thetext>The idea is to make CustomFilterRenderer reusable in the UI process of WebKit2, so we need to remove the need of a CustomFilterValidatedProgram.

On the UI process the program is already validated and is stored as a WebCustomFilterProgram. In that case we just need a CustomFilterCompiledProgramProvider. CustomFilterValidatedProgram and WebCustomFilterProgram will both implement that interface and will be able to compile the program when needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760769</commentid>
    <comment_count>1</comment_count>
      <attachid>172822</attachid>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2012-11-07 09:31:43 -0800</bug_when>
    <thetext>Created attachment 172822
Patch V1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760891</commentid>
    <comment_count>2</comment_count>
      <attachid>172822</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2012-11-07 11:02:47 -0800</bug_when>
    <thetext>Comment on attachment 172822
Patch V1

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        used to delay the compilation of the shader until it was really needed. Instead, the FitlerEffectRenderer

Typo: Fitler

&gt; Source/WebCore/platform/graphics/filters/CustomFilterRenderer.cpp:122
&gt; +    if (!m_compiledProgram.get() || !m_compiledProgram-&gt;isInitialized())

You can just do !m_compiledProgram rather than adding .get()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>761021</commentid>
    <comment_count>3</comment_count>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2012-11-07 13:31:39 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/133803 .</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>172822</attachid>
            <date>2012-11-07 09:31:43 -0800</date>
            <delta_ts>2013-05-13 09:29:59 -0700</delta_ts>
            <desc>Patch V1</desc>
            <filename>bug101071_v1.patch</filename>
            <type>text/plain</type>
            <size>12265</size>
            <attacher name="Alexandru Chiculita">achicu</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2M2ExZjg0Li45OGViM2NiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzgg
QEAKKzIwMTItMTEtMDcgIEFsZXhhbmRydSBDaGljdWxpdGEgIDxhY2hpY3VAYWRvYmUuY29tPgor
CisgICAgICAgIFtDU1MgU2hhZGVyc10gUmVtb3ZlIHRoZSBkZXBlbmRlbmN5IG9uIEN1c3RvbUZp
bHRlclZhbGlkYXRlZFByb2dyYW0gZnJvbSBDdXN0b21GaWx0ZXJSZW5kZXJlcgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAxMDcxCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSSd2ZSByZW1vdmVkIHRoZSBu
ZWVkIHRvIGdldCBhIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0gZnJvbSBGaWx0ZXJFZmZl
Y3RSZW5kZXJlci4gSXQgd2FzIG9ubHkKKyAgICAgICAgdXNlZCB0byBkZWxheSB0aGUgY29tcGls
YXRpb24gb2YgdGhlIHNoYWRlciB1bnRpbCBpdCB3YXMgcmVhbGx5IG5lZWRlZC4gSW5zdGVhZCwg
dGhlIEZpdGxlckVmZmVjdFJlbmRlcmVyCisgICAgICAgIHdpbGwgZGlyZWN0bHkgZ2V0IHRoZSBj
b21waWxlZCBzaGFkZXIgaW4gdGhlIGNvbnN0cnVjdG9yLiBUaGUgY2FsbGVycyB0aGF0IHN0aWxs
IHdhbnQgdG8gYXZvaWQgCisgICAgICAgIGNvbXBpbGluZyB0aGUgc2hhZGVyIHVudGlsIGl0IGlz
IHJlYWxseSBuZWVkZWQgY2FuIHVzZSB0aGUgc2V0Q29tcGlsZWRQcm9ncmFtIHRvIGluamVjdCB0
aGUgc2hhZGVyCisgICAgICAgIGF0IGEgbGF0ZXIgdGltZSwgYmVmb3JlIHBhaW50aW5nLgorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cywgdGhlIGNoYW5nZSBpcyBjb3ZlcmVkIGJ5IHRoZSBjc3MzL2Zp
bHRlcnMvY3VzdG9tLyB0ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUmVuZGVyZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Q3VzdG9tRmlsdGVyUmVuZGVyZXI6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpDdXN0
b21GaWx0ZXJSZW5kZXJlcjo6Q3VzdG9tRmlsdGVyUmVuZGVyZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6Q3VzdG9tRmlsdGVyUmVuZGVyZXI6OnByZW11bHRpcGxpZWRBbHBoYSk6CisgICAgICAgIChX
ZWJDb3JlOjpDdXN0b21GaWx0ZXJSZW5kZXJlcjo6c2V0Q29tcGlsZWRQcm9ncmFtKToKKyAgICAg
ICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q3VzdG9tRmlsdGVyUmVuZGVyZXI6OnBy
ZXBhcmVGb3JEcmF3aW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkN1c3RvbUZpbHRlclJlbmRlcmVy
OjpiaW5kUHJvZ3JhbUFuZEJ1ZmZlcnMpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAg
ICAoQ3VzdG9tRmlsdGVyUmVuZGVyZXIpOgorICAgICAgICAoV2ViQ29yZTo6Q3VzdG9tRmlsdGVy
UmVuZGVyZXI6OmNvbXBpbGVkUHJvZ3JhbSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9GRUN1c3RvbUZpbHRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGRUN1c3RvbUZp
bHRlcjo6RkVDdXN0b21GaWx0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6RkVDdXN0b21GaWx0ZXI6
OnByZXBhcmVGb3JEcmF3aW5nKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0ZFQ3VzdG9tRmlsdGVyLmg6CisgICAgICAgIChGRUN1c3RvbUZpbHRlcik6CisKIDIwMTItMTEt
MDcgIEFsbGFuIFNhbmRmZWxkIEplbnNlbiAgPGFsbGFuLmplbnNlbkBkaWdpYS5jb20+CiAKICAg
ICAgICAgW1F0XSBPcGVuIGxpbmsgaW4gdGhpcyB3aW5kb3cgYWN0aW9uCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbnN0
YW50cy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21G
aWx0ZXJDb25zdGFudHMuaAppbmRleCBjZGQ0NTNhLi5lZmFlNTRjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbnN0YW50
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyQ29uc3RhbnRzLmgKQEAgLTU3LDYgKzU3LDExIEBAIGVudW0gQ3VzdG9tRmlsdGVyTWVz
aEJveFR5cGUgewogICAgIE1lc2hCb3hUeXBlQ29udGVudAogfTsKIAorZW51bSBDdXN0b21GaWx0
ZXJQcm9ncmFtVHlwZSB7CisgICAgUFJPR1JBTV9UWVBFX05PX0VMRU1FTlRfVEVYVFVSRSwKKyAg
ICBQUk9HUkFNX1RZUEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRQorfTsKKwogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gQ3VzdG9tRmlsdGVyQ29uc3RhbnRzX2gKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVy
UHJvZ3JhbUluZm8uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaAppbmRleCBjYzYwY2NhLi4xZWI2OGYyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
clByb2dyYW1JbmZvLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmls
dGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oCkBAIC0zOSwxMCArMzksNiBAQAogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKLWVudW0gQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgewotICAgIFBS
T0dSQU1fVFlQRV9OT19FTEVNRU5UX1RFWFRVUkUsCi0gICAgUFJPR1JBTV9UWVBFX0JMRU5EU19F
TEVNRU5UX1RFWFRVUkUKLX07CiAKIHN0cnVjdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGlu
Z3MgewogICAgIEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncygpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRl
cmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyUmVuZGVyZXIuY3BwCmluZGV4IDFiMzI4NTIuLjJmZGZkMmYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUmVuZGVy
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3Vz
dG9tRmlsdGVyUmVuZGVyZXIuY3BwCkBAIC0zNSwxMiArMzUsMTIgQEAKICNpbmNsdWRlICJDdXN0
b21GaWx0ZXJSZW5kZXJlci5oIgogCiAjaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0
ZXIuaCIKKyNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaCIKICNpbmNsdWRl
ICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKICNpbmNsdWRlICJDdXN0b21GaWx0ZXJNZXNoLmgi
CiAjaW5jbHVkZSAiQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgiCiAjaW5jbHVkZSAiQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyLmgiCiAjaW5jbHVkZSAiQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFy
YW1ldGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oIgogI2lu
Y2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCiAjaW5jbHVkZSAiVHJhbnNmb3JtYXRpb25NYXRy
aXguaCIKIApAQCAtNjgsMTcgKzY4LDE2IEBAIHN0YXRpYyB2b2lkIG9ydGhvZ29uYWxQcm9qZWN0
aW9uTWF0cml4KFRyYW5zZm9ybWF0aW9uTWF0cml4JiBtYXRyaXgsIGZsb2F0IGxlZnQsCiAgICAg
bWF0cml4LnNldE00NCgxLjBmKTsKIH0KIAotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJSZW5kZXJl
cj4gQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmNyZWF0ZShQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4
dDNEPiBjb250ZXh0LCBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+IHZh
bGlkYXRlZFByb2dyYW0sIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHBhcmFtZXRl
cnMsCitQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclJlbmRlcmVyPiBDdXN0b21GaWx0ZXJSZW5kZXJl
cjo6Y3JlYXRlKFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNvbnRleHQsIEN1c3RvbUZp
bHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJM
aXN0JiBwYXJhbWV0ZXJzLAogICAgIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29s
dW1ucywgQ3VzdG9tRmlsdGVyTWVzaEJveFR5cGUgbWVzaEJveFR5cGUsIEN1c3RvbUZpbHRlck1l
c2hUeXBlIG1lc2hUeXBlKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVy
UmVuZGVyZXIoY29udGV4dCwgdmFsaWRhdGVkUHJvZ3JhbSwgcGFyYW1ldGVycywgbWVzaFJvd3Ms
IG1lc2hDb2x1bW5zLCBtZXNoQm94VHlwZSwgbWVzaFR5cGUpKTsKKyAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IEN1c3RvbUZpbHRlclJlbmRlcmVyKGNvbnRleHQsIHByb2dyYW1UeXBlLCBwYXJhbWV0
ZXJzLCBtZXNoUm93cywgbWVzaENvbHVtbnMsIG1lc2hCb3hUeXBlLCBtZXNoVHlwZSkpOwogfQog
Ci1DdXN0b21GaWx0ZXJSZW5kZXJlcjo6Q3VzdG9tRmlsdGVyUmVuZGVyZXIoUGFzc1JlZlB0cjxH
cmFwaGljc0NvbnRleHQzRD4gY29udGV4dCwgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0
ZWRQcm9ncmFtPiB2YWxpZGF0ZWRQcm9ncmFtLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJM
aXN0JiBwYXJhbWV0ZXJzLAorQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OkN1c3RvbUZpbHRlclJlbmRl
cmVyKFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNvbnRleHQsIEN1c3RvbUZpbHRlclBy
b2dyYW1UeXBlIHByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBw
YXJhbWV0ZXJzLAogICAgIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucywg
Q3VzdG9tRmlsdGVyTWVzaEJveFR5cGUsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQog
ICAgIDogbV9jb250ZXh0KGNvbnRleHQpCi0gICAgLCBtX3ZhbGlkYXRlZFByb2dyYW0odmFsaWRh
dGVkUHJvZ3JhbSkKLSAgICAsIG1fY29tcGlsZWRQcm9ncmFtKDApIC8vIERvbid0IGNvbXBpbGUg
dGhlIHByb2dyYW0gdW5sZXNzIHdlIG5lZWQgdG8gcGFpbnQuCisgICAgLCBtX3Byb2dyYW1UeXBl
KHByb2dyYW1UeXBlKQogICAgICwgbV9wYXJhbWV0ZXJzKHBhcmFtZXRlcnMpCiAgICAgLCBtX21l
c2hSb3dzKG1lc2hSb3dzKQogICAgICwgbV9tZXNoQ29sdW1ucyhtZXNoQ29sdW1ucykKQEAgLTky
LDcgKzkxLDcgQEAgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6On5DdXN0b21GaWx0ZXJSZW5kZXJlcigp
CiAKIGJvb2wgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OnByZW11bHRpcGxpZWRBbHBoYSgpIGNvbnN0
CiB7Ci0gICAgcmV0dXJuIG1fdmFsaWRhdGVkUHJvZ3JhbS0+cHJvZ3JhbUluZm8oKS5wcm9ncmFt
VHlwZSgpID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJFOworICAgIHJldHVy
biBtX3Byb2dyYW1UeXBlID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJFOwog
fQogCiBib29sIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpwcm9ncmFtTmVlZHNJbnB1dFRleHR1cmUo
KSBjb25zdApAQCAtMTEyLDI3ICsxMTEsMjAgQEAgdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6
ZHJhdyhQbGF0Zm9ybTNET2JqZWN0IGlucHV0VGV4dHVyZSwgY29uc3QgSW50U2l6ZSYgc2kKICAg
ICB1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGVzKCk7CiB9CiAKK3ZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVy
ZXI6OnNldENvbXBpbGVkUHJvZ3JhbShQYXNzUmVmUHRyPEN1c3RvbUZpbHRlckNvbXBpbGVkUHJv
Z3JhbT4gY29tcGlsZWRQcm9ncmFtKQoreworICAgIG1fY29tcGlsZWRQcm9ncmFtID0gY29tcGls
ZWRQcm9ncmFtOworfQorCiBib29sIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpwcmVwYXJlRm9yRHJh
d2luZygpCiB7CiAgICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJlbnQoKTsKLSAgICBpbml0
aWFsaXplQ29tcGlsZWRQcm9ncmFtSWZOZWVkZWQoKTsKLQotICAgIC8vIElmIHRoZSBzaGFkZXIg
aGFkIGNvbXBpbGVyIGVycm9ycyB3ZSBjYW5ub3QgZHJhdyBhbnl0aGluZy4KLSAgICBpZiAoIW1f
Y29tcGlsZWRQcm9ncmFtLT5pc0luaXRpYWxpemVkKCkpCisgICAgaWYgKCFtX2NvbXBpbGVkUHJv
Z3JhbS5nZXQoKSB8fCAhbV9jb21waWxlZFByb2dyYW0tPmlzSW5pdGlhbGl6ZWQoKSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwotCiAgICAgaW5pdGlhbGl6ZU1lc2hJZk5lZWRlZCgpOwogICAgIHJl
dHVybiB0cnVlOwogfQogCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjppbml0aWFsaXplQ29t
cGlsZWRQcm9ncmFtSWZOZWVkZWQoKQotewotICAgIGlmIChtX2NvbXBpbGVkUHJvZ3JhbS5nZXQo
KSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgbV9jb21waWxlZFByb2dyYW0gPSBtX3ZhbGlkYXRl
ZFByb2dyYW0tPmNvbXBpbGVkUHJvZ3JhbSgpOwotfQotCiB2b2lkIEN1c3RvbUZpbHRlclJlbmRl
cmVyOjppbml0aWFsaXplTWVzaElmTmVlZGVkKCkKIHsKICAgICBpZiAobV9tZXNoLmdldCgpKQpA
QCAtMjQxLDcgKzIzMyw3IEBAIHZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9ncmFt
QW5kQnVmZmVycyhQbGF0Zm9ybTNET2JqZWN0IGlucHV0VGV4dHVyZSkKIAogICAgIGlmIChwcm9n
cmFtTmVlZHNJbnB1dFRleHR1cmUoKSkgewogICAgICAgICAvLyBXZSBzaG91bGQgYmUgYmluZGlu
ZyB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZSBzYW1wbGVyIG9ubHkgaWYgdGhlIGF1dGhvciBpcyB1
c2luZyB0aGUgQ1NTIG1peCBmdW5jdGlvbi4KLSAgICAgICAgQVNTRVJUKG1fdmFsaWRhdGVkUHJv
Z3JhbS0+cHJvZ3JhbUluZm8oKS5wcm9ncmFtVHlwZSgpID09IFBST0dSQU1fVFlQRV9CTEVORFNf
RUxFTUVOVF9URVhUVVJFKTsKKyAgICAgICAgQVNTRVJUKG1fcHJvZ3JhbVR5cGUgPT0gUFJPR1JB
TV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUpOwogICAgICAgICBBU1NFUlQobV9jb21waWxl
ZFByb2dyYW0tPnNhbXBsZXJMb2NhdGlvbigpICE9IC0xKTsKIAogICAgICAgICBtX2NvbnRleHQt
PmFjdGl2ZVRleHR1cmUoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkUwKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUmVu
ZGVyZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyUmVuZGVyZXIuaAppbmRleCBjMDYyMmVlLi45NjJlYTY5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVy
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21G
aWx0ZXJSZW5kZXJlci5oCkBAIC0xLDQgKzEsNSBAQAogLyoKKyAqIENvcHlyaWdodCAoQykgMjAx
MiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENv
cHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAxMiBDb21wYW55IDEwMCwgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogICoKQEAgLTQ3LDEyICs0OCwxMSBAQCBjbGFzcyBDdXN0b21GaWx0ZXJD
b21waWxlZFByb2dyYW07CiBjbGFzcyBDdXN0b21GaWx0ZXJNZXNoOwogY2xhc3MgQ3VzdG9tRmls
dGVyTnVtYmVyUGFyYW1ldGVyOwogY2xhc3MgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVy
OwotY2xhc3MgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTsKIGNsYXNzIEdyYXBoaWNzQ29u
dGV4dDNEOwogCiBjbGFzcyBDdXN0b21GaWx0ZXJSZW5kZXJlciA6IHB1YmxpYyBSZWZDb3VudGVk
PEN1c3RvbUZpbHRlclJlbmRlcmVyPiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
Q3VzdG9tRmlsdGVyUmVuZGVyZXI+IGNyZWF0ZShQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNE
PiwgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiwgY29uc3QgQ3VzdG9t
RmlsdGVyUGFyYW1ldGVyTGlzdCYsCisgICAgc3RhdGljIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVy
UmVuZGVyZXI+IGNyZWF0ZShQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiwgQ3VzdG9tRmls
dGVyUHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmLAogICAgICAg
ICB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1l
c2hCb3hUeXBlLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSk7CiAgICAgfkN1c3RvbUZpbHRlclJlbmRl
cmVyKCk7CiAKQEAgLTYzLDggKzYzLDExIEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZHJhdyhQbGF0
Zm9ybTNET2JqZWN0LCBjb25zdCBJbnRTaXplJik7CiAKKyAgICBDdXN0b21GaWx0ZXJDb21waWxl
ZFByb2dyYW0qIGNvbXBpbGVkUHJvZ3JhbSgpIGNvbnN0IHsgcmV0dXJuIG1fY29tcGlsZWRQcm9n
cmFtLmdldCgpOyB9CisgICAgdm9pZCBzZXRDb21waWxlZFByb2dyYW0oUGFzc1JlZlB0cjxDdXN0
b21GaWx0ZXJDb21waWxlZFByb2dyYW0+KTsKKwogcHJpdmF0ZToKLSAgICBDdXN0b21GaWx0ZXJS
ZW5kZXJlcihQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiwgUGFzc1JlZlB0cjxDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYs
CisgICAgQ3VzdG9tRmlsdGVyUmVuZGVyZXIoUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4s
IEN1c3RvbUZpbHRlclByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0
JiwKICAgICAgICAgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0
b21GaWx0ZXJNZXNoQm94VHlwZSwgQ3VzdG9tRmlsdGVyTWVzaFR5cGUpOwogCiAgICAgdm9pZCBp
bml0aWFsaXplQ29tcGlsZWRQcm9ncmFtSWZOZWVkZWQoKTsKQEAgLTgwLDggKzgzLDggQEAgcHJp
dmF0ZToKICAgICB2b2lkIHVuYmluZFZlcnRleEF0dHJpYnV0ZXMoKTsKIAogICAgIFJlZlB0cjxH
cmFwaGljc0NvbnRleHQzRD4gbV9jb250ZXh0OwotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJWYWxp
ZGF0ZWRQcm9ncmFtPiBtX3ZhbGlkYXRlZFByb2dyYW07CiAgICAgUmVmUHRyPEN1c3RvbUZpbHRl
ckNvbXBpbGVkUHJvZ3JhbT4gbV9jb21waWxlZFByb2dyYW07CisgICAgQ3VzdG9tRmlsdGVyUHJv
Z3JhbVR5cGUgbV9wcm9ncmFtVHlwZTsgICAgCiAgICAgUmVmUHRyPEN1c3RvbUZpbHRlck1lc2g+
IG1fbWVzaDsKICAgICBJbnRTaXplIG1fY29udGV4dFNpemU7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5j
cHAKaW5kZXggNDVhMTEwZi4uMTVjNTBhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5jcHAKQEAgLTQ4
LDcgKzQ4LDcgQEAgRkVDdXN0b21GaWx0ZXI6OkZFQ3VzdG9tRmlsdGVyKEZpbHRlciogZmlsdGVy
LCBQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjb24KICAgICB1bnNpZ25lZCBtZXNoUm93
cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1lc2hCb3hUeXBlIG1lc2hCb3hU
eXBlLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKICAgICA6IEZpbHRlckVmZmVjdChm
aWx0ZXIpCiAgICAgLCBtX2NvbnRleHQoY29udGV4dCkKLSAgICAsIG1fY3VzdG9tRmlsdGVyUmVu
ZGVyZXIoQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmNyZWF0ZShtX2NvbnRleHQsIHZhbGlkYXRlZFBy
b2dyYW0sIHBhcmFtZXRlcnMsIG1lc2hSb3dzLCBtZXNoQ29sdW1ucywgbWVzaEJveFR5cGUsIG1l
c2hUeXBlKSkKKyAgICAsIG1fdmFsaWRhdGVkUHJvZ3JhbSh2YWxpZGF0ZWRQcm9ncmFtKQogICAg
ICwgbV9pbnB1dFRleHR1cmUoMCkKICAgICAsIG1fZnJhbWVCdWZmZXIoMCkKICAgICAsIG1fZGVw
dGhCdWZmZXIoMCkKQEAgLTU4LDYgKzU4LDggQEAgRkVDdXN0b21GaWx0ZXI6OkZFQ3VzdG9tRmls
dGVyKEZpbHRlciogZmlsdGVyLCBQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjb24KICAg
ICAsIG1fbXVsdGlzYW1wbGVSZW5kZXJCdWZmZXIoMCkKICAgICAsIG1fbXVsdGlzYW1wbGVEZXB0
aEJ1ZmZlcigwKQogeworICAgIC8vIFdlIHdpbGwgbm90IHBhc3MgYSBDdXN0b21GaWx0ZXJDb21w
aWxlZFByb2dyYW0gaGVyZSwgYXMgd2Ugb25seSB3YW50IHRvIGNvbXBpbGUgaXQgd2hlbiB3ZSBh
Y3R1YWxseSBuZWVkIGl0IGluIHRoZSBmaXJzdCBwYWludC4KKyAgICBtX2N1c3RvbUZpbHRlclJl
bmRlcmVyID0gQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmNyZWF0ZShtX2NvbnRleHQsIG1fdmFsaWRh
dGVkUHJvZ3JhbS0+cHJvZ3JhbUluZm8oKS5wcm9ncmFtVHlwZSgpLCBwYXJhbWV0ZXJzLCBtZXNo
Um93cywgbWVzaENvbHVtbnMsIG1lc2hCb3hUeXBlLCBtZXNoVHlwZSk7CiB9CiAKIFBhc3NSZWZQ
dHI8RkVDdXN0b21GaWx0ZXI+IEZFQ3VzdG9tRmlsdGVyOjpjcmVhdGUoRmlsdGVyKiBmaWx0ZXIs
IFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNvbnRleHQsIFBhc3NSZWZQdHI8Q3VzdG9t
RmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gdmFsaWRhdGVkUHJvZ3JhbSwgY29uc3QgQ3VzdG9tRmls
dGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVycywKQEAgLTE1NCw2ICsxNTYsMTAgQEAgYm9vbCBG
RUN1c3RvbUZpbHRlcjo6cHJlcGFyZUZvckRyYXdpbmcoKQogewogICAgIG1fY29udGV4dC0+bWFr
ZUNvbnRleHRDdXJyZW50KCk7CiAKKyAgICAvLyBMYXppbHkgaW5qZWN0IHRoZSBjb21waWxlZCBw
cm9ncmFtIGludG8gdGhlIEN1c3RvbUZpbHRlclJlbmRlcmVyLgorICAgIGlmICghbV9jdXN0b21G
aWx0ZXJSZW5kZXJlci0+Y29tcGlsZWRQcm9ncmFtKCkpCisgICAgICAgIG1fY3VzdG9tRmlsdGVy
UmVuZGVyZXItPnNldENvbXBpbGVkUHJvZ3JhbShtX3ZhbGlkYXRlZFByb2dyYW0tPmNvbXBpbGVk
UHJvZ3JhbSgpKTsKKwogICAgIGlmICghbV9jdXN0b21GaWx0ZXJSZW5kZXJlci0+cHJlcGFyZUZv
ckRyYXdpbmcoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmgKaW5k
ZXggNDRlNjhmMS4uYTE5YjQ4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuaApAQCAtODcsNiArODcsNyBA
QCBwcml2YXRlOgogICAgIHZvaWQgZGVsZXRlUmVuZGVyQnVmZmVycygpOwogCiAgICAgUmVmUHRy
PEdyYXBoaWNzQ29udGV4dDNEPiBtX2NvbnRleHQ7CisgICAgUmVmUHRyPEN1c3RvbUZpbHRlclZh
bGlkYXRlZFByb2dyYW0+IG1fdmFsaWRhdGVkUHJvZ3JhbTsKICAgICBSZWZQdHI8Q3VzdG9tRmls
dGVyUmVuZGVyZXI+IG1fY3VzdG9tRmlsdGVyUmVuZGVyZXI7CiAgICAgSW50U2l6ZSBtX2NvbnRl
eHRTaXplOwogCg==
</data>
<flag name="review"
          id="187286"
          type_id="1"
          status="+"
          setter="dino"
    />
    <flag name="commit-queue"
          id="187287"
          type_id="3"
          status="-"
          setter="achicu"
    />
          </attachment>
      

    </bug>

</bugzilla>