<?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>214054</bug_id>
          
          <creation_ts>2020-07-07 13:19:05 -0700</creation_ts>
          <short_desc>Heap Snapshot Object Graph view doesn&apos;t get populated in some cases when inspecting a JSContext</short_desc>
          <delta_ts>2020-07-08 11:52:17 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=214092</see_also>
          <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="Christopher Reid">chris.reid</reporter>
          <assigned_to name="Christopher Reid">chris.reid</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>joepeck</cc>
    
    <cc>ross.kirsling</cc>
    
    <cc>toyoshim</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>yoshiaki.jitsukawa</cc>
    
    <cc>yutak</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1669504</commentid>
    <comment_count>0</comment_count>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2020-07-07 13:19:05 -0700</bug_when>
    <thetext>When a JSContext is created with a non-null globalObjectClass passed to JSGlobalContextCreateInGroup, that root object is created as an instance of CallbackGlobalObject and not GlobalObject.
The Object graph view only searches for objects that are instances of GlobalObject in the JSContext case so nothing gets populated in this case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669524</commentid>
    <comment_count>1</comment_count>
      <attachid>403723</attachid>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2020-07-07 14:12:06 -0700</bug_when>
    <thetext>Created attachment 403723
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669643</commentid>
    <comment_count>2</comment_count>
      <attachid>403723</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-07-07 19:39:54 -0700</bug_when>
    <thetext>Comment on attachment 403723
patch

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

&gt; Source/WebInspectorUI/UserInterface/Views/HeapSnapshotDataGridTree.js:271
&gt; +        this.heapSnapshot.instancesWithClassName(&quot;CallbackGlobalObject&quot;, (instances) =&gt; {

While this is fine, it would be nice to show all roots rather than just a specific few, as these roots may change in the future :)

I believe we could expose a way to iterate `heapSnapshot._nodeOrdinalIsGCRoot`, calling `HeapSnapshot.prototype.serializeNode` on each.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669644</commentid>
    <comment_count>3</comment_count>
      <attachid>403723</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-07-07 19:40:31 -0700</bug_when>
    <thetext>Comment on attachment 403723
patch

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

&gt;&gt; Source/WebInspectorUI/UserInterface/Views/HeapSnapshotDataGridTree.js:271
&gt;&gt; +        this.heapSnapshot.instancesWithClassName(&quot;CallbackGlobalObject&quot;, (instances) =&gt; {
&gt; 
&gt; While this is fine, it would be nice to show all roots rather than just a specific few, as these roots may change in the future :)
&gt; 
&gt; I believe we could expose a way to iterate `heapSnapshot._nodeOrdinalIsGCRoot`, calling `HeapSnapshot.prototype.serializeNode` on each.

this can be done as a FIXME followup bug, or behind a `WI.Setting` btw :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669822</commentid>
    <comment_count>4</comment_count>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2020-07-08 11:25:13 -0700</bug_when>
    <thetext>(In reply to Devin Rousso from comment #3)
&gt; Comment on attachment 403723 [details]
&gt; patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=403723&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebInspectorUI/UserInterface/Views/HeapSnapshotDataGridTree.js:271
&gt; &gt;&gt; +        this.heapSnapshot.instancesWithClassName(&quot;CallbackGlobalObject&quot;, (instances) =&gt; {
&gt; &gt; 
&gt; &gt; While this is fine, it would be nice to show all roots rather than just a specific few, as these roots may change in the future :)
&gt; &gt; 
&gt; &gt; I believe we could expose a way to iterate `heapSnapshot._nodeOrdinalIsGCRoot`, calling `HeapSnapshot.prototype.serializeNode` on each.
&gt; 
&gt; this can be done as a FIXME followup bug, or behind a `WI.Setting` btw :)

Yeah that would be good to have.
I created a followup bug https://webkit.org/b/214092 and will point a FIXME to it when landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669825</commentid>
    <comment_count>5</comment_count>
      <attachid>403798</attachid>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2020-07-08 11:29:45 -0700</bug_when>
    <thetext>Created attachment 403798
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669837</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-08 11:51:06 -0700</bug_when>
    <thetext>Committed r264124: &lt;https://trac.webkit.org/changeset/264124&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 403798.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669838</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-07-08 11:52:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/65234451&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403723</attachid>
            <date>2020-07-07 14:12:06 -0700</date>
            <delta_ts>2020-07-08 11:29:42 -0700</delta_ts>
            <desc>patch</desc>
            <filename>214054.diff</filename>
            <type>text/plain</type>
            <size>1959</size>
            <attacher name="Christopher Reid">chris.reid</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDNhNTQyYWNkYzA4Yi4uZWQ3MjYyYTQ0OWRlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMC0wNy0wNyAgQ2hy
aXN0b3BoZXIgUmVpZCAgPGNocmlzLnJlaWRAc29ueS5jb20+CisKKyAgICAgICAgSGVhcCBTbmFw
c2hvdCBPYmplY3QgR3JhcGggdmlldyBkb2Vzbid0IGdldCBwb3B1bGF0ZWQgaW4gc29tZSBjYXNl
cyB3aGVuIGluc3BlY3RpbmcgYSBKU0NvbnRleHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDA1NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gSlNDb250ZXh0cyBhcmUgY3JlYXRlZCB3aXRoIGEg
Y3VzdG9tIGdsb2JhbE9iamVjdENsYXNzLCB0aGF0IG9iamVjdCBpcyBhbgorICAgICAgICBpbnN0
YW5jZSBvZiBDYWxsYmFja0dsb2JhbE9iamVjdCBhbmQgbm90IEdsb2JhbE9iamVjdCBzbyB0aGUg
dmlldyBkb2Vzbid0IGdldCBwb3B1bGF0ZWQuCisgICAgICAgIEFkZCBpbnN0YW5jZXMgb2YgQ2Fs
bGJhY2tHbG9iYWxPYmplY3QgdG8gdGhlIE9iamVjdCBHcmFwaCB2aWV3IGFzIHRvcCBsZXZlbCBu
b2Rlcy4KKworICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvSGVhcFNuYXBzaG90RGF0YUdy
aWRUcmVlLmpzOgorCiAyMDIwLTA3LTAzICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4K
IAogICAgICAgICBBZGQgIi1XbGl0ZXJhbC1jb252ZXJzaW9uIiB3YXJuaW5nIHRvIFhjb2RlIGJh
c2VkIGJ1aWxkcyBhbmQgZml4IHRoZSBpc3N1ZXMgaXQgZmluZHMKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0hlYXBTbmFwc2hvdERhdGFHcmlk
VHJlZS5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0hlYXBT
bmFwc2hvdERhdGFHcmlkVHJlZS5qcwppbmRleCBkMjhmMDZhZTEyMDEuLjczMzk0ODk2NDU2MCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvSGVh
cFNuYXBzaG90RGF0YUdyaWRUcmVlLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL0hlYXBTbmFwc2hvdERhdGFHcmlkVHJlZS5qcwpAQCAtMjY4LDYgKzI2
OCwxMSBAQCBXSS5IZWFwU25hcHNob3RPYmplY3RHcmFwaERhdGFHcmlkVHJlZSA9IGNsYXNzIEhl
YXBTbmFwc2hvdEluc3RhbmNlc0RhdGFHcmlkVHJlZQogICAgICAgICAgICAgICAgIHRoaXMuYXBw
ZW5kQ2hpbGQobmV3IFdJLkhlYXBTbmFwc2hvdEluc3RhbmNlRGF0YUdyaWROb2RlKGluc3RhbmNl
LCB0aGlzKSk7CiAgICAgICAgIH0pOwogCisgICAgICAgIHRoaXMuaGVhcFNuYXBzaG90Lmluc3Rh
bmNlc1dpdGhDbGFzc05hbWUoIkNhbGxiYWNrR2xvYmFsT2JqZWN0IiwgKGluc3RhbmNlcykgPT4g
eworICAgICAgICAgICAgZm9yIChsZXQgaW5zdGFuY2Ugb2YgaW5zdGFuY2VzKQorICAgICAgICAg
ICAgICAgIHRoaXMuYXBwZW5kQ2hpbGQobmV3IFdJLkhlYXBTbmFwc2hvdEluc3RhbmNlRGF0YUdy
aWROb2RlKGluc3RhbmNlLCB0aGlzKSk7CisgICAgICAgIH0pOworCiAgICAgICAgIHRoaXMuaGVh
cFNuYXBzaG90Lmluc3RhbmNlc1dpdGhDbGFzc05hbWUoIldpbmRvdyIsIChpbnN0YW5jZXMpID0+
IHsKICAgICAgICAgICAgIGZvciAobGV0IGluc3RhbmNlIG9mIGluc3RhbmNlcykgewogICAgICAg
ICAgICAgICAgIC8vIEZJWE1FOiBXaHkgaXMgdGhlIHdpbmRvdy5XaW5kb3cgRnVuY3Rpb24gY2xh
c3NpZmllZCBhcyBhIFdpbmRvdz8K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403798</attachid>
            <date>2020-07-08 11:29:45 -0700</date>
            <delta_ts>2020-07-08 11:51:06 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-214054-20200708112944.patch</filename>
            <type>text/plain</type>
            <size>2533</size>
            <attacher name="Christopher Reid">chris.reid</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0MDIyCndhcm5pbmc6IExGIHdpbGwgYmUgcmVwbGFjZWQg
YnkgQ1JMRiBpbiBTb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nLgpUaGUgZmlsZSB3aWxs
IGhhdmUgaXRzIG9yaWdpbmFsIGxpbmUgZW5kaW5ncyBpbiB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwppbmRleCAzYTU0MmFjZGMwOGI4ZmI5ZmY0Y2Y3ZGIyYTAx
ZTZiMDkzYmM1NDQ4Li5jMDMwODU2OGMwY2NlNDFiNTYxZDg2Nzc1OWNjNDhlM2Q4NWZjZThiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMC0wNy0wNyAgQ2hy
aXN0b3BoZXIgUmVpZCAgPGNocmlzLnJlaWRAc29ueS5jb20+CisKKyAgICAgICAgSGVhcCBTbmFw
c2hvdCBPYmplY3QgR3JhcGggdmlldyBkb2Vzbid0IGdldCBwb3B1bGF0ZWQgaW4gc29tZSBjYXNl
cyB3aGVuIGluc3BlY3RpbmcgYSBKU0NvbnRleHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDA1NAorCisgICAgICAgIFJldmlld2VkIGJ5IERldmlu
IFJvdXNzby4KKworICAgICAgICBXaGVuIEpTQ29udGV4dHMgYXJlIGNyZWF0ZWQgd2l0aCBhIGN1
c3RvbSBnbG9iYWxPYmplY3RDbGFzcywgdGhhdCBvYmplY3QgaXMgYW4KKyAgICAgICAgaW5zdGFu
Y2Ugb2YgQ2FsbGJhY2tHbG9iYWxPYmplY3QgYW5kIG5vdCBHbG9iYWxPYmplY3Qgc28gdGhlIHZp
ZXcgZG9lc24ndCBnZXQgcG9wdWxhdGVkLgorICAgICAgICBBZGQgaW5zdGFuY2VzIG9mIENhbGxi
YWNrR2xvYmFsT2JqZWN0IHRvIHRoZSBPYmplY3QgR3JhcGggdmlldyBhcyB0b3AgbGV2ZWwgbm9k
ZXMuCisKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0hlYXBTbmFwc2hvdERhdGFHcmlk
VHJlZS5qczoKKwogMjAyMC0wNy0wMyAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CiAK
ICAgICAgICAgQWRkICItV2xpdGVyYWwtY29udmVyc2lvbiIgd2FybmluZyB0byBYY29kZSBiYXNl
ZCBidWlsZHMgYW5kIGZpeCB0aGUgaXNzdWVzIGl0IGZpbmRzCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9IZWFwU25hcHNob3REYXRhR3JpZFRy
ZWUuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9IZWFwU25h
cHNob3REYXRhR3JpZFRyZWUuanMKaW5kZXggZDI4ZjA2YWUxMjAxNjQ0MjM5ZWQ1YWExZWVkNTJk
MjYyYTU2OTkyMC4uZTA5ZDQzZmI5MTRmNDlhNTc2NzFmNGZkMTZlZWNkZGI3ZDk0ODgxMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvSGVhcFNu
YXBzaG90RGF0YUdyaWRUcmVlLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0hlYXBTbmFwc2hvdERhdGFHcmlkVHJlZS5qcwpAQCAtMjYzLDExICsyNjMs
MTggQEAgV0kuSGVhcFNuYXBzaG90T2JqZWN0R3JhcGhEYXRhR3JpZFRyZWUgPSBjbGFzcyBIZWFw
U25hcHNob3RJbnN0YW5jZXNEYXRhR3JpZFRyZWUKIAogICAgIHBvcHVsYXRlVG9wTGV2ZWwoKQog
ICAgIHsKKyAgICAgICAgLy8gRklYTUU6IDxodHRwczovL3dlYmtpdC5vcmcvYi8yMTQwOTI+IFdl
YiBJbnNwZWN0b3I6IE9iamVjdCBHcmFwaCB2aWV3IHNob3VsZG4ndCBoYXJkY29kZSBjbGFzcyBu
YW1lcyBmb3Igcm9vdCBub2RlcworCiAgICAgICAgIHRoaXMuaGVhcFNuYXBzaG90Lmluc3RhbmNl
c1dpdGhDbGFzc05hbWUoIkdsb2JhbE9iamVjdCIsIChpbnN0YW5jZXMpID0+IHsKICAgICAgICAg
ICAgIGZvciAobGV0IGluc3RhbmNlIG9mIGluc3RhbmNlcykKICAgICAgICAgICAgICAgICB0aGlz
LmFwcGVuZENoaWxkKG5ldyBXSS5IZWFwU25hcHNob3RJbnN0YW5jZURhdGFHcmlkTm9kZShpbnN0
YW5jZSwgdGhpcykpOwogICAgICAgICB9KTsKIAorICAgICAgICB0aGlzLmhlYXBTbmFwc2hvdC5p
bnN0YW5jZXNXaXRoQ2xhc3NOYW1lKCJDYWxsYmFja0dsb2JhbE9iamVjdCIsIChpbnN0YW5jZXMp
ID0+IHsKKyAgICAgICAgICAgIGZvciAobGV0IGluc3RhbmNlIG9mIGluc3RhbmNlcykKKyAgICAg
ICAgICAgICAgICB0aGlzLmFwcGVuZENoaWxkKG5ldyBXSS5IZWFwU25hcHNob3RJbnN0YW5jZURh
dGFHcmlkTm9kZShpbnN0YW5jZSwgdGhpcykpOworICAgICAgICB9KTsKKwogICAgICAgICB0aGlz
LmhlYXBTbmFwc2hvdC5pbnN0YW5jZXNXaXRoQ2xhc3NOYW1lKCJXaW5kb3ciLCAoaW5zdGFuY2Vz
KSA9PiB7CiAgICAgICAgICAgICBmb3IgKGxldCBpbnN0YW5jZSBvZiBpbnN0YW5jZXMpIHsKICAg
ICAgICAgICAgICAgICAvLyBGSVhNRTogV2h5IGlzIHRoZSB3aW5kb3cuV2luZG93IEZ1bmN0aW9u
IGNsYXNzaWZpZWQgYXMgYSBXaW5kb3c/Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>