<?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>190393</bug_id>
          
          <creation_ts>2018-10-08 22:50:23 -0700</creation_ts>
          <short_desc>ManifestGenerator shouldn&apos;t need more than 1GB of memory or run for 30 seconds</short_desc>
          <delta_ts>2018-10-09 20:20:22 -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>Perf Dashboard</component>
          <version>WebKit 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="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>ap</cc>
    
    <cc>cdumez</cc>
    
    <cc>dean_johnson</cc>
    
    <cc>dewei_zhu</cc>
    
    <cc>ggaren</cc>
    
    <cc>koivisto</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1467344</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-10-08 22:50:23 -0700</bug_when>
    <thetext>In the internal instance of perf dashboard, manifest generation is taking 30s+ and requiring more than 1GB of RAM.
Improve ManifestGenerator to reduce the runtime &amp; memory usage required.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1467349</commentid>
    <comment_count>1</comment_count>
      <attachid>351863</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-10-08 23:27:09 -0700</bug_when>
    <thetext>Created attachment 351863
Improves the generator</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1467350</commentid>
    <comment_count>2</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-10-08 23:28:35 -0700</bug_when>
    <thetext>Together with https://trac.webkit.org/changeset/236956, this patch should dramatically reduce the memory &amp; CPU pressure on the internal perf dashboard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1467623</commentid>
    <comment_count>3</comment_count>
    <who name="">dewei_zhu</who>
    <bug_when>2018-10-09 17:36:39 -0700</bug_when>
    <thetext>Looks good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1467638</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-10-09 20:15:41 -0700</bug_when>
    <thetext>Committed r236996: &lt;https://trac.webkit.org/changeset/236996&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1467639</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-10-09 20:20:22 -0700</bug_when>
    <thetext>&lt;rdar://problem/45149799&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>351863</attachid>
            <date>2018-10-08 23:27:09 -0700</date>
            <delta_ts>2018-10-09 00:51:44 -0700</delta_ts>
            <desc>Improves the generator</desc>
            <filename>bug-190393-20181008232709.patch</filename>
            <type>text/plain</type>
            <size>12023</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL0NoYW5nZUxvZwkocmV2aXNpb24gMjM2OTU4KQorKysg
V2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDMzIEBACisyMDE4LTEwLTA4ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgor
CisgICAgICAgIE1hbmlmZXN0R2VuZXJhdG9yIHNob3VsZG4ndCBuZWVkIG1vcmUgdGhhbiAxR0Ig
b2YgbWVtb3J5IG9yIHJ1biBmb3IgMzAgc2Vjb25kcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkwMzkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCByZWR1Y2VzIHRoZSBydW50aW1lIG9m
IC9hcGkvbWFuaWZlc3QgZnJvbSAxM3MgdG8gN3MgYW5kIHJlZHVjZXMgdGhlIG1lbW9yeSByZXF1
aXJlbWVudCBmcm9tCisgICAgICAgIDFHQiB0byA0MDBNQiBmb3IgdGhlIGludGVybmFsIGRhc2hi
b2FyZCBpbiBteSBsb2NhbCB0ZXN0aW5nLgorCisgICAgICAgIFRoZSBiaWdnZXN0IHBlcmYgd2lu
IGNvbWVzIGZyb20gYXZvaWQgcnVubmluZyBhIGNvbXBsZXggcXVlcnkgb3ZlciB0ZXN0X2NvbmZp
Z3VyYXRpb25zIHRvIGNvbXB1dGUKKyAgICAgICAgdGhlIGxhdGVzdCBtb2RpZmllZCBkYXRlIGFj
cm9zcyBkaWZmZXJlbnQgdGVzdCBjb25maWd1cmF0aW9uIHR5cGVzICgiY3VycmVudCIgdnMuICJi
YXNlbGluZSIpLgorICAgICAgICBJbnN0ZWFkLCB3ZSBub3cgZmV0Y2ggdGhlIGVudGlyZSB0YWJs
ZSByb3cgYnkgcm93IGFuZCBjb21wdXRlIHRoZSBsYXRlc3QgbW9kaWZpZWQgZGF0ZSBpbiBtZW1v
cnkuCisKKyAgICAgICAgQWxzbyBjYWxsIGludHZhbCBpbiBtYW55IG1vcmUgcGxhY2VzIHRvIGF2
b2lkIGdlbmVyYXRpbmcgZG91YmxlIHF1b3Rlcywgd2hpY2ggaXMgYSBwcmV0dHkgc2lnbmlmaWNh
bnQKKyAgICAgICAgcHJvcG9ydGlvbiBvZiB0aGUgSlNPTiBmaWxlIHNpemUgYXQgdGhpcyBwb2lu
dC4KKworICAgICAgICBGaW5hbGx5LCB1c2UgcmVmZXJlbmNlcyBpbiBtb3JlIHBsYWNlcyB0byBh
dm9pZCBkZWVwIGNvcHlpbmcgb2YgYXJyYXlzLgorCisgICAgICAgICogcHVibGljL2luY2x1ZGUv
bWFuaWZlc3QtZ2VuZXJhdG9yLnBocDoKKyAgICAgICAgKE1hbmlmZXN0R2VuZXJhdG9yOjpnZW5l
cmF0ZSk6IFNraXAgdGhlIGdlbmVyYXRpb24gb2YgImRhc2hib2FyZCIgc2luY2UgaXQncyBvbmx5
IHVzZWQgYnkgdjEgVUkuCisgICAgICAgIChNYW5pZmVzdEdlbmVyYXRvcjo6dGVzdHMpOiBEb24n
dCBjb3B5IGVhY2ggcm93LgorICAgICAgICAoTWFuaWZlc3RHZW5lcmF0b3I6Om1ldHJpY3MpOiBE
aXR0by4KKyAgICAgICAgKE1hbmlmZXN0R2VuZXJhdG9yOjpwbGF0Zm9ybXMpOiBJbXBsZW1lbnQg
dGhlIGFmb3JlbWVudGlvbmVkIG9wdGltaXphdGlvbi4gSW5zdGVhZCBvZiBncm91cGluZworICAg
ICAgICB0ZXN0IGNvbmZpZ3VyYXRpb25zIGZvciBhIGdpdmVuIG1ldHJpYyBhbmQgcGxhdGZvcm0g
dG9nZXRoZXIsIGZldGNoIHRoZW0gYWxsIGFuZCBkbyBpbi1tZW1vcnkKKyAgICAgICAgcHJvY2Vz
c2luZyBpbiBQSFAuIEF2b2lkIG1vcmUgY29weWluZyBhcyB3ZWxsLgorICAgICAgICAoTWFuaWZl
c3RHZW5lcmF0b3I6OnJlcG9zaXRvcmllcyk6IEF2b2lkIG1vcmUgY29weWluZy4KKyAgICAgICAg
KE1hbmlmZXN0R2VuZXJhdG9yOjpidWdfdHJhY2tlcnMpOiBEaXR0by4KKyAgICAgICAgKE1hbmlm
ZXN0R2VuZXJhdG9yOjpmZXRjaF90cmlnZ2VyYWJsZXMpOiBEaXR0by4KKwogMjAxOC0xMC0wOCAg
Unlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICAvYXBpL3JlcG9ydCB0
YWtlcyAxNSsgbWludXRlcyBzdWJtaXR0aW5nIHNvbWUgdGVzdCByZXN1bHRzCkluZGV4OiBXZWJz
aXRlcy9wZXJmLndlYmtpdC5vcmcvcHVibGljL2luY2x1ZGUvbWFuaWZlc3QtZ2VuZXJhdG9yLnBo
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJzaXRlcy9wZXJmLndlYmtpdC5vcmcvcHVibGljL2luY2x1ZGUv
bWFuaWZlc3QtZ2VuZXJhdG9yLnBocAkocmV2aXNpb24gMjM2OTU1KQorKysgV2Vic2l0ZXMvcGVy
Zi53ZWJraXQub3JnL3B1YmxpYy9pbmNsdWRlL21hbmlmZXN0LWdlbmVyYXRvci5waHAJKHdvcmtp
bmcgY29weSkKQEAgLTI5LDcgKzI5LDYgQEAgY2xhc3MgTWFuaWZlc3RHZW5lcmF0b3IgewogICAg
ICAgICAkdGVzdHMgPSAob2JqZWN0KSR0aGlzLT50ZXN0cygpOwogICAgICAgICAkbWV0cmljcyA9
IChvYmplY3QpJHRoaXMtPm1ldHJpY3MoKTsKICAgICAgICAgJHBsYXRmb3JtcyA9IChvYmplY3Qp
JHRoaXMtPnBsYXRmb3JtcygkcGxhdGZvcm1fdGFibGUsIGZhbHNlKTsKLSAgICAgICAgJGRhc2hi
b2FyZCA9IChvYmplY3QpJHRoaXMtPnBsYXRmb3JtcygkcGxhdGZvcm1fdGFibGUsIHRydWUpOwog
ICAgICAgICAkcmVwb3NpdG9yaWVzID0gKG9iamVjdCkkdGhpcy0+cmVwb3NpdG9yaWVzKCRyZXBv
c2l0b3JpZXNfdGFibGUsICRyZXBvc2l0b3JpZXNfd2l0aF9jb21taXQpOwogCiAgICAgICAgICR0
aGlzLT5tYW5pZmVzdCA9IGFycmF5KApAQCAtMzcsNyArMzYsNyBAQCBjbGFzcyBNYW5pZmVzdEdl
bmVyYXRvciB7CiAgICAgICAgICAgICAndGVzdHMnID0+ICYkdGVzdHMsCiAgICAgICAgICAgICAn
bWV0cmljcycgPT4gJiRtZXRyaWNzLAogICAgICAgICAgICAgJ2FsbCcgPT4gJiRwbGF0Zm9ybXMs
Ci0gICAgICAgICAgICAnZGFzaGJvYXJkJyA9PiAmJGRhc2hib2FyZCwKKyAgICAgICAgICAgICdk
YXNoYm9hcmQnID0+IChvYmplY3QpYXJyYXkoKSwgLy8gT25seSB1c2VkIGJ5IHYxIFVJLgogICAg
ICAgICAgICAgJ3JlcG9zaXRvcmllcycgPT4gJiRyZXBvc2l0b3JpZXMsCiAgICAgICAgICAgICAn
YnVpbGRlcnMnID0+IChvYmplY3QpJHRoaXMtPmJ1aWxkZXJzKCksCiAgICAgICAgICAgICAnYnVn
VHJhY2tlcnMnID0+IChvYmplY3QpJHRoaXMtPmJ1Z190cmFja2VycygkcmVwb3NpdG9yaWVzX3Rh
YmxlKSwKQEAgLTY0LDExICs2MywxMSBAQCBjbGFzcyBNYW5pZmVzdEdlbmVyYXRvciB7CiAgICAg
ICAgICR0ZXN0c190YWJsZSA9ICR0aGlzLT5kYi0+ZmV0Y2hfdGFibGUoJ3Rlc3RzJyk7CiAgICAg
ICAgIGlmICghJHRlc3RzX3RhYmxlKQogICAgICAgICAgICAgcmV0dXJuICR0ZXN0czsKLSAgICAg
ICAgZm9yZWFjaCAoJHRlc3RzX3RhYmxlIGFzICR0ZXN0X3JvdykgeworICAgICAgICBmb3JlYWNo
ICgkdGVzdHNfdGFibGUgYXMgJiR0ZXN0X3JvdykgewogICAgICAgICAgICAgJHRlc3RzWyR0ZXN0
X3Jvd1sndGVzdF9pZCddXSA9IGFycmF5KAogICAgICAgICAgICAgICAgICduYW1lJyA9PiAkdGVz
dF9yb3dbJ3Rlc3RfbmFtZSddLAogICAgICAgICAgICAgICAgICd1cmwnID0+ICR0ZXN0X3Jvd1sn
dGVzdF91cmwnXSwKLSAgICAgICAgICAgICAgICAncGFyZW50SWQnID0+ICR0ZXN0X3Jvd1sndGVz
dF9wYXJlbnQnXSwKKyAgICAgICAgICAgICAgICAncGFyZW50SWQnID0+ICR0ZXN0X3Jvd1sndGVz
dF9wYXJlbnQnXSA/IGludHZhbCgkdGVzdF9yb3dbJ3Rlc3RfcGFyZW50J10pIDogTlVMTCwKICAg
ICAgICAgICAgICk7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuICR0ZXN0czsKQEAgLTc5LDUz
ICs3OCw2NCBAQCBjbGFzcyBNYW5pZmVzdEdlbmVyYXRvciB7CiAgICAgICAgICRtZXRyaWNzX3Rh
YmxlID0gJHRoaXMtPmRiLT5xdWVyeV9hbmRfZmV0Y2hfYWxsKCdTRUxFQ1QgKiBGUk9NIHRlc3Rf
bWV0cmljcyBMRUZUIEpPSU4gYWdncmVnYXRvcnMgT04gbWV0cmljX2FnZ3JlZ2F0b3IgPSBhZ2dy
ZWdhdG9yX2lkJyk7CiAgICAgICAgIGlmICghJG1ldHJpY3NfdGFibGUpCiAgICAgICAgICAgICBy
ZXR1cm4gJG1ldHJpY3M7Ci0gICAgICAgIGZvcmVhY2ggKCRtZXRyaWNzX3RhYmxlIGFzICRyb3cp
IHsKKyAgICAgICAgZm9yZWFjaCAoJG1ldHJpY3NfdGFibGUgYXMgJiRyb3cpIHsKICAgICAgICAg
ICAgICRtZXRyaWNzWyRyb3dbJ21ldHJpY19pZCddXSA9IGFycmF5KAogICAgICAgICAgICAgICAg
ICduYW1lJyA9PiAkcm93WydtZXRyaWNfbmFtZSddLAotICAgICAgICAgICAgICAgICd0ZXN0JyA9
PiAkcm93WydtZXRyaWNfdGVzdCddLAorICAgICAgICAgICAgICAgICd0ZXN0JyA9PiBpbnR2YWwo
JHJvd1snbWV0cmljX3Rlc3QnXSksCiAgICAgICAgICAgICAgICAgJ2FnZ3JlZ2F0b3InID0+ICRy
b3dbJ2FnZ3JlZ2F0b3JfbmFtZSddKTsKICAgICAgICAgfQogICAgICAgICByZXR1cm4gJG1ldHJp
Y3M7CiAgICAgfQogCi0gICAgcHJpdmF0ZSBmdW5jdGlvbiBwbGF0Zm9ybXMoJHBsYXRmb3JtX3Rh
YmxlLCAkaXNfZGFzaGJvYXJkKSB7Ci0gICAgICAgICRtZXRyaWNzID0gJHRoaXMtPmRiLT5xdWVy
eV9hbmRfZmV0Y2hfYWxsKCdTRUxFQ1QgY29uZmlnX21ldHJpYyBBUyBtZXRyaWNfaWQsIGNvbmZp
Z19wbGF0Zm9ybSBBUyBwbGF0Zm9ybV9pZCwKLSAgICAgICAgICAgIGV4dHJhY3QoZXBvY2ggZnJv
bSBtYXgoY29uZmlnX3J1bnNfbGFzdF9tb2RpZmllZCkgYXQgdGltZSB6b25lIFwndXRjXCcpICog
MTAwMCBBUyBsYXN0X21vZGlmaWVkLCBib29sX29yKGNvbmZpZ19pc19pbl9kYXNoYm9hcmQpIEFT
IGluX2Rhc2hib2FyZAotICAgICAgICAgICAgRlJPTSB0ZXN0X2NvbmZpZ3VyYXRpb25zIEdST1VQ
IEJZIGNvbmZpZ19tZXRyaWMsIGNvbmZpZ19wbGF0Zm9ybSBPUkRFUiBCWSBjb25maWdfcGxhdGZv
cm0nKTsKKyAgICBwcml2YXRlIGZ1bmN0aW9uIHBsYXRmb3JtcygmJHBsYXRmb3JtX3RhYmxlLCAk
aXNfZGFzaGJvYXJkKSB7CisgICAgICAgICRjb25maWdfcXVlcnkgPSAkdGhpcy0+ZGItPnF1ZXJ5
KCdTRUxFQ1QgY29uZmlnX3BsYXRmb3JtLCBjb25maWdfbWV0cmljLAorICAgICAgICAgICAgZXh0
cmFjdChlcG9jaCBmcm9tIGNvbmZpZ19ydW5zX2xhc3RfbW9kaWZpZWQgYXQgdGltZSB6b25lIFwn
dXRjXCcpICogMTAwMCBBUyBsYXN0X21vZGlmaWVkCisgICAgICAgICAgICBGUk9NIHRlc3RfY29u
ZmlndXJhdGlvbnMnKTsKIAogICAgICAgICAkcGxhdGZvcm1fbWV0cmljcyA9IGFycmF5KCk7CiAK
LSAgICAgICAgaWYgKCRtZXRyaWNzKSB7CisgICAgICAgIGlmICgkY29uZmlnX3F1ZXJ5KSB7CiAg
ICAgICAgICAgICAkY3VycmVudF9wbGF0Zm9ybV9lbnRyeSA9IG51bGw7Ci0gICAgICAgICAgICBm
b3JlYWNoICgkbWV0cmljcyBhcyAkbWV0cmljX3JvdykgewotICAgICAgICAgICAgICAgIGlmICgk
aXNfZGFzaGJvYXJkICYmICFEYXRhYmFzZTo6aXNfdHJ1ZSgkbWV0cmljX3Jvd1snaW5fZGFzaGJv
YXJkJ10pKQorICAgICAgICAgICAgJGxhc3RfbW9kaWZpZWRfbWFwID0gYXJyYXkoKTsKKyAgICAg
ICAgICAgIHdoaWxlICgxKSB7CisgICAgICAgICAgICAgICAgJGNvbmZpZ19yb3cgPSAkdGhpcy0+
ZGItPmZldGNoX25leHRfcm93KCRjb25maWdfcXVlcnkpOworICAgICAgICAgICAgICAgIGlmICgh
JGNvbmZpZ19yb3cpCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworCisgICAgICAgICAgICAg
ICAgJHBsYXRmb3JtX2lkID0gJGNvbmZpZ19yb3dbJ2NvbmZpZ19wbGF0Zm9ybSddOworICAgICAg
ICAgICAgICAgICRtZXRyaWNfaWQgPSAkY29uZmlnX3Jvd1snY29uZmlnX21ldHJpYyddOworICAg
ICAgICAgICAgICAgICRsYXN0X21vZGlmaWVkID0gaW50dmFsKCRjb25maWdfcm93WydsYXN0X21v
ZGlmaWVkJ10pOworCisgICAgICAgICAgICAgICAgJGtleSA9ICRwbGF0Zm9ybV9pZCAuICctJyAu
ICRtZXRyaWNfaWQ7CisgICAgICAgICAgICAgICAgaWYgKGFycmF5X2tleV9leGlzdHMoJGtleSwg
JGxhc3RfbW9kaWZpZWRfbWFwKSkgeworICAgICAgICAgICAgICAgICAgICAkbGFzdF9tb2RpZmll
ZF9tYXBbJGtleV0gPSBtYXgoJGxhc3RfbW9kaWZpZWRfbWFwWyRrZXldLCAkbGFzdF9tb2RpZmll
ZCk7CiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgICAgICAgICAgJHBs
YXRmb3JtX2lkID0gJG1ldHJpY19yb3dbJ3BsYXRmb3JtX2lkJ107Ci0gICAgICAgICAgICAgICAg
aWYgKCEkY3VycmVudF9wbGF0Zm9ybV9lbnRyeSB8fCAkY3VycmVudF9wbGF0Zm9ybV9lbnRyeVsn
aWQnXSAhPSAkcGxhdGZvcm1faWQpIHsKLSAgICAgICAgICAgICAgICAgICAgJGN1cnJlbnRfcGxh
dGZvcm1fZW50cnkgPSAmYXJyYXlfZW5zdXJlX2l0ZW1faGFzX2FycmF5KCRwbGF0Zm9ybV9tZXRy
aWNzLCAkcGxhdGZvcm1faWQpOwotICAgICAgICAgICAgICAgICAgICAkY3VycmVudF9wbGF0Zm9y
bV9lbnRyeVsnaWQnXSA9ICRwbGF0Zm9ybV9pZDsKLSAgICAgICAgICAgICAgICAgICAgYXJyYXlf
ZW5zdXJlX2l0ZW1faGFzX2FycmF5KCRjdXJyZW50X3BsYXRmb3JtX2VudHJ5LCAnbWV0cmljcycp
OwotICAgICAgICAgICAgICAgICAgICBhcnJheV9lbnN1cmVfaXRlbV9oYXNfYXJyYXkoJGN1cnJl
bnRfcGxhdGZvcm1fZW50cnksICdsYXN0X21vZGlmaWVkJyk7CiAgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgICAgICRsYXN0X21vZGlmaWVkX21hcFska2V5XSA9ICRsYXN0X21vZGlmaWVk
OwogCi0gICAgICAgICAgICAgICAgYXJyYXlfcHVzaCgkY3VycmVudF9wbGF0Zm9ybV9lbnRyeVsn
bWV0cmljcyddLCAkbWV0cmljX3Jvd1snbWV0cmljX2lkJ10pOwotICAgICAgICAgICAgICAgIGFy
cmF5X3B1c2goJGN1cnJlbnRfcGxhdGZvcm1fZW50cnlbJ2xhc3RfbW9kaWZpZWQnXSwgaW50dmFs
KCRtZXRyaWNfcm93WydsYXN0X21vZGlmaWVkJ10pKTsKKyAgICAgICAgICAgICAgICAkY3VycmVu
dF9wbGF0Zm9ybV9lbnRyeSA9ICZhcnJheV9lbnN1cmVfaXRlbV9oYXNfYXJyYXkoJHBsYXRmb3Jt
X21ldHJpY3MsICRwbGF0Zm9ybV9pZCk7CisgICAgICAgICAgICAgICAgYXJyYXlfZW5zdXJlX2l0
ZW1faGFzX2FycmF5KCRjdXJyZW50X3BsYXRmb3JtX2VudHJ5LCAnbWV0cmljcycpOworICAgICAg
ICAgICAgICAgIGFycmF5X3B1c2goJGN1cnJlbnRfcGxhdGZvcm1fZW50cnlbJ21ldHJpY3MnXSwg
aW50dmFsKCRtZXRyaWNfaWQpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICAk
Y29uZmlndXJhdGlvbnMgPSBhcnJheSgpOwogCiAgICAgICAgICRwbGF0Zm9ybXMgPSBhcnJheSgp
OwogICAgICAgICBpZiAoJHBsYXRmb3JtX3RhYmxlKSB7Ci0gICAgICAgICAgICBmb3JlYWNoICgk
cGxhdGZvcm1fdGFibGUgYXMgJHBsYXRmb3JtX3JvdykgeworICAgICAgICAgICAgZm9yZWFjaCAo
JHBsYXRmb3JtX3RhYmxlIGFzICYkcGxhdGZvcm1fcm93KSB7CiAgICAgICAgICAgICAgICAgaWYg
KERhdGFiYXNlOjppc190cnVlKCRwbGF0Zm9ybV9yb3dbJ3BsYXRmb3JtX2hpZGRlbiddKSkKICAg
ICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgJGlkID0gJHBsYXRm
b3JtX3Jvd1sncGxhdGZvcm1faWQnXTsKICAgICAgICAgICAgICAgICBpZiAoYXJyYXlfa2V5X2V4
aXN0cygkaWQsICRwbGF0Zm9ybV9tZXRyaWNzKSkgeworICAgICAgICAgICAgICAgICAgICAkbWV0
cmljcyA9ICYkcGxhdGZvcm1fbWV0cmljc1skaWRdWydtZXRyaWNzJ107CisgICAgICAgICAgICAg
ICAgICAgICRsYXN0X21vZGlmaWVkID0gYXJyYXkoKTsKKyAgICAgICAgICAgICAgICAgICAgZm9y
ZWFjaCAoJG1ldHJpY3MgYXMgJG1ldHJpY19pZCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGFy
cmF5X3B1c2goJGxhc3RfbW9kaWZpZWQsICRsYXN0X21vZGlmaWVkX21hcFskaWQgLiAnLScgLiAk
bWV0cmljX2lkXSk7CiAgICAgICAgICAgICAgICAgICAgICRwbGF0Zm9ybXNbJGlkXSA9IGFycmF5
KAotICAgICAgICAgICAgICAgICAgICAgICAgJ25hbWUnID0+ICRwbGF0Zm9ybV9yb3dbJ3BsYXRm
b3JtX25hbWUnXSwKLSAgICAgICAgICAgICAgICAgICAgICAgICdtZXRyaWNzJyA9PiAkcGxhdGZv
cm1fbWV0cmljc1skaWRdWydtZXRyaWNzJ10sCi0gICAgICAgICAgICAgICAgICAgICAgICAnbGFz
dE1vZGlmaWVkJyA9PiAkcGxhdGZvcm1fbWV0cmljc1skaWRdWydsYXN0X21vZGlmaWVkJ10pOwor
ICAgICAgICAgICAgICAgICAgICAgICAgJ25hbWUnID0+ICYkcGxhdGZvcm1fcm93WydwbGF0Zm9y
bV9uYW1lJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAnbWV0cmljcycgPT4gJiRtZXRyaWNz
LAorICAgICAgICAgICAgICAgICAgICAgICAgJ2xhc3RNb2RpZmllZCcgPT4gJiRsYXN0X21vZGlm
aWVkCisgICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgfQogICAgICAgICB9CkBAIC0xMzYsNyArMTQ2LDcgQEAgY2xhc3MgTWFuaWZlc3RHZW5lcmF0
b3IgewogICAgICAgICAkcmVwb3NpdG9yaWVzID0gYXJyYXkoKTsKICAgICAgICAgaWYgKCEkcmVw
b3NpdG9yaWVzX3RhYmxlKQogICAgICAgICAgICAgcmV0dXJuICRyZXBvc2l0b3JpZXM7Ci0gICAg
ICAgIGZvcmVhY2ggKCRyZXBvc2l0b3JpZXNfdGFibGUgYXMgJHJvdykgeworICAgICAgICBmb3Jl
YWNoICgkcmVwb3NpdG9yaWVzX3RhYmxlIGFzICYkcm93KSB7CiAgICAgICAgICAgICAkcmVwb3Np
dG9yaWVzWyRyb3dbJ3JlcG9zaXRvcnlfaWQnXV0gPSBhcnJheSgKICAgICAgICAgICAgICAgICAn
bmFtZScgPT4gJHJvd1sncmVwb3NpdG9yeV9uYW1lJ10sCiAgICAgICAgICAgICAgICAgJ3VybCcg
PT4gJHJvd1sncmVwb3NpdG9yeV91cmwnXSwKQEAgLTE1Myw3ICsxNjMsNyBAQCBjbGFzcyBNYW5p
ZmVzdEdlbmVyYXRvciB7CiAgICAgICAgIGlmICghJGJ1aWxkZXJzX3RhYmxlKQogICAgICAgICAg
ICAgcmV0dXJuIGFycmF5KCk7CiAgICAgICAgICRidWlsZGVycyA9IGFycmF5KCk7Ci0gICAgICAg
IGZvcmVhY2ggKCRidWlsZGVyc190YWJsZSBhcyAkcm93KQorICAgICAgICBmb3JlYWNoICgkYnVp
bGRlcnNfdGFibGUgYXMgJiRyb3cpCiAgICAgICAgICAgICAkYnVpbGRlcnNbJHJvd1snYnVpbGRl
cl9pZCddXSA9IGFycmF5KCduYW1lJyA9PiAkcm93WydidWlsZGVyX25hbWUnXSwgJ2J1aWxkVXJs
JyA9PiAkcm93WydidWlsZGVyX2J1aWxkX3VybCddKTsKIAogICAgICAgICByZXR1cm4gJGJ1aWxk
ZXJzOwpAQCAtMTcyLDcgKzE4Miw3IEBAIGNsYXNzIE1hbmlmZXN0R2VuZXJhdG9yIHsKICAgICAg
ICAgJGJ1Z190cmFja2VycyA9IGFycmF5KCk7CiAgICAgICAgICRidWdfdHJhY2tlcnNfdGFibGUg
PSAkdGhpcy0+ZGItPmZldGNoX3RhYmxlKCdidWdfdHJhY2tlcnMnKTsKICAgICAgICAgaWYgKCRi
dWdfdHJhY2tlcnNfdGFibGUpIHsKLSAgICAgICAgICAgIGZvcmVhY2ggKCRidWdfdHJhY2tlcnNf
dGFibGUgYXMgJHJvdykgeworICAgICAgICAgICAgZm9yZWFjaCAoJGJ1Z190cmFja2Vyc190YWJs
ZSBhcyAmJHJvdykgewogICAgICAgICAgICAgICAgICRidWdfdHJhY2tlcnNbJHJvd1sndHJhY2tl
cl9pZCddXSA9IGFycmF5KAogICAgICAgICAgICAgICAgICAgICAnbmFtZScgPT4gJHJvd1sndHJh
Y2tlcl9uYW1lJ10sCiAgICAgICAgICAgICAgICAgICAgICdidWdVcmwnID0+ICRyb3dbJ3RyYWNr
ZXJfYnVnX3VybCddLApAQCAtMjE2LDcgKzIyNiw3IEBAIGNsYXNzIE1hbmlmZXN0R2VuZXJhdG9y
IHsKICAgICAgICAgICAgICAgICAkZ3JvdXBfaWQgPSAkcmVwb3NpdG9yeV9yb3dbJ3RyaWdyZXBv
X2dyb3VwJ107CiAgICAgICAgICAgICAgICAgYXJyYXlfZW5zdXJlX2l0ZW1faGFzX2FycmF5KCRy
ZXBvc2l0b3J5X3NldF9ieV9ncm91cCwgJGdyb3VwX2lkKTsKICAgICAgICAgICAgICAgICBhcnJh
eV9wdXNoKCRyZXBvc2l0b3J5X3NldF9ieV9ncm91cFskZ3JvdXBfaWRdLCBhcnJheSgKLSAgICAg
ICAgICAgICAgICAgICAgJ3JlcG9zaXRvcnknID0+ICRyZXBvc2l0b3J5X3Jvd1sndHJpZ3JlcG9f
cmVwb3NpdG9yeSddLAorICAgICAgICAgICAgICAgICAgICAncmVwb3NpdG9yeScgPT4gaW50dmFs
KCRyZXBvc2l0b3J5X3Jvd1sndHJpZ3JlcG9fcmVwb3NpdG9yeSddKSwKICAgICAgICAgICAgICAg
ICAgICAgJ2FjY2VwdHNQYXRjaCcgPT4gRGF0YWJhc2U6OmlzX3RydWUoJHJlcG9zaXRvcnlfcm93
Wyd0cmlncmVwb19hY2NlcHRzX3BhdGNoJ10pKSk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICBmb3JlYWNoICgkcmVwb3NpdG9yeV9ncm91cHMgYXMgJiRncm91cF9yb3cpIHsKQEAgLTIyNywx
NCArMjM3LDE0IEBAIGNsYXNzIE1hbmlmZXN0R2VuZXJhdG9yIHsKICAgICAgICAgICAgICAgICAk
Z3JvdXBfaWQgPSAkZ3JvdXBfcm93WydyZXBvc2l0b3J5Z3JvdXBfaWQnXTsKICAgICAgICAgICAg
ICAgICAkcmVwb3NpdG9yeV9saXN0ID0gYXJyYXlfZ2V0KCRyZXBvc2l0b3J5X3NldF9ieV9ncm91
cCwgJGdyb3VwX2lkLCBhcnJheSgpKTsKICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCR0cmln
Z2VyYWJsZVsncmVwb3NpdG9yeUdyb3VwcyddLCBhcnJheSgKLSAgICAgICAgICAgICAgICAgICAg
J2lkJyA9PiAkZ3JvdXBfcm93WydyZXBvc2l0b3J5Z3JvdXBfaWQnXSwKKyAgICAgICAgICAgICAg
ICAgICAgJ2lkJyA9PiBpbnR2YWwoJGdyb3VwX3Jvd1sncmVwb3NpdG9yeWdyb3VwX2lkJ10pLAog
ICAgICAgICAgICAgICAgICAgICAnbmFtZScgPT4gJGdyb3VwX3Jvd1sncmVwb3NpdG9yeWdyb3Vw
X25hbWUnXSwKICAgICAgICAgICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJyA9PiAkZ3JvdXBfcm93
WydyZXBvc2l0b3J5Z3JvdXBfZGVzY3JpcHRpb24nXSwKICAgICAgICAgICAgICAgICAgICAgJ2hp
ZGRlbicgPT4gRGF0YWJhc2U6OmlzX3RydWUoJGdyb3VwX3Jvd1sncmVwb3NpdG9yeWdyb3VwX2hp
ZGRlbiddKSwKICAgICAgICAgICAgICAgICAgICAgJ2FjY2VwdHNDdXN0b21Sb290cycgPT4gRGF0
YWJhc2U6OmlzX3RydWUoJGdyb3VwX3Jvd1sncmVwb3NpdG9yeWdyb3VwX2FjY2VwdHNfcm9vdHMn
XSksCiAgICAgICAgICAgICAgICAgICAgICdyZXBvc2l0b3JpZXMnID0+ICRyZXBvc2l0b3J5X2xp
c3QpKTsKICAgICAgICAgICAgICAgICAvLyBWMiBVSSBjb21wYXRpYmlsaXR5LgotICAgICAgICAg
ICAgICAgIGZvcmVhY2ggKCRyZXBvc2l0b3J5X2xpc3QgYXMgJHJlcG9zaXRvcnlfZGF0YSkgewor
ICAgICAgICAgICAgICAgIGZvcmVhY2ggKCRyZXBvc2l0b3J5X2xpc3QgYXMgJiRyZXBvc2l0b3J5
X2RhdGEpIHsKICAgICAgICAgICAgICAgICAgICAgJHJlcG9zaXRvcnlfaWQgPSAkcmVwb3NpdG9y
eV9kYXRhWydyZXBvc2l0b3J5J107CiAgICAgICAgICAgICAgICAgICAgICRzZXQgPSAmJHRyaWdn
ZXJhYmxlX2lkX3RvX3JlcG9zaXRvcnlfc2V0WyR0cmlnZ2VyYWJsZV9pZF07CiAgICAgICAgICAg
ICAgICAgICAgIGlmIChhcnJheV9rZXlfZXhpc3RzKCRyZXBvc2l0b3J5X2lkLCAkc2V0KSkKQEAg
LTI1Myw3ICsyNjMsNyBAQCBjbGFzcyBNYW5pZmVzdEdlbmVyYXRvciB7CiAgICAgICAgICAgICAg
ICAgaWYgKCFhcnJheV9rZXlfZXhpc3RzKCR0cmlnZ2VyYWJsZV9pZCwgJGlkX3RvX3RyaWdnZXJh
YmxlKSkKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgJHRy
aWdnZXJhYmxlID0gJiRpZF90b190cmlnZ2VyYWJsZVskdHJpZ2dlcmFibGVfaWRdOwotICAgICAg
ICAgICAgICAgIGFycmF5X3B1c2goJHRyaWdnZXJhYmxlWydjb25maWd1cmF0aW9ucyddLCBhcnJh
eSgkcm93Wyd0cmlnY29uZmlnX3Rlc3QnXSwgJHJvd1sndHJpZ2NvbmZpZ19wbGF0Zm9ybSddKSk7
CisgICAgICAgICAgICAgICAgYXJyYXlfcHVzaCgkdHJpZ2dlcmFibGVbJ2NvbmZpZ3VyYXRpb25z
J10sIGFycmF5KGludHZhbCgkcm93Wyd0cmlnY29uZmlnX3Rlc3QnXSksIGludHZhbCgkcm93Wyd0
cmlnY29uZmlnX3BsYXRmb3JtJ10pKSk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KIAo=
</data>
<flag name="review"
          id="369193"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>