<?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>195655</bug_id>
          
          <creation_ts>2019-03-12 17:28:32 -0700</creation_ts>
          <short_desc>Web Inspector: Network - HAR Export duplicates blocked/send time if there was no dns/connect block</short_desc>
          <delta_ts>2019-03-13 12:06:24 -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>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Joseph Pecoraro">joepeck</assigned_to>
          <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>joepeck</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1515777</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2019-03-12 17:28:32 -0700</bug_when>
    <thetext>Network - HAR Export duplicates blocked/send time if there was no dns/connect block

Steps to Reproduce:
1. Inspect &lt;http://bogojoker.com/shell/&gt;
2. Show Network tab
3. Reload (ignoring caches)
4. Export HAR
  =&gt; Some resources that were stalled but no DNS will double count their &quot;queuing time&quot; as both the blocked and send:

Example:

    &quot;timings&quot;: {
 &gt;    &quot;blocked&quot;: 579.9859762191772,
      &quot;dns&quot;: -1,
      &quot;connect&quot;: -1,
      &quot;ssl&quot;: -1,
 &gt;    &quot;send&quot;: 579.9859762191772,
      &quot;wait&quot;: 41.41700267791748,
      &quot;receive&quot;: 59.1130256652832
    },

Note:
• One of these should win.
• I think it makes the most sense for blocked to be the large value and send to be 0 here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515779</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-03-12 17:32:24 -0700</bug_when>
    <thetext>&lt;rdar://problem/48831152&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515780</commentid>
    <comment_count>2</comment_count>
      <attachid>364480</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2019-03-12 17:33:40 -0700</bug_when>
    <thetext>Created attachment 364480
[PATCH] Proposed Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515801</commentid>
    <comment_count>3</comment_count>
      <attachid>364480</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-03-12 17:56:18 -0700</bug_when>
    <thetext>Comment on attachment 364480
[PATCH] Proposed Fix

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

r=me

&gt; LayoutTests/http/tests/inspector/network/har/har-basic.html:22
&gt; +        return value;

Should we `value.toFixed(2)` on any number that&apos;s logged, or is the floating point &quot;error&quot; more predictable than that?

&gt; LayoutTests/http/tests/inspector/network/har/har-basic.html:97
&gt; +            const requestHeaders = {};
&gt; +            const responseHeaders = {};

Considering that these shadow the same variables above, I&apos;d keep the `requestHeaders` and `responseHeaders` variables where they were in the HAR.Basic.FakeResource test case.

&gt; LayoutTests/http/tests/inspector/network/har/har-basic.html:107
&gt; +            let resource1 = resourceWithTimingData({

Style: all of the `let` for each `resourceWithTImingData` should be `const`, as the data/value doesn&apos;t change between executions.

&gt; LayoutTests/http/tests/inspector/network/har/har-basic.html:158
&gt; +            let {log: {entries: [entry1, entry2, entry3]}} = har;

🤮, but I guess it works

&gt; Source/WebInspectorUI/UserInterface/Controllers/HARBuilder.js:269
&gt; +            result.send = (domainLookupEnd || connectStart) ? (requestStart - (connectEnd || domainLookupEnd || startTime)) * 1000 : 0;

NIT: I&apos;d rather you use `connectStart` so that it matches the true case of the ternary.  You should also flip the order around so that matches too.

As you mentioned in person, if the ternary is true, we&apos;re guaranteed to not need the `startTime` as one of `connectEnd` or `domainLookupEnd` will be truthy.
```
    result.send = (connectEnd || domainLookupEnd) ? (requestStart - (connectEnd || domainLookupEnd)) * 1000 : 0;
```

You could also pull out the `connectEnd || domainLookupEnd` into a local temporary if you feel like it :P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1516082</commentid>
    <comment_count>4</comment_count>
      <attachid>364480</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2019-03-13 11:57:51 -0700</bug_when>
    <thetext>Comment on attachment 364480
[PATCH] Proposed Fix

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

&gt;&gt; LayoutTests/http/tests/inspector/network/har/har-basic.html:22
&gt;&gt; +        return value;
&gt; 
&gt; Should we `value.toFixed(2)` on any number that&apos;s logged, or is the floating point &quot;error&quot; more predictable than that?

The floating point error is regular, so I&apos;d rather just log the entire number.

&gt;&gt; LayoutTests/http/tests/inspector/network/har/har-basic.html:97
&gt;&gt; +            const responseHeaders = {};
&gt; 
&gt; Considering that these shadow the same variables above, I&apos;d keep the `requestHeaders` and `responseHeaders` variables where they were in the HAR.Basic.FakeResource test case.

Yeah, this was before I filtered them out entirely! I&apos;ll do that.

&gt;&gt; Source/WebInspectorUI/UserInterface/Controllers/HARBuilder.js:269
&gt;&gt; +            result.send = (domainLookupEnd || connectStart) ? (requestStart - (connectEnd || domainLookupEnd || startTime)) * 1000 : 0;
&gt; 
&gt; NIT: I&apos;d rather you use `connectStart` so that it matches the true case of the ternary.  You should also flip the order around so that matches too.
&gt; 
&gt; As you mentioned in person, if the ternary is true, we&apos;re guaranteed to not need the `startTime` as one of `connectEnd` or `domainLookupEnd` will be truthy.
&gt; ```
&gt;     result.send = (connectEnd || domainLookupEnd) ? (requestStart - (connectEnd || domainLookupEnd)) * 1000 : 0;
&gt; ```
&gt; 
&gt; You could also pull out the `connectEnd || domainLookupEnd` into a local temporary if you feel like it :P

Tweaked this a little.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1516087</commentid>
    <comment_count>5</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2019-03-13 12:06:24 -0700</bug_when>
    <thetext>https://trac.webkit.org/r242896</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>364480</attachid>
            <date>2019-03-12 17:33:40 -0700</date>
            <delta_ts>2019-03-13 11:57:51 -0700</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>export-3.patch</filename>
            <type>text/plain</type>
            <size>10663</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5NmZkZTExMGJiMS4uOTQ0NDEyNmQ1MTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAor
MjAxOS0wMy0xMiAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgorCisgICAg
ICAgIFdlYiBJbnNwZWN0b3I6IE5ldHdvcmsgLSBIQVIgRXhwb3J0IGR1cGxpY2F0ZXMgYmxvY2tl
ZC9zZW5kIHRpbWUgaWYgdGhlcmUgd2FzIG5vIGRucy9jb25uZWN0IGJsb2NrCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTU2NTUKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzQ4ODMxMTUyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy9pbnNwZWN0b3IvbmV0d29yay9oYXIvaGFyLWJh
c2ljLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2luc3BlY3Rvci9uZXR3b3Jr
L2hhci9oYXItYmFzaWMuaHRtbDoKKwogMjAxOS0wMy0xMiAgSm9zZXBoIFBlY29yYXJvICA8cGVj
b3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IE5ldHdvcmsgLSBIQVIg
SW1wb3J0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9uZXR3
b3JrL2hhci9oYXItYmFzaWMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9p
bnNwZWN0b3IvbmV0d29yay9oYXIvaGFyLWJhc2ljLWV4cGVjdGVkLnR4dAppbmRleCA2ZTk5ZWJh
YWVmZS4uNDhmYzhiYjVlZjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5z
cGVjdG9yL25ldHdvcmsvaGFyL2hhci1iYXNpYy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvbmV0d29yay9oYXIvaGFyLWJhc2ljLWV4cGVjdGVkLnR4
dApAQCAtMTQyLDMgKzE0Miw3OCBAQCBCYXNpYyB0ZXN0cyBmb3IgSEFSLgogICB9CiB9CiAKKy0t
IFJ1bm5pbmcgdGVzdCBjYXNlOiBIQVIuQmFzaWMuVGltaW5nCitQQVNTOiBIQVIgVGltaW5ncyBm
b3IgZW50cnkxIHNob3VsZCBhZGQgdXAgdG8gfjUwMG1zIGJlZm9yZSB3YWl0LgorUEFTUzogSEFS
IFRpbWluZ3MgZm9yIGVudHJ5MiBzaG91bGQgYWRkIHVwIHRvIH41MDBtcyBiZWZvcmUgd2FpdC4K
K1BBU1M6IEhBUiBUaW1pbmdzIGZvciBlbnRyeTMgc2hvdWxkIGFkZCB1cCB0byB+NTAwbXMgYmVm
b3JlIHdhaXQuCit7CisgICJsb2ciOiB7CisgICAgInZlcnNpb24iOiAiMS4yIiwKKyAgICAiY3Jl
YXRvciI6ICI8ZmlsdGVyZWQ+IiwKKyAgICAicGFnZXMiOiBbCisgICAgICB7CisgICAgICAgICJz
dGFydGVkRGF0ZVRpbWUiOiAiIiwKKyAgICAgICAgImlkIjogInBhZ2VfMCIsCisgICAgICAgICJ0
aXRsZSI6ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvaW5zcGVjdG9yL25ldHdvcmsvaGFyL2hhci1i
YXNpYy5odG1sIiwKKyAgICAgICAgInBhZ2VUaW1pbmdzIjoge30KKyAgICAgIH0KKyAgICBdLAor
ICAgICJlbnRyaWVzIjogWworICAgICAgeworICAgICAgICAicGFnZXJlZiI6ICJwYWdlXzAiLAor
ICAgICAgICAic3RhcnRlZERhdGVUaW1lIjogIjIwMTctMTAtMjNUMDE6NTU6NTIuNjk0WiIsCisg
ICAgICAgICJ0aW1lIjogNzAwLAorICAgICAgICAicmVxdWVzdCI6ICI8ZmlsdGVyZWQ+IiwKKyAg
ICAgICAgInJlc3BvbnNlIjogIjxmaWx0ZXJlZD4iLAorICAgICAgICAiY2FjaGUiOiB7fSwKKyAg
ICAgICAgInRpbWluZ3MiOiB7CisgICAgICAgICAgImJsb2NrZWQiOiA1MDAsCisgICAgICAgICAg
ImRucyI6IC0xLAorICAgICAgICAgICJjb25uZWN0IjogLTEsCisgICAgICAgICAgInNzbCI6IC0x
LAorICAgICAgICAgICJzZW5kIjogMCwKKyAgICAgICAgICAid2FpdCI6IDEwMC4wMDAwMDAwMDAw
MDAwOSwKKyAgICAgICAgICAicmVjZWl2ZSI6IDk5Ljk5OTk5OTk5OTk5OTg3CisgICAgICAgIH0s
CisgICAgICAgICJfZmV0Y2hUeXBlIjogIk5ldHdvcmsgTG9hZCIKKyAgICAgIH0sCisgICAgICB7
CisgICAgICAgICJwYWdlcmVmIjogInBhZ2VfMCIsCisgICAgICAgICJzdGFydGVkRGF0ZVRpbWUi
OiAiMjAxNy0xMC0yM1QwMTo1NTo1Mi42OTRaIiwKKyAgICAgICAgInRpbWUiOiA3MDAsCisgICAg
ICAgICJyZXF1ZXN0IjogIjxmaWx0ZXJlZD4iLAorICAgICAgICAicmVzcG9uc2UiOiAiPGZpbHRl
cmVkPiIsCisgICAgICAgICJjYWNoZSI6IHt9LAorICAgICAgICAidGltaW5ncyI6IHsKKyAgICAg
ICAgICAiYmxvY2tlZCI6IDEwMC4wMDAwMDAwMDAwMDAwOSwKKyAgICAgICAgICAiZG5zIjogOTku
OTk5OTk5OTk5OTk5ODcsCisgICAgICAgICAgImNvbm5lY3QiOiAtMSwKKyAgICAgICAgICAic3Ns
IjogLTEsCisgICAgICAgICAgInNlbmQiOiAzMDAuMDAwMDAwMDAwMDAwMDYsCisgICAgICAgICAg
IndhaXQiOiAxMDAuMDAwMDAwMDAwMDAwMDksCisgICAgICAgICAgInJlY2VpdmUiOiA5OS45OTk5
OTk5OTk5OTk4NworICAgICAgICB9LAorICAgICAgICAiX2ZldGNoVHlwZSI6ICJOZXR3b3JrIExv
YWQiCisgICAgICB9LAorICAgICAgeworICAgICAgICAicGFnZXJlZiI6ICJwYWdlXzAiLAorICAg
ICAgICAic3RhcnRlZERhdGVUaW1lIjogIjIwMTctMTAtMjNUMDE6NTU6NTIuNjk0WiIsCisgICAg
ICAgICJ0aW1lIjogNzAwLAorICAgICAgICAicmVxdWVzdCI6ICI8ZmlsdGVyZWQ+IiwKKyAgICAg
ICAgInJlc3BvbnNlIjogIjxmaWx0ZXJlZD4iLAorICAgICAgICAiY2FjaGUiOiB7fSwKKyAgICAg
ICAgInRpbWluZ3MiOiB7CisgICAgICAgICAgImJsb2NrZWQiOiAzMDAuMDAwMDAwMDAwMDAwMDYs
CisgICAgICAgICAgImRucyI6IC0xLAorICAgICAgICAgICJjb25uZWN0IjogOTkuOTk5OTk5OTk5
OTk5ODcsCisgICAgICAgICAgInNzbCI6IC0xLAorICAgICAgICAgICJzZW5kIjogMTAwLjAwMDAw
MDAwMDAwMDA5LAorICAgICAgICAgICJ3YWl0IjogMTAwLjAwMDAwMDAwMDAwMDA5LAorICAgICAg
ICAgICJyZWNlaXZlIjogOTkuOTk5OTk5OTk5OTk5ODcKKyAgICAgICAgfSwKKyAgICAgICAgIl9m
ZXRjaFR5cGUiOiAiTmV0d29yayBMb2FkIgorICAgICAgfQorICAgIF0KKyAgfQorfQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9uZXR3b3JrL2hhci9oYXIt
YmFzaWMuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVjdG9yL25ldHdvcmsvaGFy
L2hhci1iYXNpYy5odG1sCmluZGV4IGIzMjE3MjI1YmM0Li5kYzZlYmJmMDZkOSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvbmV0d29yay9oYXIvaGFyLWJhc2lj
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvbmV0d29yay9oYXIv
aGFyLWJhc2ljLmh0bWwKQEAgLTE1LDYgKzE1LDI2IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAg
ICByZXR1cm4gdmFsdWU7CiAgICAgfQogCisgICAgY29uc3QgdGltaW5nRmlsdGVyU2V0ID0gbmV3
IFNldChbImNyZWF0b3IiLCAiYnJvd3NlciIsICJyZXF1ZXN0IiwgInJlc3BvbnNlIl0pOworICAg
IGZ1bmN0aW9uIEhBUkpTT05UaW1pbmdGaWx0ZXIoa2V5LCB2YWx1ZSkgeworICAgICAgICBpZiAo
dGltaW5nRmlsdGVyU2V0LmhhcyhrZXkpKQorICAgICAgICAgICAgcmV0dXJuICI8ZmlsdGVyZWQ+
IjsKKyAgICAgICAgcmV0dXJuIHZhbHVlOworICAgIH0KKworICAgIGNvbnN0IHVybCA9ICJodHRw
czovL2V4YW1wbGUuY29tL2Zha2UuanMiOworICAgIGNvbnN0IG1pbWVUeXBlID0gInRleHQvamF2
YXNjcmlwdCI7CisgICAgY29uc3QgdHlwZSA9IFdJLlJlc291cmNlLlR5cGUuU2NyaXB0OworICAg
IGNvbnN0IHJlcXVlc3RNZXRob2QgPSAiR0VUIjsKKyAgICBjb25zdCByZXF1ZXN0SGVhZGVycyA9
IHsiVGVzdC1SZXF1ZXN0LUhlYWRlciI6ICJUZXN0IFJlcXVlc3QgSGVhZGVyIFZhbHVlIn07Cisg
ICAgY29uc3QgcmVzcG9uc2VIZWFkZXJzID0geyJUZXN0LVJlc3BvbnNlLUhlYWRlciI6ICJUZXN0
IFJlc3BvbnNlIEhlYWRlciBWYWx1ZSJ9OworICAgIGNvbnN0IHN0YXR1c0NvZGUgPSAyMDA7Cisg
ICAgY29uc3Qgc3RhdHVzVGV4dCA9ICJPSyI7CisgICAgY29uc3Qgc291cmNlID0gIm5ldHdvcmsi
OworICAgIGNvbnN0IHJlcXVlc3RTZW50V2FsbHRpbWUgPSAxNTA4NzIzNzUyNjk0IC8gMTAwMDsg
Ly8gU3VuIE9jdCAyMiAyMDE3IDE4OjU1OjUyIEdNVC0wNzAwLCB3aGVuIHRoaXMgdGVzdCB3YXMg
d3JpdHRlbi4KKyAgICBjb25zdCB0aW1lc3RhbXAgPSB1bmRlZmluZWQ7CisgICAgY29uc3Qgc2l6
ZSA9IDEyMzQ7CisKICAgICBsZXQgc3VpdGUgPSBJbnNwZWN0b3JUZXN0LmNyZWF0ZUFzeW5jU3Vp
dGUoIkhBUi5CYXNpYyIpOwogCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewpAQCAtMzEsMTggKzUx
LDYgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgICAgIGRlc2NyaXB0aW9uOiAiU2hvdWxkIGJlIGFi
bGUgdG8gZ2VuZXJhdGUgYSBIQVIgd2l0aCByZXNvdXJjZXMuIiwKICAgICAgICAgYXN5bmMgdGVz
dCgpIHsKICAgICAgICAgICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgaGF2ZSBhbiBlYXNpZXIgd2F5
IHRvIGNvbnN0cnVjdCBhIFJlc291cmNlIHdpdGggbW9jayBkYXRhLgotICAgICAgICAgICAgY29u
c3QgdXJsID0gImh0dHBzOi8vZXhhbXBsZS5jb20vZmFrZS5qcyI7Ci0gICAgICAgICAgICBjb25z
dCBtaW1lVHlwZSA9ICJ0ZXh0L2phdmFzY3JpcHQiOwotICAgICAgICAgICAgY29uc3QgdHlwZSA9
IFdJLlJlc291cmNlLlR5cGUuU2NyaXB0OwotICAgICAgICAgICAgY29uc3QgcmVxdWVzdE1ldGhv
ZCA9ICJHRVQiOwotICAgICAgICAgICAgY29uc3QgcmVxdWVzdEhlYWRlcnMgPSB7IlRlc3QtUmVx
dWVzdC1IZWFkZXIiOiAiVGVzdCBSZXF1ZXN0IEhlYWRlciBWYWx1ZSJ9OwotICAgICAgICAgICAg
Y29uc3QgcmVzcG9uc2VIZWFkZXJzID0geyJUZXN0LVJlc3BvbnNlLUhlYWRlciI6ICJUZXN0IFJl
c3BvbnNlIEhlYWRlciBWYWx1ZSJ9OwotICAgICAgICAgICAgY29uc3Qgc3RhdHVzQ29kZSA9IDIw
MDsKLSAgICAgICAgICAgIGNvbnN0IHN0YXR1c1RleHQgPSAiT0siOwotICAgICAgICAgICAgY29u
c3Qgc291cmNlID0gIm5ldHdvcmsiOwotICAgICAgICAgICAgY29uc3QgcmVxdWVzdFNlbnRXYWxs
dGltZSA9IDE1MDg3MjM3NTI2OTQgLyAxMDAwOyAvLyBTdW4gT2N0IDIyIDIwMTcgMTg6NTU6NTIg
R01ULTA3MDAsIHdoZW4gdGhpcyB0ZXN0IHdhcyB3cml0dGVuLgotICAgICAgICAgICAgY29uc3Qg
dGltZXN0YW1wID0gdW5kZWZpbmVkOwotICAgICAgICAgICAgY29uc3Qgc2l6ZSA9IDEyMzQ7CiAg
ICAgICAgICAgICBjb25zdCB0aW1pbmdEYXRhID0gewogICAgICAgICAgICAgICAgIHN0YXJ0VGlt
ZTogMSwKICAgICAgICAgICAgICAgICBkb21haW5Mb29rdXBTdGFydDogMTAwLApAQCAtODEsNiAr
ODksODAgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgICAgIH0KICAgICB9KTsKIAorICAgIHN1aXRl
LmFkZFRlc3RDYXNlKHsKKyAgICAgICAgbmFtZTogIkhBUi5CYXNpYy5UaW1pbmciLAorICAgICAg
ICBkZXNjcmlwdGlvbjogIlRlc3QgZm9yIEhBUiB0aW1pbmcgZGF0YSB3aGVuIHZhcmlvdXMgZG5z
L2Nvbm5lY3Qgc2VjdGlvbnMgYXJlIGVtcHR5LiIsCisgICAgICAgIGFzeW5jIHRlc3QoKSB7Cisg
ICAgICAgICAgICBjb25zdCByZXF1ZXN0SGVhZGVycyA9IHt9OworICAgICAgICAgICAgY29uc3Qg
cmVzcG9uc2VIZWFkZXJzID0ge307CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIHJlc291cmNlV2l0
aFRpbWluZ0RhdGEodGltaW5nRGF0YSkgeworICAgICAgICAgICAgICAgIGxldCByZXNvdXJjZSA9
IG5ldyBXSS5SZXNvdXJjZSh1cmwsIHttaW1lVHlwZSwgdHlwZSwgcmVxdWVzdE1ldGhvZCwgcmVx
dWVzdEhlYWRlcnMsIHJlcXVlc3RTZW50V2FsbHRpbWV9KTsKKyAgICAgICAgICAgICAgICByZXNv
dXJjZS51cGRhdGVGb3JSZXNwb25zZSh1cmwsIG1pbWVUeXBlLCB0eXBlLCByZXNwb25zZUhlYWRl
cnMsIHN0YXR1c0NvZGUsIHN0YXR1c1RleHQsIHRpbWVzdGFtcCwgdGltaW5nRGF0YSwgc291cmNl
KTsKKyAgICAgICAgICAgICAgICByZXNvdXJjZS5pbmNyZWFzZVNpemUoc2l6ZSk7CisgICAgICAg
ICAgICAgICAgcmVzb3VyY2UubWFya0FzRmluaXNoZWQoMS43KTsKKyAgICAgICAgICAgICAgICBy
ZXR1cm4gcmVzb3VyY2U7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGxldCByZXNvdXJj
ZTEgPSByZXNvdXJjZVdpdGhUaW1pbmdEYXRhKHsKKyAgICAgICAgICAgICAgICBzdGFydFRpbWU6
IDEsCisgICAgICAgICAgICAgICAgZG9tYWluTG9va3VwU3RhcnQ6IE5hTiwKKyAgICAgICAgICAg
ICAgICBkb21haW5Mb29rdXBFbmQ6IE5hTiwKKyAgICAgICAgICAgICAgICBjb25uZWN0U3RhcnQ6
IE5hTiwKKyAgICAgICAgICAgICAgICBjb25uZWN0RW5kOiBOYU4sCisgICAgICAgICAgICAgICAg
c2VjdXJlQ29ubmVjdGlvblN0YXJ0OiBOYU4sCisgICAgICAgICAgICAgICAgcmVxdWVzdFN0YXJ0
OiA1MDAsCisgICAgICAgICAgICAgICAgcmVzcG9uc2VTdGFydDogNjAwLAorICAgICAgICAgICAg
ICAgIHJlc3BvbnNlRW5kOiA3MDAsCisgICAgICAgICAgICB9KTsKKworICAgICAgICAgICAgbGV0
IHJlc291cmNlMiA9IHJlc291cmNlV2l0aFRpbWluZ0RhdGEoeworICAgICAgICAgICAgICAgIHN0
YXJ0VGltZTogMSwKKyAgICAgICAgICAgICAgICBkb21haW5Mb29rdXBTdGFydDogMTAwLAorICAg
ICAgICAgICAgICAgIGRvbWFpbkxvb2t1cEVuZDogMjAwLAorICAgICAgICAgICAgICAgIGNvbm5l
Y3RTdGFydDogTmFOLAorICAgICAgICAgICAgICAgIGNvbm5lY3RFbmQ6IE5hTiwKKyAgICAgICAg
ICAgICAgICBzZWN1cmVDb25uZWN0aW9uU3RhcnQ6IE5hTiwKKyAgICAgICAgICAgICAgICByZXF1
ZXN0U3RhcnQ6IDUwMCwKKyAgICAgICAgICAgICAgICByZXNwb25zZVN0YXJ0OiA2MDAsCisgICAg
ICAgICAgICAgICAgcmVzcG9uc2VFbmQ6IDcwMCwKKyAgICAgICAgICAgIH0pOworCisgICAgICAg
ICAgICBsZXQgcmVzb3VyY2UzID0gcmVzb3VyY2VXaXRoVGltaW5nRGF0YSh7CisgICAgICAgICAg
ICAgICAgc3RhcnRUaW1lOiAxLAorICAgICAgICAgICAgICAgIGRvbWFpbkxvb2t1cFN0YXJ0OiBO
YU4sCisgICAgICAgICAgICAgICAgZG9tYWluTG9va3VwRW5kOiBOYU4sCisgICAgICAgICAgICAg
ICAgY29ubmVjdFN0YXJ0OiAzMDAsCisgICAgICAgICAgICAgICAgY29ubmVjdEVuZDogNDAwLAor
ICAgICAgICAgICAgICAgIHNlY3VyZUNvbm5lY3Rpb25TdGFydDogTmFOLAorICAgICAgICAgICAg
ICAgIHJlcXVlc3RTdGFydDogNTAwLAorICAgICAgICAgICAgICAgIHJlc3BvbnNlU3RhcnQ6IDYw
MCwKKyAgICAgICAgICAgICAgICByZXNwb25zZUVuZDogNzAwLAorICAgICAgICAgICAgfSk7CisK
KyAgICAgICAgICAgIGZ1bmN0aW9uIHN1bVRpbWluZ0RhdGFUaWxsV2FpdChlbnRyeSkgeworICAg
ICAgICAgICAgICAgIGxldCB7YmxvY2tlZCwgZG5zLCBjb25uZWN0LCBzZW5kfSA9IGVudHJ5LnRp
bWluZ3M7CisgICAgICAgICAgICAgICAgbGV0IHN1bSA9IDA7CisgICAgICAgICAgICAgICAgaWYg
KGJsb2NrZWQgPiAwKQorICAgICAgICAgICAgICAgICAgICBzdW0gKz0gYmxvY2tlZDsKKyAgICAg
ICAgICAgICAgICBpZiAoZG5zID4gMCkKKyAgICAgICAgICAgICAgICAgICAgc3VtICs9IGRuczsK
KyAgICAgICAgICAgICAgICBpZiAoY29ubmVjdCA+IDApCisgICAgICAgICAgICAgICAgICAgIHN1
bSArPSBjb25uZWN0OworICAgICAgICAgICAgICAgIGlmIChzZW5kID4gMCkKKyAgICAgICAgICAg
ICAgICAgICAgc3VtICs9IHNlbmQ7CisgICAgICAgICAgICAgICAgcmV0dXJuIHN1bTsKKyAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgbGV0IGhhciA9IGF3YWl0IFdJLkhBUkJ1aWxkZXIuYnVp
bGRBcmNoaXZlKFtyZXNvdXJjZTEsIHJlc291cmNlMiwgcmVzb3VyY2UzXSk7CisgICAgICAgICAg
ICBsZXQge2xvZzoge2VudHJpZXM6IFtlbnRyeTEsIGVudHJ5MiwgZW50cnkzXX19ID0gaGFyOwor
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RFcXVhbFdpdGhBY2N1cmFjeShzdW1UaW1p
bmdEYXRhVGlsbFdhaXQoZW50cnkxKSwgNTAwLCAwLjAwMSwgYEhBUiBUaW1pbmdzIGZvciBlbnRy
eTEgc2hvdWxkIGFkZCB1cCB0byB+NTAwbXMgYmVmb3JlIHdhaXQuYCk7CisgICAgICAgICAgICBJ
bnNwZWN0b3JUZXN0LmV4cGVjdEVxdWFsV2l0aEFjY3VyYWN5KHN1bVRpbWluZ0RhdGFUaWxsV2Fp
dChlbnRyeTIpLCA1MDAsIDAuMDAxLCBgSEFSIFRpbWluZ3MgZm9yIGVudHJ5MiBzaG91bGQgYWRk
IHVwIHRvIH41MDBtcyBiZWZvcmUgd2FpdC5gKTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3Qu
ZXhwZWN0RXF1YWxXaXRoQWNjdXJhY3koc3VtVGltaW5nRGF0YVRpbGxXYWl0KGVudHJ5MyksIDUw
MCwgMC4wMDEsIGBIQVIgVGltaW5ncyBmb3IgZW50cnkzIHNob3VsZCBhZGQgdXAgdG8gfjUwMG1z
IGJlZm9yZSB3YWl0LmApOworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5qc29uKGhhciwgSEFS
SlNPTlRpbWluZ0ZpbHRlcik7CisgICAgICAgIH0KKyAgICB9KTsKKwogICAgIHN1aXRlLnJ1blRl
c3RDYXNlc0FuZEZpbmlzaCgpOwogfQogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwpp
bmRleCBjZmNkNjY3MWFhYy4uNGVmYTE2Yzc0NTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTEyICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFyb0Bh
cHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogTmV0d29yayAtIEhBUiBFeHBvcnQg
ZHVwbGljYXRlcyBibG9ja2VkL3NlbmQgdGltZSBpZiB0aGVyZSB3YXMgbm8gZG5zL2Nvbm5lY3Qg
YmxvY2sKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5
NTY1NQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDg4MzExNTI+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL0NvbnRyb2xs
ZXJzL0hBUkJ1aWxkZXIuanM6CisgICAgICAgIChXSS5IQVJCdWlsZGVyLnRpbWluZ3MpOgorCiAy
MDE5LTAzLTEyICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAg
ICAgV2ViIEluc3BlY3RvcjogTmV0d29yayAtIEhBUiBJbXBvcnQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0hBUkJ1aWxkZXIuanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9IQVJCdWls
ZGVyLmpzCmluZGV4IGIwOGQyYjdiZTgwLi5mNjE1NTM5ZmI3NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvSEFSQnVpbGRlci5qcwor
KysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9IQVJC
dWlsZGVyLmpzCkBAIC0yNjIsNyArMjYyLDEyIEBAIFdJLkhBUkJ1aWxkZXIgPSBjbGFzcyBIQVJC
dWlsZGVyCiAgICAgICAgICAgICAgICAgcmVzdWx0LmNvbm5lY3QgPSAoKGNvbm5lY3RFbmQgfHwg
cmVxdWVzdFN0YXJ0KSAtIGNvbm5lY3RTdGFydCkgKiAxMDAwOwogICAgICAgICAgICAgaWYgKHNl
Y3VyZUNvbm5lY3Rpb25TdGFydCkKICAgICAgICAgICAgICAgICByZXN1bHQuc3NsID0gKChjb25u
ZWN0RW5kIHx8IHJlcXVlc3RTdGFydCkgLSBzZWN1cmVDb25uZWN0aW9uU3RhcnQpICogMTAwMDsK
LSAgICAgICAgICAgIHJlc3VsdC5zZW5kID0gKHJlcXVlc3RTdGFydCAtIChjb25uZWN0RW5kIHx8
IGRvbWFpbkxvb2t1cEVuZCB8fCBzdGFydFRpbWUpKSAqIDEwMDA7CisKKyAgICAgICAgICAgIC8v
IElmIGFsbCB0aGUgdGltZSBiZWZvcmUgcmVxdWVzdFN0YXJ0IHdhcyBpbmNsdWRlZCBpbiBibG9j
a2VkLCB0aGVuIG1ha2Ugc2VuZCB0aW1lIHplcm8KKyAgICAgICAgICAgIC8vIGFzIHNlbmQgdGlt
ZSBpcyBlc3NlbnRpYWxseSBqdXN0IGJsb2NrZWQgdGltZSBhZnRlciBkbnMgLyBjb25uZWN0aW9u
IHRpbWUsIGFuZCB3ZQorICAgICAgICAgICAgLy8gZG8gbm90IHdhbnQgdG8gZG91YmxlIGNvdW50
IGl0LgorICAgICAgICAgICAgcmVzdWx0LnNlbmQgPSAoZG9tYWluTG9va3VwRW5kIHx8IGNvbm5l
Y3RTdGFydCkgPyAocmVxdWVzdFN0YXJ0IC0gKGNvbm5lY3RFbmQgfHwgZG9tYWluTG9va3VwRW5k
IHx8IHN0YXJ0VGltZSkpICogMTAwMCA6IDA7CisKICAgICAgICAgICAgIHJlc3VsdC53YWl0ID0g
KHJlc3BvbnNlU3RhcnQgLSByZXF1ZXN0U3RhcnQpICogMTAwMDsKICAgICAgICAgICAgIHJlc3Vs
dC5yZWNlaXZlID0gKHJlc3BvbnNlRW5kIC0gcmVzcG9uc2VTdGFydCkgKiAxMDAwOwogICAgICAg
ICB9Cg==
</data>
<flag name="review"
          id="380998"
          type_id="1"
          status="+"
          setter="hi"
    />
          </attachment>
      

    </bug>

</bugzilla>