<?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>173721</bug_id>
          
          <creation_ts>2017-06-22 09:41:02 -0700</creation_ts>
          <short_desc>REGRESSION (r218419): 7 leaks in PluginLoadClientPolicies.mm</short_desc>
          <delta_ts>2017-06-25 16:41:51 -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>Tools / Tests</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=173689</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>173472</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="David Kilzer (:ddkilzer)">ddkilzer</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>joepeck</cc>
    
    <cc>lforschler</cc>
    
    <cc>mitz</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1321932</commentid>
    <comment_count>0</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2017-06-22 09:41:02 -0700</bug_when>
    <thetext>Use autoreleased methods to create NSMutableDictionary and
NSNumber objects instead of +1 retained methods.

* TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm:
(TEST):</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1321933</commentid>
    <comment_count>1</comment_count>
      <attachid>313638</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2017-06-22 09:42:03 -0700</bug_when>
    <thetext>Created attachment 313638
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1321989</commentid>
    <comment_count>2</comment_count>
      <attachid>313646</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2017-06-22 11:37:55 -0700</bug_when>
    <thetext>Created attachment 313646
Patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1321999</commentid>
    <comment_count>3</comment_count>
      <attachid>313646</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-06-22 11:56:51 -0700</bug_when>
    <thetext>Comment on attachment 313646
Patch v2

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

&gt; Tools/TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm:71
&gt; +    RetainPtr&lt;NSMutableDictionary&gt; newPolicies = adoptNS([policies mutableCopy]);

r=me, but I find this way harder to read.

How about switching to ObjC literal syntax? You&apos;d end up with something like:

    RetainPtr&lt;NSMutableDictionary&gt; newPolicies = adoptNS([policies mutableCopy]);
    [newPolicies removeObjectForKey:@&quot;apple.com&quot;];
    newPolicies.get()[@&quot;google.com&quot;] = @{
        @&quot;com.macromedia.Flash Player.plugin&quot;: @{
            @&quot;26.0.0.126&quot;: @(kWKPluginLoadClientPolicyAllowAlways),
        },
        @&quot;com.apple.QuickTime.plugin&quot;: @{
            @&quot;1.0&quot;: @(kWKPluginLoadClientPolicyBlock),
            @&quot;1.1&quot;: @(kWKPluginLoadClientPolicyAllow),
        },
    };</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1322041</commentid>
    <comment_count>4</comment_count>
      <attachid>313646</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2017-06-22 14:03:52 -0700</bug_when>
    <thetext>Comment on attachment 313646
Patch v2

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

&gt;&gt; Tools/TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm:71
&gt;&gt; +    RetainPtr&lt;NSMutableDictionary&gt; newPolicies = adoptNS([policies mutableCopy]);
&gt; 
&gt; r=me, but I find this way harder to read.
&gt; 
&gt; How about switching to ObjC literal syntax? You&apos;d end up with something like:
&gt; 
&gt;     RetainPtr&lt;NSMutableDictionary&gt; newPolicies = adoptNS([policies mutableCopy]);
&gt;     [newPolicies removeObjectForKey:@&quot;apple.com&quot;];
&gt;     newPolicies.get()[@&quot;google.com&quot;] = @{
&gt;         @&quot;com.macromedia.Flash Player.plugin&quot;: @{
&gt;             @&quot;26.0.0.126&quot;: @(kWKPluginLoadClientPolicyAllowAlways),
&gt;         },
&gt;         @&quot;com.apple.QuickTime.plugin&quot;: @{
&gt;             @&quot;1.0&quot;: @(kWKPluginLoadClientPolicyBlock),
&gt;             @&quot;1.1&quot;: @(kWKPluginLoadClientPolicyAllow),
&gt;         },
&gt;     };

I like this better, but it has the (slight) disadvantage of putting all the objects in an autoreleasepool.

I&apos;ll switch to adoptNS().get() instead, as we talked about in person.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1322063</commentid>
    <comment_count>5</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2017-06-22 14:36:20 -0700</bug_when>
    <thetext>Committed r218719: &lt;http://trac.webkit.org/changeset/218719&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1322742</commentid>
    <comment_count>6</comment_count>
      <attachid>313646</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-06-25 16:41:51 -0700</bug_when>
    <thetext>Comment on attachment 313646
Patch v2

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

&gt;&gt;&gt; Tools/TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm:71
&gt;&gt;&gt; +    RetainPtr&lt;NSMutableDictionary&gt; newPolicies = adoptNS([policies mutableCopy]);
&gt;&gt; 
&gt;&gt; r=me, but I find this way harder to read.
&gt;&gt; 
&gt;&gt; How about switching to ObjC literal syntax? You&apos;d end up with something like:
&gt;&gt; 
&gt;&gt;     RetainPtr&lt;NSMutableDictionary&gt; newPolicies = adoptNS([policies mutableCopy]);
&gt;&gt;     [newPolicies removeObjectForKey:@&quot;apple.com&quot;];
&gt;&gt;     newPolicies.get()[@&quot;google.com&quot;] = @{
&gt;&gt;         @&quot;com.macromedia.Flash Player.plugin&quot;: @{
&gt;&gt;             @&quot;26.0.0.126&quot;: @(kWKPluginLoadClientPolicyAllowAlways),
&gt;&gt;         },
&gt;&gt;         @&quot;com.apple.QuickTime.plugin&quot;: @{
&gt;&gt;             @&quot;1.0&quot;: @(kWKPluginLoadClientPolicyBlock),
&gt;&gt;             @&quot;1.1&quot;: @(kWKPluginLoadClientPolicyAllow),
&gt;&gt;         },
&gt;&gt;     };
&gt; 
&gt; I like this better, but it has the (slight) disadvantage of putting all the objects in an autoreleasepool.
&gt; 
&gt; I&apos;ll switch to adoptNS().get() instead, as we talked about in person.

Readability seems *so* much more important than putting a few objects into the autorelease pool.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>313638</attachid>
            <date>2017-06-22 09:42:03 -0700</date>
            <delta_ts>2017-06-22 11:37:53 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-173721-20170622094203.patch</filename>
            <type>text/plain</type>
            <size>3733</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE4Njk1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmIzZTMwYTU2NzU5ZTRiZjQ2ODE4ODU1YmM2MjFmNjI3
MDY5ZWY4YS4uODBhN2ZlZjdiNDY4MTg3YmQ2MTY1NTQ3OWY5ZmM3MWRkNmVlNTA5MSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDE3LTA2LTIyICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisKKyAg
ICAgICAgUkVHUkVTU0lPTiAocjIxODQxOSk6IDcgbGVha3MgaW4gUGx1Z2luTG9hZENsaWVudFBv
bGljaWVzLm1tCisgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8xNzM3MjE+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIGF1dG9yZWxlYXNl
ZCBtZXRob2RzIHRvIGNyZWF0ZSBOU011dGFibGVEaWN0aW9uYXJ5IGFuZAorICAgICAgICBOU051
bWJlciBvYmplY3RzIGluc3RlYWQgb2YgKzEgcmV0YWluZWQgbWV0aG9kcy4KKworICAgICAgICAq
IFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNvY29hL1BsdWdpbkxvYWRDbGllbnRQb2xpY2ll
cy5tbToKKyAgICAgICAgKFRFU1QpOgorCiAyMDE3LTA2LTIxICBEYXZpZCBLaWx6ZXIgIDxkZGtp
bHplckBhcHBsZS5jb20+CiAKICAgICAgICAgW1Rlc3RXZWJLaXRBUEldIEZpeCBmYWxzZS1wb3Np
dGl2ZSBiYWQgcmVsZWFzZSB3YXJuaW5ncyBmb3VuZCBieSBjbGFuZyBzdGF0aWMgYW5hbHl6ZXIK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNvY29hL1BsdWdp
bkxvYWRDbGllbnRQb2xpY2llcy5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
MkNvY29hL1BsdWdpbkxvYWRDbGllbnRQb2xpY2llcy5tbQppbmRleCAzZWQyMjlhZDE2Zjc0YTEz
Y2FhMDk4NGZhZGUyMTc0M2JiOGQ3ODVlLi5mMThiZGU5YjM3YWRlZWQ2ZWI0ODAyY2M4OGMzOWM3
ZTM5OGJiYjJkIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDJD
b2NvYS9QbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXMubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQyQ29jb2EvUGx1Z2luTG9hZENsaWVudFBvbGljaWVzLm1tCkBAIC0zMiw2
ICszMiw3IEBACiAjaW1wb3J0IDxXZWJLaXQvV0tDb250ZXh0UHJpdmF0ZU1hYy5oPgogI2ltcG9y
dCA8V2ViS2l0L1dLUGx1Z2luSW5mb3JtYXRpb24uaD4KICNpbXBvcnQgPFdlYktpdC9XS1Byb2Nl
c3NQb29sUHJpdmF0ZS5oPgorI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgogCiAjaWYgV0tfQVBJ
X0VOQUJMRUQKIApAQCAtNjcsMTYgKzY4LDE2IEBAIFRFU1QoV0tQcm9jZXNzUG9vbCwgcmVzZXRQ
bHVnaW5Mb2FkQ2xpZW50UG9saWNpZXMpCiAgICAgRVhQRUNUX0VRKDFVLCAoKE5TRGljdGlvbmFy
eSAqKXBvbGljaWVzRm9yQXBwbGVIb3N0W0AiY29tLm1pY3Jvc29mdC5TaWx2ZXJsaWdodFBsdWdp
biJdKS5jb3VudCk7CiAgICAgRVhQRUNUX0VRKGtXS1BsdWdpbkxvYWRDbGllbnRQb2xpY3lBbGxv
dywgW3BvbGljaWVzRm9yQXBwbGVIb3N0W0AiY29tLm1pY3Jvc29mdC5TaWx2ZXJsaWdodFBsdWdp
biJdW0AiNS4xLjUwOTAxLjAiXSB1bnNpZ25lZEludGVnZXJWYWx1ZV0pOwogICAgIAotICAgIE5T
TXV0YWJsZURpY3Rpb25hcnkgKm5ld1BvbGljaWVzID0gW3BvbGljaWVzIG11dGFibGVDb3B5XTsK
LSAgICBbbmV3UG9saWNpZXMgcmVtb3ZlT2JqZWN0Rm9yS2V5OkAiYXBwbGUuY29tIl07Ci0gICAg
bmV3UG9saWNpZXNbQCJnb29nbGUuY29tIl0gPSBbW05TTXV0YWJsZURpY3Rpb25hcnkgYWxsb2Nd
IGluaXRdOwotICAgIG5ld1BvbGljaWVzW0AiZ29vZ2xlLmNvbSJdW0AiY29tLm1hY3JvbWVkaWEu
Rmxhc2ggUGxheWVyLnBsdWdpbiJdID0gW1tOU011dGFibGVEaWN0aW9uYXJ5IGFsbG9jXSBpbml0
XTsKLSAgICBuZXdQb2xpY2llc1tAImdvb2dsZS5jb20iXVtAImNvbS5tYWNyb21lZGlhLkZsYXNo
IFBsYXllci5wbHVnaW4iXVtAIjI2LjAuMC4xMjYiXSA9IFtbTlNOdW1iZXIgYWxsb2NdIGluaXRX
aXRoVW5zaWduZWRJbnQ6a1dLUGx1Z2luTG9hZENsaWVudFBvbGljeUFsbG93QWx3YXlzXTsKLSAg
ICBuZXdQb2xpY2llc1tAImdvb2dsZS5jb20iXVtAImNvbS5hcHBsZS5RdWlja1RpbWUucGx1Z2lu
Il0gPSBbW05TTXV0YWJsZURpY3Rpb25hcnkgYWxsb2NdIGluaXRdOwotICAgIG5ld1BvbGljaWVz
W0AiZ29vZ2xlLmNvbSJdW0AiY29tLmFwcGxlLlF1aWNrVGltZS5wbHVnaW4iXVtAIjEuMCJdID0g
W1tOU051bWJlciBhbGxvY10gaW5pdFdpdGhVbnNpZ25lZEludDprV0tQbHVnaW5Mb2FkQ2xpZW50
UG9saWN5QmxvY2tdOwotICAgIG5ld1BvbGljaWVzW0AiZ29vZ2xlLmNvbSJdW0AiY29tLmFwcGxl
LlF1aWNrVGltZS5wbHVnaW4iXVtAIjEuMSJdID0gW1tOU051bWJlciBhbGxvY10gaW5pdFdpdGhV
bnNpZ25lZEludDprV0tQbHVnaW5Mb2FkQ2xpZW50UG9saWN5QWxsb3ddOworICAgIFJldGFpblB0
cjxOU011dGFibGVEaWN0aW9uYXJ5PiBuZXdQb2xpY2llcyA9IGFkb3B0TlMoW3BvbGljaWVzIG11
dGFibGVDb3B5XSk7CisgICAgW25ld1BvbGljaWVzLmdldCgpIHJlbW92ZU9iamVjdEZvcktleTpA
ImFwcGxlLmNvbSJdOworICAgIG5ld1BvbGljaWVzLmdldCgpW0AiZ29vZ2xlLmNvbSJdID0gW05T
TXV0YWJsZURpY3Rpb25hcnkgZGljdGlvbmFyeVdpdGhDYXBhY2l0eToyXTsKKyAgICBuZXdQb2xp
Y2llcy5nZXQoKVtAImdvb2dsZS5jb20iXVtAImNvbS5tYWNyb21lZGlhLkZsYXNoIFBsYXllci5w
bHVnaW4iXSA9IFtOU011dGFibGVEaWN0aW9uYXJ5IGRpY3Rpb25hcnlXaXRoQ2FwYWNpdHk6MV07
CisgICAgbmV3UG9saWNpZXMuZ2V0KClbQCJnb29nbGUuY29tIl1bQCJjb20ubWFjcm9tZWRpYS5G
bGFzaCBQbGF5ZXIucGx1Z2luIl1bQCIyNi4wLjAuMTI2Il0gPSBbTlNOdW1iZXIgbnVtYmVyV2l0
aFVuc2lnbmVkSW50OmtXS1BsdWdpbkxvYWRDbGllbnRQb2xpY3lBbGxvd0Fsd2F5c107CisgICAg
bmV3UG9saWNpZXMuZ2V0KClbQCJnb29nbGUuY29tIl1bQCJjb20uYXBwbGUuUXVpY2tUaW1lLnBs
dWdpbiJdID0gW05TTXV0YWJsZURpY3Rpb25hcnkgZGljdGlvbmFyeVdpdGhDYXBhY2l0eToyXTsK
KyAgICBuZXdQb2xpY2llcy5nZXQoKVtAImdvb2dsZS5jb20iXVtAImNvbS5hcHBsZS5RdWlja1Rp
bWUucGx1Z2luIl1bQCIxLjAiXSA9IFtOU051bWJlciBudW1iZXJXaXRoVW5zaWduZWRJbnQ6a1dL
UGx1Z2luTG9hZENsaWVudFBvbGljeUJsb2NrXTsKKyAgICBuZXdQb2xpY2llcy5nZXQoKVtAImdv
b2dsZS5jb20iXVtAImNvbS5hcHBsZS5RdWlja1RpbWUucGx1Z2luIl1bQCIxLjEiXSA9IFtOU051
bWJlciBudW1iZXJXaXRoVW5zaWduZWRJbnQ6a1dLUGx1Z2luTG9hZENsaWVudFBvbGljeUFsbG93
XTsKICAgICAKLSAgICBbcHJvY2Vzc1Bvb2wuZ2V0KCkgX3Jlc2V0UGx1Z2luTG9hZENsaWVudFBv
bGljaWVzOm5ld1BvbGljaWVzXTsKKyAgICBbcHJvY2Vzc1Bvb2wuZ2V0KCkgX3Jlc2V0UGx1Z2lu
TG9hZENsaWVudFBvbGljaWVzOm5ld1BvbGljaWVzLmdldCgpXTsKICAgICAKICAgICBwb2xpY2ll
cyA9IHByb2Nlc3NQb29sLmdldCgpLl9wbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXM7CiAgICAgRVhQ
RUNUX0VRKDJVLCBwb2xpY2llcy5jb3VudCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>313646</attachid>
            <date>2017-06-22 11:37:55 -0700</date>
            <delta_ts>2017-06-22 14:03:52 -0700</delta_ts>
            <desc>Patch v2</desc>
            <filename>bug-173721-20170622113755.patch</filename>
            <type>text/plain</type>
            <size>4243</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE4NzA2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNmRlMDY5YWNlZTJhYTI3MmUxZGNkN2Y5NWQyZTkyODQ2
OWNhNzFiNS4uMmVjMmIzYTU0NjRjZmU5NDBlMWRkZWQ0MTRiZDVhNTkyYTViNzBlMSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDE3LTA2LTIyICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisKKyAg
ICAgICAgUkVHUkVTU0lPTiAocjIxODQxOSk6IDcgbGVha3MgaW4gUGx1Z2luTG9hZENsaWVudFBv
bGljaWVzLm1tCisgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8xNzM3MjE+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIFJldGFpblB0cjw+
IHRvIGNyZWF0ZSBOU011dGFibGVEaWN0aW9uYXJ5IGFuZCBOU051bWJlcgorICAgICAgICBvYmpl
Y3RzIHRvIGZpeCBsZWFrcyBhbmQgdG8gYXZvaWQgdGhlIGF1dG9yZWxlYXNlcG9vbC4KKworICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNvY29hL1BsdWdpbkxvYWRDbGllbnRQ
b2xpY2llcy5tbToKKyAgICAgICAgKFRFU1QpOgorCiAyMDE3LTA2LTIyICBNYXR0IExld2lzICA8
amxld2lzM0BhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIx
ODYzMy4KZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNvY29h
L1BsdWdpbkxvYWRDbGllbnRQb2xpY2llcy5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0MkNvY29hL1BsdWdpbkxvYWRDbGllbnRQb2xpY2llcy5tbQppbmRleCAzZWQyMjlhZDE2
Zjc0YTEzY2FhMDk4NGZhZGUyMTc0M2JiOGQ3ODVlLi4xNzgyOWM3OGFlNGQ1ODNkNTBlNDhlYzYy
YTRiODk3NWZmNjQxNzMyIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdDJDb2NvYS9QbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXMubW0KKysrIGIvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXQyQ29jb2EvUGx1Z2luTG9hZENsaWVudFBvbGljaWVzLm1tCkBA
IC0zMiw2ICszMiw3IEBACiAjaW1wb3J0IDxXZWJLaXQvV0tDb250ZXh0UHJpdmF0ZU1hYy5oPgog
I2ltcG9ydCA8V2ViS2l0L1dLUGx1Z2luSW5mb3JtYXRpb24uaD4KICNpbXBvcnQgPFdlYktpdC9X
S1Byb2Nlc3NQb29sUHJpdmF0ZS5oPgorI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgogCiAjaWYg
V0tfQVBJX0VOQUJMRUQKIApAQCAtNjcsMTYgKzY4LDIyIEBAIFRFU1QoV0tQcm9jZXNzUG9vbCwg
cmVzZXRQbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXMpCiAgICAgRVhQRUNUX0VRKDFVLCAoKE5TRGlj
dGlvbmFyeSAqKXBvbGljaWVzRm9yQXBwbGVIb3N0W0AiY29tLm1pY3Jvc29mdC5TaWx2ZXJsaWdo
dFBsdWdpbiJdKS5jb3VudCk7CiAgICAgRVhQRUNUX0VRKGtXS1BsdWdpbkxvYWRDbGllbnRQb2xp
Y3lBbGxvdywgW3BvbGljaWVzRm9yQXBwbGVIb3N0W0AiY29tLm1pY3Jvc29mdC5TaWx2ZXJsaWdo
dFBsdWdpbiJdW0AiNS4xLjUwOTAxLjAiXSB1bnNpZ25lZEludGVnZXJWYWx1ZV0pOwogICAgIAot
ICAgIE5TTXV0YWJsZURpY3Rpb25hcnkgKm5ld1BvbGljaWVzID0gW3BvbGljaWVzIG11dGFibGVD
b3B5XTsKLSAgICBbbmV3UG9saWNpZXMgcmVtb3ZlT2JqZWN0Rm9yS2V5OkAiYXBwbGUuY29tIl07
Ci0gICAgbmV3UG9saWNpZXNbQCJnb29nbGUuY29tIl0gPSBbW05TTXV0YWJsZURpY3Rpb25hcnkg
YWxsb2NdIGluaXRdOwotICAgIG5ld1BvbGljaWVzW0AiZ29vZ2xlLmNvbSJdW0AiY29tLm1hY3Jv
bWVkaWEuRmxhc2ggUGxheWVyLnBsdWdpbiJdID0gW1tOU011dGFibGVEaWN0aW9uYXJ5IGFsbG9j
XSBpbml0XTsKLSAgICBuZXdQb2xpY2llc1tAImdvb2dsZS5jb20iXVtAImNvbS5tYWNyb21lZGlh
LkZsYXNoIFBsYXllci5wbHVnaW4iXVtAIjI2LjAuMC4xMjYiXSA9IFtbTlNOdW1iZXIgYWxsb2Nd
IGluaXRXaXRoVW5zaWduZWRJbnQ6a1dLUGx1Z2luTG9hZENsaWVudFBvbGljeUFsbG93QWx3YXlz
XTsKLSAgICBuZXdQb2xpY2llc1tAImdvb2dsZS5jb20iXVtAImNvbS5hcHBsZS5RdWlja1RpbWUu
cGx1Z2luIl0gPSBbW05TTXV0YWJsZURpY3Rpb25hcnkgYWxsb2NdIGluaXRdOwotICAgIG5ld1Bv
bGljaWVzW0AiZ29vZ2xlLmNvbSJdW0AiY29tLmFwcGxlLlF1aWNrVGltZS5wbHVnaW4iXVtAIjEu
MCJdID0gW1tOU051bWJlciBhbGxvY10gaW5pdFdpdGhVbnNpZ25lZEludDprV0tQbHVnaW5Mb2Fk
Q2xpZW50UG9saWN5QmxvY2tdOwotICAgIG5ld1BvbGljaWVzW0AiZ29vZ2xlLmNvbSJdW0AiY29t
LmFwcGxlLlF1aWNrVGltZS5wbHVnaW4iXVtAIjEuMSJdID0gW1tOU051bWJlciBhbGxvY10gaW5p
dFdpdGhVbnNpZ25lZEludDprV0tQbHVnaW5Mb2FkQ2xpZW50UG9saWN5QWxsb3ddOworICAgIFJl
dGFpblB0cjxOU011dGFibGVEaWN0aW9uYXJ5PiBuZXdQb2xpY2llcyA9IGFkb3B0TlMoW3BvbGlj
aWVzIG11dGFibGVDb3B5XSk7CisgICAgW25ld1BvbGljaWVzLmdldCgpIHJlbW92ZU9iamVjdEZv
cktleTpAImFwcGxlLmNvbSJdOworICAgIFJldGFpblB0cjxOU011dGFibGVEaWN0aW9uYXJ5PiBo
b3N0RGljdGlvbmFyeSA9IGFkb3B0TlMoW1tOU011dGFibGVEaWN0aW9uYXJ5IGFsbG9jXSBpbml0
V2l0aENhcGFjaXR5OjJdKTsKKyAgICBuZXdQb2xpY2llcy5nZXQoKVtAImdvb2dsZS5jb20iXSA9
IGhvc3REaWN0aW9uYXJ5LmdldCgpOworICAgIFJldGFpblB0cjxOU011dGFibGVEaWN0aW9uYXJ5
PiBmbGFzaEJ1bmRsZURpY3Rpb25hcnkgPSBhZG9wdE5TKFtbTlNNdXRhYmxlRGljdGlvbmFyeSBh
bGxvY10gaW5pdFdpdGhDYXBhY2l0eToxXSk7CisgICAgbmV3UG9saWNpZXMuZ2V0KClbQCJnb29n
bGUuY29tIl1bQCJjb20ubWFjcm9tZWRpYS5GbGFzaCBQbGF5ZXIucGx1Z2luIl0gPSBmbGFzaEJ1
bmRsZURpY3Rpb25hcnkuZ2V0KCk7CisgICAgUmV0YWluUHRyPE5TTnVtYmVyPiBhbHdheXNBbGxv
d1BvbGljeU51bWJlciA9IGFkb3B0TlMoW1tOU051bWJlciBhbGxvY10gaW5pdFdpdGhVbnNpZ25l
ZEludDprV0tQbHVnaW5Mb2FkQ2xpZW50UG9saWN5QWxsb3dBbHdheXNdKTsKKyAgICBuZXdQb2xp
Y2llcy5nZXQoKVtAImdvb2dsZS5jb20iXVtAImNvbS5tYWNyb21lZGlhLkZsYXNoIFBsYXllci5w
bHVnaW4iXVtAIjI2LjAuMC4xMjYiXSA9IGFsd2F5c0FsbG93UG9saWN5TnVtYmVyLmdldCgpOwor
ICAgIFJldGFpblB0cjxOU011dGFibGVEaWN0aW9uYXJ5PiBxdWlja1RpbWVCdW5kbGVEaWN0aW9u
YXJ5ID0gYWRvcHROUyhbW05TTXV0YWJsZURpY3Rpb25hcnkgYWxsb2NdIGluaXRXaXRoQ2FwYWNp
dHk6Ml0pOworICAgIG5ld1BvbGljaWVzLmdldCgpW0AiZ29vZ2xlLmNvbSJdW0AiY29tLmFwcGxl
LlF1aWNrVGltZS5wbHVnaW4iXSA9IHF1aWNrVGltZUJ1bmRsZURpY3Rpb25hcnkuZ2V0KCk7Cisg
ICAgUmV0YWluUHRyPE5TTnVtYmVyPiBibG9ja1BvbGljeU51bWJlciA9IGFkb3B0TlMoW1tOU051
bWJlciBhbGxvY10gaW5pdFdpdGhVbnNpZ25lZEludDprV0tQbHVnaW5Mb2FkQ2xpZW50UG9saWN5
QmxvY2tdKTsKKyAgICBuZXdQb2xpY2llcy5nZXQoKVtAImdvb2dsZS5jb20iXVtAImNvbS5hcHBs
ZS5RdWlja1RpbWUucGx1Z2luIl1bQCIxLjAiXSA9IGJsb2NrUG9saWN5TnVtYmVyLmdldCgpOwor
ICAgIFJldGFpblB0cjxOU051bWJlcj4gYWxsb3dQb2xpY3lOdW1iZXIgPSBhZG9wdE5TKFtbTlNO
dW1iZXIgYWxsb2NdIGluaXRXaXRoVW5zaWduZWRJbnQ6a1dLUGx1Z2luTG9hZENsaWVudFBvbGlj
eUFsbG93XSk7CisgICAgbmV3UG9saWNpZXMuZ2V0KClbQCJnb29nbGUuY29tIl1bQCJjb20uYXBw
bGUuUXVpY2tUaW1lLnBsdWdpbiJdW0AiMS4xIl0gPSBhbGxvd1BvbGljeU51bWJlci5nZXQoKTsK
ICAgICAKLSAgICBbcHJvY2Vzc1Bvb2wuZ2V0KCkgX3Jlc2V0UGx1Z2luTG9hZENsaWVudFBvbGlj
aWVzOm5ld1BvbGljaWVzXTsKKyAgICBbcHJvY2Vzc1Bvb2wuZ2V0KCkgX3Jlc2V0UGx1Z2luTG9h
ZENsaWVudFBvbGljaWVzOm5ld1BvbGljaWVzLmdldCgpXTsKICAgICAKICAgICBwb2xpY2llcyA9
IHByb2Nlc3NQb29sLmdldCgpLl9wbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXM7CiAgICAgRVhQRUNU
X0VRKDJVLCBwb2xpY2llcy5jb3VudCk7Cg==
</data>
<flag name="review"
          id="334535"
          type_id="1"
          status="+"
          setter="joepeck"
    />
          </attachment>
      

    </bug>

</bugzilla>