<?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>225059</bug_id>
          
          <creation_ts>2021-04-26 09:58:56 -0700</creation_ts>
          <short_desc>[Cocoa] Improve memory efficiency of Sandbox operations</short_desc>
          <delta_ts>2021-04-26 14:21:47 -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>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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="Brent Fulgham">bfulgham</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>bfulgham</cc>
    
    <cc>darin</cc>
    
    <cc>pvollan</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1754244</commentid>
    <comment_count>0</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2021-04-26 09:58:56 -0700</bug_when>
    <thetext>We have a number of places in WebKit where we generate sandbox extensions to hand to other processes. These frequently involve creating Vectors of strings that are held for the lifetime of the UIProcess.

We could do a better job by switching from Vector&lt;ASCILiteral&gt; to something like std::initializer_list&lt;ASCIILiteral&gt;. We don&apos;t use the various powers of these Vectors beyond being a container that we can iterate through.

We should teach the Sandbox classes to consume these data types, and avoid holding onto this memory during the long stretches of time when they are not used.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754246</commentid>
    <comment_count>1</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2021-04-26 09:59:19 -0700</bug_when>
    <thetext>Based on some review comments Darin left in Bug 225004.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754247</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-04-26 10:00:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/77162420&gt;</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>