<?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>143827</bug_id>
          
          <creation_ts>2015-04-16 06:14:41 -0700</creation_ts>
          <short_desc>[GStreamer] improve video rendering stats</short_desc>
          <delta_ts>2020-01-14 06:53:15 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Platform</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Philippe Normand">pnormand</reporter>
          <assigned_to name="Philippe Normand">pnormand</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>calvaris</cc>
    
    <cc>cgarcia</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gustavo</cc>
    
    <cc>jer.noble</cc>
    
    <cc>menard</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>slomo</cc>
    
    <cc>vjaquez</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1085898</commentid>
    <comment_count>0</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2015-04-16 06:14:41 -0700</bug_when>
    <thetext>Since we know exactly which samples are rendered by the player we could easily gather statistics about dropped frames and rendered frames. Right now we depend on the fpsdisplaysink for that...

Instead we could:

1) before replacing the sample stored in player, check if it was rendered by fetching some bool variable from its qdata
2) when rendering set the bool variable in qdata to TRUE</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606309</commentid>
    <comment_count>1</comment_count>
      <attachid>387635</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-01-14 01:45:44 -0800</bug_when>
    <thetext>Created attachment 387635
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606332</commentid>
    <comment_count>2</comment_count>
      <attachid>387635</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2020-01-14 03:39:59 -0800</bug_when>
    <thetext>Comment on attachment 387635
Patch

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

&gt; Source/WebCore/platform/graphics/gstreamer/GLVideoSinkGStreamer.cpp:314
&gt; +        break;

We can maybe ASSERT_NOT_REACHED here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606366</commentid>
    <comment_count>3</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-01-14 06:52:41 -0800</bug_when>
    <thetext>Committed r254507: &lt;https://trac.webkit.org/changeset/254507&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606367</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-01-14 06:53:15 -0800</bug_when>
    <thetext>&lt;rdar://problem/58566720&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>387635</attachid>
            <date>2020-01-14 01:45:44 -0800</date>
            <delta_ts>2020-01-14 03:39:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143827-20200114094542.patch</filename>
            <type>text/plain</type>
            <size>10221</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0NDI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDRkYWU5MzA1MjI1MDMx
OWY2Y2UwYmZjZTFkYjUyNTFkYWY3YmVkOS4uNWYxMzgyMjFlZDYzYjUzYjZmYzMwYzBhYjRlYTJh
MGIwMWM4YjRjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIwLTAxLTE0ICBQaGls
aXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVy
XSBpbXByb3ZlIHZpZGVvIHJlbmRlcmluZyBzdGF0cworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQzODI3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgRW5hYmxlIGZwc2Rpc3BsYXlzaW5rIHVuY29uZGl0aW9u
YWxseSBmb3Igc3RhdGlzdGljcyByZXRyaWV2YWwuIElmCisgICAgICAgIEdTdHJlYW1lciAxLjE4
IChjdXJyZW50IGdpdCBtYXN0ZXIgaXMgMS4xNykgaXMgZGV0ZWN0ZWQgYXQgcnVudGltZQorICAg
ICAgICB3ZSBjYW4gc2ltcGx5IHVzZSB0aGUgbmV3IGJhc2VzaW5rIGBzdGF0c2AgcHJvcGVydHks
IHNvIHByb3h5IGl0CisgICAgICAgIGluIG91ciBjdXN0b20gR0wgc2luay4gVGhlIEVOQUJMRShN
RURJQV9TVEFUSVNUSUNTKSBmZWF0dXJlIHNlZW1zCisgICAgICAgIHRvIGhhdmUgYmVlbiBkZXBy
ZWNhdGVkIGluIGZhdm9yIG9mIHRoZQorICAgICAgICBIVE1MVmlkZW9FbGVtZW50LmdldFZpZGVv
UGxheWJhY2tRdWFsaXR5KCkgaW50ZXJmYWNlIHNvIHJlbW92ZSB0aGUKKyAgICAgICAgdW51c2Vk
IGNvcnJlc3BvbmRpbmcgTWVkaWFQbGF5ZXJQcml2YXRlIG1ldGhvZCBvdmVycmlkZXMuCisKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR0xWaWRlb1NpbmtHU3RyZWFtZXIu
Y3BwOgorICAgICAgICAod2ViS2l0R0xWaWRlb1NpbmtHZXRQcm9wZXJ0eSk6CisgICAgICAgICh3
ZWJraXRfZ2xfdmlkZW9fc2lua19jbGFzc19pbml0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6Y3JlYXRlVmlkZW9TaW5rKToK
KyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6dmlkZW9QbGF5
YmFja1F1YWxpdHlNZXRyaWNzKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0
ZUdTdHJlYW1lcjo6ZGVjb2RlZEZyYW1lQ291bnQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAo
V2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpkcm9wcGVkRnJhbWVDb3VudCBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXI6OmF1ZGlvRGVjb2RlZEJ5dGVDb3VudCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnZpZGVvRGVjb2RlZEJ5dGVDb3Vu
dCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVy
L01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oOgorCiAyMDIwLTAxLTEzICBBbnR0aSBLb2l2
aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBbTEZDXVtJbnRlZ3JhdGlvbl0gaW1w
b3J0ZWQvYmxpbmsvZmFzdC9zaGFwZXMvY3Jhc2gtY2F1c2VkLWJ5LWRpcnR5aW5nLWEtc2hhcGUt
d2hpbGUtY29tcHV0aW5nLWl0LXJlcXVpcmVzLWEtbG9uZy1maWxlbmFtZS10by1jcmFzaC5odG1s
IGNyYXNoZXMgb24gaU9TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvR0xWaWRlb1NpbmtHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dMVmlkZW9TaW5rR1N0cmVhbWVyLmNwcAppbmRl
eCBjYzU5MGI4MzkyZTEyZDdjNTM1Y2U0ZTNhOGFkM2RhNTZkMDgwZGRlLi4zY2Q5NmY4NmVkY2Ri
ZGY2MWFkNWNmNzE3ZTc0NDdiNTcxNDgwMTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR0xWaWRlb1NpbmtHU3RyZWFtZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9HTFZpZGVvU2lua0dT
dHJlYW1lci5jcHAKQEAgLTU4LDYgKzU4LDEyIEBACiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3Jl
OwogCitlbnVtIHsKKyAgICBQUk9QXzAsCisgICAgUFJPUF9TVEFUUywKKyAgICBQUk9QX0xBU1QK
K307CisKIHN0cnVjdCBfV2ViS2l0R0xWaWRlb1NpbmtQcml2YXRlIHsKICAgICBHUmVmUHRyPEdz
dEVsZW1lbnQ+IGFwcFNpbms7CiAgICAgR1JlZlB0cjxHc3RHTENvbnRleHQ+IGdsQ29udGV4dDsK
QEAgLTI5MSw2ICsyOTcsMjQgQEAgc3RhdGljIEdzdFN0YXRlQ2hhbmdlUmV0dXJuIHdlYktpdEdM
VmlkZW9TaW5rQ2hhbmdlU3RhdGUoR3N0RWxlbWVudCogZWxlbWVudCwgR3MKICAgICByZXR1cm4g
R1NUX0VMRU1FTlRfQ0xBU1MocGFyZW50X2NsYXNzKS0+Y2hhbmdlX3N0YXRlKGVsZW1lbnQsIHRy
YW5zaXRpb24pOwogfQogCitzdGF0aWMgdm9pZCB3ZWJLaXRHTFZpZGVvU2lua0dldFByb3BlcnR5
KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcGVydHlJZCwgR1ZhbHVlKiB2YWx1ZSwgR1BhcmFt
U3BlYyogcGFyYW1TcGVjKQoreworICAgIFdlYktpdEdMVmlkZW9TaW5rKiBzaW5rID0gV0VCS0lU
X0dMX1ZJREVPX1NJTksob2JqZWN0KTsKKworICAgIHN3aXRjaCAocHJvcGVydHlJZCkgeworICAg
IGNhc2UgUFJPUF9TVEFUUzoKKyAgICAgICAgaWYgKHdlYmtpdEdzdENoZWNrVmVyc2lvbigxLCAx
NywgMCkpIHsKKyAgICAgICAgICAgIEdVbmlxdWVPdXRQdHI8R3N0U3RydWN0dXJlPiBzdGF0czsK
KyAgICAgICAgICAgIGdfb2JqZWN0X2dldChzaW5rLT5wcml2LT5hcHBTaW5rLmdldCgpLCAic3Rh
dHMiLCAmc3RhdHMub3V0UHRyKCksIG51bGxwdHIpOworICAgICAgICAgICAgZ3N0X3ZhbHVlX3Nl
dF9zdHJ1Y3R1cmUodmFsdWUsIHN0YXRzLmdldCgpKTsKKyAgICAgICAgfQorICAgICAgICBicmVh
azsKKyAgICBkZWZhdWx0OgorICAgICAgICBHX09CSkVDVF9XQVJOX0lOVkFMSURfUFJPUEVSVFlf
SUQob2JqZWN0LCBwcm9wZXJ0eUlkLCBwYXJhbVNwZWMpOworICAgICAgICBicmVhazsKKyAgICB9
Cit9CisKIHN0YXRpYyB2b2lkIHdlYmtpdF9nbF92aWRlb19zaW5rX2NsYXNzX2luaXQoV2ViS2l0
R0xWaWRlb1NpbmtDbGFzcyoga2xhc3MpCiB7CiAgICAgR09iamVjdENsYXNzKiBvYmplY3RDbGFz
cyA9IEdfT0JKRUNUX0NMQVNTKGtsYXNzKTsKQEAgLTI5OCwxMCArMzIyLDE0IEBAIHN0YXRpYyB2
b2lkIHdlYmtpdF9nbF92aWRlb19zaW5rX2NsYXNzX2luaXQoV2ViS2l0R0xWaWRlb1NpbmtDbGFz
cyoga2xhc3MpCiAKICAgICBvYmplY3RDbGFzcy0+Y29uc3RydWN0ZWQgPSB3ZWJLaXRHTFZpZGVv
U2lua0NvbnN0cnVjdGVkOwogICAgIG9iamVjdENsYXNzLT5maW5hbGl6ZSA9IHdlYktpdEdMVmlk
ZW9TaW5rRmluYWxpemU7CisgICAgb2JqZWN0Q2xhc3MtPmdldF9wcm9wZXJ0eSA9IHdlYktpdEdM
VmlkZW9TaW5rR2V0UHJvcGVydHk7CiAKICAgICBnc3RfZWxlbWVudF9jbGFzc19hZGRfcGFkX3Rl
bXBsYXRlKGVsZW1lbnRDbGFzcywgZ3N0X3N0YXRpY19wYWRfdGVtcGxhdGVfZ2V0KCZzaW5rVGVt
cGxhdGUpKTsKICAgICBnc3RfZWxlbWVudF9jbGFzc19zZXRfc3RhdGljX21ldGFkYXRhKGVsZW1l
bnRDbGFzcywgIldlYktpdCBHTCB2aWRlbyBzaW5rIiwgIlNpbmsvVmlkZW8iLCAiUmVuZGVycyB2
aWRlbyIsICJQaGlsaXBwZSBOb3JtYW5kIDxwaGlsbkBpZ2FsaWEuY29tPiIpOwogCisgICAgZ19v
YmplY3RfY2xhc3NfaW5zdGFsbF9wcm9wZXJ0eShvYmplY3RDbGFzcywgUFJPUF9TVEFUUywgZ19w
YXJhbV9zcGVjX2JveGVkKCJzdGF0cyIsICJTdGF0aXN0aWNzIiwKKyAgICAgICAgIlNpbmsgU3Rh
dGlzdGljcyIsIEdTVF9UWVBFX1NUUlVDVFVSRSwgc3RhdGljX2Nhc3Q8R1BhcmFtRmxhZ3M+KEdf
UEFSQU1fUkVBREFCTEUgfCBHX1BBUkFNX1NUQVRJQ19TVFJJTkdTKSkpOworCiAgICAgZWxlbWVu
dENsYXNzLT5jaGFuZ2Vfc3RhdGUgPSBHU1RfREVCVUdfRlVOQ1BUUih3ZWJLaXRHTFZpZGVvU2lu
a0NoYW5nZVN0YXRlKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRl
R1N0cmVhbWVyLmNwcAppbmRleCAyZGVkMjAzODc5MTE4Y2E2YmUyZmQ5NDg3ZmJhNDVlNzU0N2Mw
ODNlLi5hZWZkMmYwN2FjNzg3OWM0MDdmYTIyMzgzMjRjODFjOGExOGEyMjg4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcApAQCAtMzUwMSwyOCAr
MzUwMSwyNyBAQCBHc3RFbGVtZW50KiBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmNyZWF0
ZVZpZGVvU2luaygpCiAgICAgfQogCiAgICAgR3N0RWxlbWVudCogdmlkZW9TaW5rID0gbnVsbHB0
cjsKLSNpZiBFTkFCTEUoTUVESUFfU1RBVElTVElDUykKLSAgICBtX2Zwc1NpbmsgPSBnc3RfZWxl
bWVudF9mYWN0b3J5X21ha2UoImZwc2Rpc3BsYXlzaW5rIiwgInNpbmsiKTsKLSAgICBpZiAobV9m
cHNTaW5rKSB7Ci0gICAgICAgIGdfb2JqZWN0X3NldChtX2Zwc1NpbmsuZ2V0KCksICJzaWxlbnQi
LCBUUlVFICwgbnVsbHB0cik7Ci0KLSAgICAgICAgLy8gVHVybiBvZmYgdGV4dCBvdmVybGF5IHVu
bGVzcyB0cmFjaW5nIGlzIGVuYWJsZWQuCi0gICAgICAgIGlmIChnc3RfZGVidWdfY2F0ZWdvcnlf
Z2V0X3RocmVzaG9sZCh3ZWJraXRfbWVkaWFfcGxheWVyX2RlYnVnKSA8IEdTVF9MRVZFTF9UUkFD
RSkKLSAgICAgICAgICAgIGdfb2JqZWN0X3NldChtX2Zwc1NpbmsuZ2V0KCksICJ0ZXh0LW92ZXJs
YXkiLCBGQUxTRSAsIG51bGxwdHIpOwotCi0gICAgICAgIGlmIChnX29iamVjdF9jbGFzc19maW5k
X3Byb3BlcnR5KEdfT0JKRUNUX0dFVF9DTEFTUyhtX2Zwc1NpbmsuZ2V0KCkpLCAidmlkZW8tc2lu
ayIpKSB7Ci0gICAgICAgICAgICBnX29iamVjdF9zZXQobV9mcHNTaW5rLmdldCgpLCAidmlkZW8t
c2luayIsIG1fdmlkZW9TaW5rLmdldCgpLCBudWxscHRyKTsKLSAgICAgICAgICAgIHZpZGVvU2lu
ayA9IG1fZnBzU2luay5nZXQoKTsKLSAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICBtX2Zwc1Np
bmsgPSBudWxscHRyOworICAgIGlmICghd2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDE3LCAwKSkg
eworICAgICAgICBtX2Zwc1NpbmsgPSBnc3RfZWxlbWVudF9mYWN0b3J5X21ha2UoImZwc2Rpc3Bs
YXlzaW5rIiwgInNpbmsiKTsKKyAgICAgICAgaWYgKG1fZnBzU2luaykgeworICAgICAgICAgICAg
Z19vYmplY3Rfc2V0KG1fZnBzU2luay5nZXQoKSwgInNpbGVudCIsIFRSVUUgLCBudWxscHRyKTsK
KworICAgICAgICAgICAgLy8gVHVybiBvZmYgdGV4dCBvdmVybGF5IHVubGVzcyB0cmFjaW5nIGlz
IGVuYWJsZWQuCisgICAgICAgICAgICBpZiAoZ3N0X2RlYnVnX2NhdGVnb3J5X2dldF90aHJlc2hv
bGQod2Via2l0X21lZGlhX3BsYXllcl9kZWJ1ZykgPCBHU1RfTEVWRUxfVFJBQ0UpCisgICAgICAg
ICAgICAgICAgZ19vYmplY3Rfc2V0KG1fZnBzU2luay5nZXQoKSwgInRleHQtb3ZlcmxheSIsIEZB
TFNFICwgbnVsbHB0cik7CisKKyAgICAgICAgICAgIGlmIChnX29iamVjdF9jbGFzc19maW5kX3By
b3BlcnR5KEdfT0JKRUNUX0dFVF9DTEFTUyhtX2Zwc1NpbmsuZ2V0KCkpLCAidmlkZW8tc2luayIp
KSB7CisgICAgICAgICAgICAgICAgZ19vYmplY3Rfc2V0KG1fZnBzU2luay5nZXQoKSwgInZpZGVv
LXNpbmsiLCBtX3ZpZGVvU2luay5nZXQoKSwgbnVsbHB0cik7CisgICAgICAgICAgICAgICAgdmlk
ZW9TaW5rID0gbV9mcHNTaW5rLmdldCgpOworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAg
ICAgICAgbV9mcHNTaW5rID0gbnVsbHB0cjsKKyAgICAgICAgfQogICAgIH0KLSNlbmRpZgogCiAg
ICAgaWYgKCFtX2Zwc1NpbmspCiAgICAgICAgIHZpZGVvU2luayA9IG1fdmlkZW9TaW5rLmdldCgp
OwogCiAgICAgQVNTRVJUKHZpZGVvU2luayk7Ci0KICAgICByZXR1cm4gdmlkZW9TaW5rOwogfQog
CkBAIC0zNTQ2LDQ0ICszNTQ1LDM5IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVy
OjpzZXRTdHJlYW1Wb2x1bWVFbGVtZW50KEdzdFN0cmVhbVZvbHVtZSogdm9sdW1lCiAgICAgZ19z
aWduYWxfY29ubmVjdF9zd2FwcGVkKG1fdm9sdW1lRWxlbWVudC5nZXQoKSwgIm5vdGlmeTo6bXV0
ZSIsIEdfQ0FMTEJBQ0sobXV0ZUNoYW5nZWRDYWxsYmFjayksIHRoaXMpOwogfQogCi11bnNpZ25l
ZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmRlY29kZWRGcmFtZUNvdW50KCkgY29uc3QK
LXsKLSAgICB1aW50NjRfdCBkZWNvZGVkRnJhbWVzID0gMDsKLSAgICBpZiAobV9mcHNTaW5rKQot
ICAgICAgICBnX29iamVjdF9nZXQobV9mcHNTaW5rLmdldCgpLCAiZnJhbWVzLXJlbmRlcmVkIiwg
JmRlY29kZWRGcmFtZXMsIG51bGxwdHIpOwotICAgIHJldHVybiBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oZGVjb2RlZEZyYW1lcyk7Ci19Ci0KLXVuc2lnbmVkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJl
YW1lcjo6ZHJvcHBlZEZyYW1lQ291bnQoKSBjb25zdAorT3B0aW9uYWw8VmlkZW9QbGF5YmFja1F1
YWxpdHlNZXRyaWNzPiBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnZpZGVvUGxheWJhY2tR
dWFsaXR5TWV0cmljcygpCiB7Ci0gICAgdWludDY0X3QgZnJhbWVzRHJvcHBlZCA9IDA7Ci0gICAg
aWYgKG1fZnBzU2luaykKLSAgICAgICAgZ19vYmplY3RfZ2V0KG1fZnBzU2luay5nZXQoKSwgImZy
YW1lcy1kcm9wcGVkIiwgJmZyYW1lc0Ryb3BwZWQsIG51bGxwdHIpOwotICAgIHJldHVybiBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4oZnJhbWVzRHJvcHBlZCk7Ci19CisgICAgaWYgKCF3ZWJraXRHc3RD
aGVja1ZlcnNpb24oMSwgMTcsIDApICYmICFtX2Zwc1NpbmspCisgICAgICAgIHJldHVybiBXVEY6
Om51bGxvcHQ7CiAKLXVuc2lnbmVkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6YXVkaW9E
ZWNvZGVkQnl0ZUNvdW50KCkgY29uc3QKLXsKLSAgICBHc3RRdWVyeSogcXVlcnkgPSBnc3RfcXVl
cnlfbmV3X3Bvc2l0aW9uKEdTVF9GT1JNQVRfQllURVMpOwotICAgIGdpbnQ2NCBwb3NpdGlvbiA9
IDA7CisgICAgdWludDY0X3QgdG90YWxWaWRlb0ZyYW1lcyA9IDA7CisgICAgdWludDY0X3QgZHJv
cHBlZFZpZGVvRnJhbWVzID0gMDsKKyAgICBpZiAod2Via2l0R3N0Q2hlY2tWZXJzaW9uKDEsIDE3
LCAwKSkgeworICAgICAgICBHVW5pcXVlT3V0UHRyPEdzdFN0cnVjdHVyZT4gc3RhdHM7CisgICAg
ICAgIGdfb2JqZWN0X2dldChtX3ZpZGVvU2luay5nZXQoKSwgInN0YXRzIiwgJnN0YXRzLm91dFB0
cigpLCBudWxscHRyKTsKIAotICAgIGlmIChhdWRpb1NpbmsoKSAmJiBnc3RfZWxlbWVudF9xdWVy
eShhdWRpb1NpbmsoKSwgcXVlcnkpKQotICAgICAgICBnc3RfcXVlcnlfcGFyc2VfcG9zaXRpb24o
cXVlcnksIDAsICZwb3NpdGlvbik7CisgICAgICAgIGlmICghZ3N0X3N0cnVjdHVyZV9nZXRfdWlu
dDY0KHN0YXRzLmdldCgpLCAicmVuZGVyZWQiLCAmdG90YWxWaWRlb0ZyYW1lcykpCisgICAgICAg
ICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogCi0gICAgZ3N0X3F1ZXJ5X3VucmVmKHF1ZXJ5KTsK
LSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHBvc2l0aW9uKTsKLX0KLQotdW5zaWdu
ZWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjp2aWRlb0RlY29kZWRCeXRlQ291bnQoKSBj
b25zdAotewotICAgIEdzdFF1ZXJ5KiBxdWVyeSA9IGdzdF9xdWVyeV9uZXdfcG9zaXRpb24oR1NU
X0ZPUk1BVF9CWVRFUyk7Ci0gICAgZ2ludDY0IHBvc2l0aW9uID0gMDsKLQotICAgIGlmIChnc3Rf
ZWxlbWVudF9xdWVyeShtX3ZpZGVvU2luay5nZXQoKSwgcXVlcnkpKQotICAgICAgICBnc3RfcXVl
cnlfcGFyc2VfcG9zaXRpb24ocXVlcnksIDAsICZwb3NpdGlvbik7CisgICAgICAgIGlmICghZ3N0
X3N0cnVjdHVyZV9nZXRfdWludDY0KHN0YXRzLmdldCgpLCAiZHJvcHBlZCIsICZkcm9wcGVkVmlk
ZW9GcmFtZXMpKQorICAgICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKyAgICB9IGVsc2Ug
aWYgKG1fZnBzU2luaykgeworICAgICAgICB1bnNpZ25lZCByZW5kZXJlZEZyYW1lcywgZHJvcHBl
ZEZyYW1lczsKKyAgICAgICAgZ19vYmplY3RfZ2V0KG1fZnBzU2luay5nZXQoKSwgImZyYW1lcy1y
ZW5kZXJlZCIsICZyZW5kZXJlZEZyYW1lcywgImZyYW1lcy1kcm9wcGVkIiwgJmRyb3BwZWRGcmFt
ZXMsIG51bGxwdHIpOworICAgICAgICB0b3RhbFZpZGVvRnJhbWVzID0gcmVuZGVyZWRGcmFtZXM7
CisgICAgICAgIGRyb3BwZWRWaWRlb0ZyYW1lcyA9IGRyb3BwZWRGcmFtZXM7CisgICAgfQogCi0g
ICAgZ3N0X3F1ZXJ5X3VucmVmKHF1ZXJ5KTsKLSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KHBvc2l0aW9uKTsKKyAgICB1aW50MzJfdCBjb3JydXB0ZWRWaWRlb0ZyYW1lcyA9IDA7Cisg
ICAgZG91YmxlIHRvdGFsRnJhbWVEZWxheSA9IDA7CisgICAgdWludDMyX3QgZGlzcGxheUNvbXBv
c2l0ZWRWaWRlb0ZyYW1lcyA9IDA7CisgICAgcmV0dXJuIFZpZGVvUGxheWJhY2tRdWFsaXR5TWV0
cmljcyB7CisgICAgICAgIHN0YXRpY19jYXN0PHVpbnQzMl90Pih0b3RhbFZpZGVvRnJhbWVzKSwK
KyAgICAgICAgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGRyb3BwZWRWaWRlb0ZyYW1lcyksCisgICAg
ICAgIGNvcnJ1cHRlZFZpZGVvRnJhbWVzLAorICAgICAgICB0b3RhbEZyYW1lRGVsYXksCisgICAg
ICAgIGRpc3BsYXlDb21wb3NpdGVkVmlkZW9GcmFtZXMsCisgICAgfTsKIH0KIAogI2lmIEVOQUJM
RShFTkNSWVBURURfTUVESUEpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0
cmVhbWVyLmgKaW5kZXggM2VjMTFmYmRjZGUzNzlmZmY2OGYxMTgyNGQyMzg4MDllOTJhYzk3MC4u
ZjNmYTI5N2RkZWM4Mjg3NTJhNmI4ZmMxNTk0NTU1NGIwNGZiYTcxMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0
ZUdTdHJlYW1lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaApAQCAtMTgxLDExICsxODEsNyBAQCBw
dWJsaWM6CiAgICAgYm9vbCBzdXBwb3J0c0Z1bGxzY3JlZW4oKSBjb25zdCBmaW5hbDsKICAgICBN
ZWRpYVBsYXllcjo6TW92aWVMb2FkVHlwZSBtb3ZpZUxvYWRUeXBlKCkgY29uc3QgZmluYWw7CiAK
LSAgICB1bnNpZ25lZCBkZWNvZGVkRnJhbWVDb3VudCgpIGNvbnN0IGZpbmFsOwotICAgIHVuc2ln
bmVkIGRyb3BwZWRGcmFtZUNvdW50KCkgY29uc3QgZmluYWw7Ci0gICAgdW5zaWduZWQgYXVkaW9E
ZWNvZGVkQnl0ZUNvdW50KCkgY29uc3QgZmluYWw7Ci0gICAgdW5zaWduZWQgdmlkZW9EZWNvZGVk
Qnl0ZUNvdW50KCkgY29uc3QgZmluYWw7Ci0KKyAgICBPcHRpb25hbDxWaWRlb1BsYXliYWNrUXVh
bGl0eU1ldHJpY3M+IHZpZGVvUGxheWJhY2tRdWFsaXR5TWV0cmljcygpIGZpbmFsOwogICAgIHZv
aWQgYWNjZWxlcmF0ZWRSZW5kZXJpbmdTdGF0ZUNoYW5nZWQoKSBmaW5hbDsKIAogI2lmIFVTRShU
RVhUVVJFX01BUFBFUl9HTCkK
</data>
<flag name="review"
          id="403400"
          type_id="1"
          status="+"
          setter="calvaris"
    />
          </attachment>
      

    </bug>

</bugzilla>