<?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>84307</bug_id>
          
          <creation_ts>2012-04-18 17:55:03 -0700</creation_ts>
          <short_desc>[WK2] AlternativeTextClient leaks when the page is destroyed</short_desc>
          <delta_ts>2012-04-26 14:34:44 -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>HTML Editing</component>
          <version>528+ (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="Andreas Kling">kling</reporter>
          <assigned_to name="Jon Lee">jonlee</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>darin</cc>
    
    <cc>enrica</cc>
    
    <cc>eric</cc>
    
    <cc>jiapu.mail</cc>
    
    <cc>jonlee</cc>
    
    <cc>morrita</cc>
    
    <cc>rniwa</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>605267</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2012-04-18 17:55:03 -0700</bug_when>
    <thetext>There is nobody deleting the WebKit::WebAlternativeTextClient AFAICT. Opening and closing a couple of pages, and then running &quot;leaks&quot; will show you that a bunch of WebAlternativeTextClient objects have leaked.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605274</commentid>
    <comment_count>1</comment_count>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2012-04-18 18:19:09 -0700</bug_when>
    <thetext>Will take a look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605769</commentid>
    <comment_count>2</comment_count>
      <attachid>137942</attachid>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2012-04-19 12:02:21 -0700</bug_when>
    <thetext>Created attachment 137942
Fix memory leak.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605915</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-04-19 14:31:54 -0700</bug_when>
    <thetext>I thought we had a PageObserver pattern these days?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605916</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-04-19 14:32:14 -0700</bug_when>
    <thetext>I guess only FrameDestructionObserver.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607313</commentid>
    <comment_count>5</comment_count>
      <attachid>137942</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-04-21 18:46:35 -0700</bug_when>
    <thetext>Comment on attachment 137942
Fix memory leak.

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

&gt; Source/WebKit/mac/WebCoreSupport/WebAlternativeTextClient.mm:45
&gt; +void WebAlternativeTextClient::pageDestroyed()
&gt; +{
&gt; +    delete this;
&gt; +}

Really? We need to manually call delete on this? Can&apos;t we use OwnPtr instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607317</commentid>
    <comment_count>6</comment_count>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2012-04-21 19:05:16 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 137942 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=137942&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/mac/WebCoreSupport/WebAlternativeTextClient.mm:45
&gt; &gt; +void WebAlternativeTextClient::pageDestroyed()
&gt; &gt; +{
&gt; &gt; +    delete this;
&gt; &gt; +}
&gt; 
&gt; Really? We need to manually call delete on this? Can&apos;t we use OwnPtr instead?

I am just following this pattern in various other clients. I can certainly just release it on WebCore side.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607422</commentid>
    <comment_count>7</comment_count>
      <attachid>137942</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2012-04-22 19:36:49 -0700</bug_when>
    <thetext>Comment on attachment 137942
Fix memory leak.

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

&gt; Source/WebKit2/ChangeLog:8
&gt; +        Fixing memory leak.

The changelog entry could definitely be slightly more informative re: what situation we were leaking in and how it&apos;s fixed; as it stands, it&apos;s impossible to know much about what&apos;s going on without looking at the change itself.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608001</commentid>
    <comment_count>8</comment_count>
      <attachid>138421</attachid>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2012-04-23 14:02:03 -0700</bug_when>
    <thetext>Created attachment 138421
Use OwnPtr.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608072</commentid>
    <comment_count>9</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-04-23 15:19:06 -0700</bug_when>
    <thetext>The other clients aren’t owned like this. Why is the pattern different for this one?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608073</commentid>
    <comment_count>10</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-04-23 15:20:15 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; We need to manually call delete on this? Can&apos;t we use OwnPtr instead?

We shouldn’t because the ownership is not something Page enforces. It’s something that can vary per-port. If we were going to use OwnPtr we’d want to use it in the clients structure itself and remove the flexibility of having the clients not all be separate objects, flexibility we have today.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608075</commentid>
    <comment_count>11</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-04-23 15:21:01 -0700</bug_when>
    <thetext>Another way to put it is that if we are going to use OwnPtr, then the adoptPtr needs to be right next to the new, not inside the Page constructor’s implementation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608081</commentid>
    <comment_count>12</comment_count>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2012-04-23 15:24:03 -0700</bug_when>
    <thetext>Would the first patch look OK then?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>610855</commentid>
    <comment_count>13</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2012-04-26 12:57:22 -0700</bug_when>
    <thetext>*** Bug 84984 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>610859</commentid>
    <comment_count>14</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2012-04-26 12:59:06 -0700</bug_when>
    <thetext>&lt;rdar://problem/11328431&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>610864</commentid>
    <comment_count>15</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2012-04-26 13:01:43 -0700</bug_when>
    <thetext>I had filed a similar bug and posted a patch exactly like the _first_ one that Jia had posted. The pattern, while not ideal, is established in other clients. So given that my patch is exactly what Jia did, I would unofficially r+ the first patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>610982</commentid>
    <comment_count>16</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2012-04-26 14:28:28 -0700</bug_when>
    <thetext>Talked to Jia offline, reassigning to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>610985</commentid>
    <comment_count>17</comment_count>
      <attachid>139071</attachid>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2012-04-26 14:29:09 -0700</bug_when>
    <thetext>Created attachment 139071
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>610986</commentid>
    <comment_count>18</comment_count>
      <attachid>139071</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2012-04-26 14:31:49 -0700</bug_when>
    <thetext>Comment on attachment 139071
Patch

Looks good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>610990</commentid>
    <comment_count>19</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2012-04-26 14:34:44 -0700</bug_when>
    <thetext>Committed r115369: &lt;http://trac.webkit.org/changeset/115369&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>137942</attachid>
            <date>2012-04-19 12:02:21 -0700</date>
            <delta_ts>2012-04-23 14:01:58 -0700</delta_ts>
            <desc>Fix memory leak.</desc>
            <filename>bug-84307-20120419120219.patch</filename>
            <type>text/plain</type>
            <size>7717</size>
            <attacher name="Jia Pu">jiapu.mail</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE0NTg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmM4NTM5NTFhYjM2ZTIy
NTZmN2Q1NzNhMGRkNjU4Y2E5MjAxZTNmYi4uMzAxN2Y3YTkzMDhiMDAwNWMxMDg0MDJmZDZhZTQz
YTQ0MDM5YTM4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEyLTA0LTE5ICBKaWEg
UHUgIDxqcHVAYXBwbGUuY29tPgorCisgICAgICAgIFdlYktpdDI6IFdlIGFyZSBsZWFraW5nIFdl
YkFsdGVybmF0aXZlVGV4dENsaWVudHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NDMwNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gRml4aW5nIG1lbW9yeSBsZWFrLiAKKworICAg
ICAgICAqIHBhZ2UvQWx0ZXJuYXRpdmVUZXh0Q2xpZW50Lmg6CisgICAgICAgIChBbHRlcm5hdGl2
ZVRleHRDbGllbnQpOgorICAgICAgICAqIHBhZ2UvUGFnZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpQYWdlOjp+UGFnZSk6CisKIDIwMTItMDQtMTggIERhdmlkIFJldmVtYW4gIDxyZXZlbWFuQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBbQ2hyb21pdW1dIFNvbGlkIGNvbG9yIGxheWVycyBzaG91
bGQgcmVzcGVjdCBvcGFjaXR5IHZhbHVlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDM5OTA2OTE3ZTdi
NzMxNzdkNzUxMmY3M2M4NTY5ODhhNDgyNjg1YWYuLmE2ZjJhMTYwMGQyOTI2OThiZWQ4ZjI2ZjU2
MmU2NjE5YmRjYThjOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMi0w
NC0xOSAgSmlhIFB1ICA8anB1QGFwcGxlLmNvbT4KKworICAgICAgICBXZWJLaXQyOiBXZSBhcmUg
bGVha2luZyBXZWJBbHRlcm5hdGl2ZVRleHRDbGllbnRzLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQzMDcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXhpbmcgbWVtb3J5IGxlYWsuCisKKyAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQuaDoKKyAgICAgICAgKFdl
YkFsdGVybmF0aXZlVGV4dENsaWVudCk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQWx0
ZXJuYXRpdmVUZXh0Q2xpZW50Lm1tOgorICAgICAgICAoV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50
OjpwYWdlRGVzdHJveWVkKToKKwogMjAxMi0wNC0xOCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFw
cGxlLmNvbT4KIAogICAgICAgICBGdWxsIFNjcmVlbiBtb2RlIGRvZXMgbm90IHByZXNlcnZlIENB
TGF5ZXIgb3JkZXJpbmcgYWZ0ZXIgZXhpdGluZy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAzMmJkNzkzMGFiNDgx
ODcxMzJiOTRiN2Q4M2UyNDNkOTRlYTdmMTM1Li40OWZiMTc1MzE4YmZmMWNlOTZjOWUyYjMzNjEz
ZTQ4NDQyODdjZjliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTItMDQtMTkgIEpp
YSBQdSAgPGpwdUBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViS2l0MjogV2UgYXJlIGxlYWtpbmcg
V2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50cy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTg0MzA3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgRml4aW5nIG1lbW9yeSBsZWFrLgorCisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQuaDoKKyAgICAgICAg
KFdlYkFsdGVybmF0aXZlVGV4dENsaWVudCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9tYWMvV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50OjpwYWdlRGVzdHJveWVkKToKKyAgICAgICAgKFdl
YktpdCk6CisKIDIwMTItMDQtMTggIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAK
ICAgICAgICAgRnVsbCBTY3JlZW4gbW9kZSBkb2VzIG5vdCBwcmVzZXJ2ZSBDQUxheWVyIG9yZGVy
aW5nIGFmdGVyIGV4aXRpbmcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0FsdGVy
bmF0aXZlVGV4dENsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9BbHRlcm5hdGl2ZVRleHRD
bGllbnQuaAppbmRleCBmNWFlNjdkMGVkOWZkYzZmYmY0NzA3Mzc2NjYzYjkyYWM5MzE1Y2JjLi4w
OTQ3Yzg3YmEwMjQxNDQzMWU2NmQzNjNjNjhhOTM2NjZmZGU5NmZkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0FsdGVybmF0aXZlVGV4dENsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvQWx0ZXJuYXRpdmVUZXh0Q2xpZW50LmgKQEAgLTUzLDYgKzUzLDggQEAgZW51bSBB
dXRvY29ycmVjdGlvblJlc3BvbnNlVHlwZSB7CiBjbGFzcyBBbHRlcm5hdGl2ZVRleHRDbGllbnQg
ewogcHVibGljOgogICAgIHZpcnR1YWwgfkFsdGVybmF0aXZlVGV4dENsaWVudCgpIHsgfQorICAg
IHZpcnR1YWwgdm9pZCBwYWdlRGVzdHJveWVkKCkgPSAwOworCiAgICAgdmlydHVhbCB2b2lkIHNo
b3dDb3JyZWN0aW9uQWx0ZXJuYXRpdmUoQWx0ZXJuYXRpdmVUZXh0VHlwZSwgY29uc3QgRmxvYXRS
ZWN0JiBib3VuZGluZ0JveE9mUmVwbGFjZWRTdHJpbmcsIGNvbnN0IFN0cmluZyYgcmVwbGFjZWRT
dHJpbmcsIGNvbnN0IFN0cmluZyYgcmVwbGFjbWVudFN0cmluZywgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIGFsdGVybmF0aXZlUmVwbGFjZW1lbnRTdHJpbmdzKSA9IDA7CiAgICAgdmlydHVhbCB2b2lk
IGRpc21pc3NBbHRlcm5hdGl2ZShSZWFzb25Gb3JEaXNtaXNzaW5nQWx0ZXJuYXRpdmVUZXh0KSA9
IDA7CiAgICAgdmlydHVhbCBTdHJpbmcgZGlzbWlzc0FsdGVybmF0aXZlU29vbihSZWFzb25Gb3JE
aXNtaXNzaW5nQWx0ZXJuYXRpdmVUZXh0KSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNwcAppbmRleCBkMTVi
MTZmZDViZWUzMTM4OGFmYjkyYWI1ZGQ5YjNiYzA2ZjhlMDM5Li44Yjg1OTU2ZDU4NzZlOWM3YzIw
OGE4NzFhZjEwYzFkZDFkOGQxMzgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bh
Z2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKQEAgLTIwLDYgKzIwLDcg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAKKyNpbmNsdWRlICJB
bHRlcm5hdGl2ZVRleHRDbGllbnQuaCIKICNpbmNsdWRlICJCYWNrRm9yd2FyZENvbnRyb2xsZXIu
aCIKICNpbmNsdWRlICJCYWNrRm9yd2FyZExpc3QuaCIKICNpbmNsdWRlICJCYXNlNjQuaCIKQEAg
LTE4OCw2ICsxODksOCBAQCBQYWdlOjp+UGFnZSgpCiAgICAgfQogCiAgICAgbV9lZGl0b3JDbGll
bnQtPnBhZ2VEZXN0cm95ZWQoKTsKKyAgICBpZiAobV9hbHRlcm5hdGl2ZVRleHRDbGllbnQpCisg
ICAgICAgIG1fYWx0ZXJuYXRpdmVUZXh0Q2xpZW50LT5wYWdlRGVzdHJveWVkKCk7CiAKICNpZiBF
TkFCTEUoSU5TUEVDVE9SKQogICAgIG1faW5zcGVjdG9yQ29udHJvbGxlci0+aW5zcGVjdGVkUGFn
ZURlc3Ryb3llZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQuaAppbmRleCA3ZWRmYWNlMGFlMzQ2ODE0
MTk3Y2RiMTU2ZDZiYjM2Y2Q2YjFkMWQ3Li41ZTY2YWNhZjdiNzFhZTc0ZWNmZGQyYjRlNzIxZDkz
ZmQ4Y2NmYzdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQuaApAQCAtMzYsNiArMzYsNyBAQCBjbGFz
cyBXZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQgOiBwdWJsaWMgV2ViQ29yZTo6QWx0ZXJuYXRpdmVU
ZXh0Q2xpZW50IHsKIHB1YmxpYzoKICAgICBXZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQoV2ViVmll
dyAqKTsKICAgICB2aXJ0dWFsIH5XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQoKTsKKyAgICB2aXJ0
dWFsIHZvaWQgcGFnZURlc3Ryb3llZCgpIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBzaG93
Q29ycmVjdGlvbkFsdGVybmF0aXZlKFdlYkNvcmU6OkFsdGVybmF0aXZlVGV4dFR5cGUsIGNvbnN0
IFdlYkNvcmU6OkZsb2F0UmVjdCYgYm91bmRpbmdCb3hPZlJlcGxhY2VkU3RyaW5nLCBjb25zdCBT
dHJpbmcmIHJlcGxhY2VkU3RyaW5nLCBjb25zdCBTdHJpbmcmIHJlcGxhY2VtZW50U3RyaW5nLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgYWx0ZXJuYXRpdmVSZXBsYWNlbWVudFN0cmluZ3MpIE9WRVJS
SURFOwogICAgIHZpcnR1YWwgdm9pZCBkaXNtaXNzQWx0ZXJuYXRpdmUoV2ViQ29yZTo6UmVhc29u
Rm9yRGlzbWlzc2luZ0FsdGVybmF0aXZlVGV4dCkgT1ZFUlJJREU7CiAgICAgdmlydHVhbCBTdHJp
bmcgZGlzbWlzc0FsdGVybmF0aXZlU29vbihXZWJDb3JlOjpSZWFzb25Gb3JEaXNtaXNzaW5nQWx0
ZXJuYXRpdmVUZXh0KSBPVkVSUklERTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkFsdGVybmF0aXZlVGV4dENsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYkFsdGVybmF0aXZlVGV4dENsaWVudC5tbQppbmRleCA2OTcy
ZmI0YmE5MzJlMjRjZGJiMDQ5OWNlNDhlZjZlYTI0ZWQ1MmNkLi5mMWE3MGZjNTQzYzZjNWM3YTgy
MTFlNTdjNTA5YTk4YmIwMGZmZGNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktp
dC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50Lm1tCkBAIC0zOSw2
ICszOSwxMSBAQCBXZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQ6On5XZWJBbHRlcm5hdGl2ZVRleHRD
bGllbnQoKQogI2VuZGlmCiB9CiAKK3ZvaWQgV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50OjpwYWdl
RGVzdHJveWVkKCkKK3sKKyAgICBkZWxldGUgdGhpczsKK30KKwogdm9pZCBXZWJBbHRlcm5hdGl2
ZVRleHRDbGllbnQ6OnNob3dDb3JyZWN0aW9uQWx0ZXJuYXRpdmUoQWx0ZXJuYXRpdmVUZXh0VHlw
ZSB0eXBlLCBjb25zdCBGbG9hdFJlY3QmIGJvdW5kaW5nQm94T2ZSZXBsYWNlZFN0cmluZywgY29u
c3QgU3RyaW5nJiByZXBsYWNlZFN0cmluZywgY29uc3QgU3RyaW5nJiByZXBsYWNlbWVudFN0cmlu
ZywgY29uc3QgVmVjdG9yPFN0cmluZz4mIGFsdGVybmF0aXZlUmVwbGFjZW1lbnRTdHJpbmdzKQog
ewogI2lmIFVTRShBVVRPQ09SUkVDVElPTl9QQU5FTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50Lmgg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkFsdGVybmF0aXZl
VGV4dENsaWVudC5oCmluZGV4IGI4MDVhZGFmNTgxMmFmNWYyM2NlYzRhMWI1YzkyZDdjNjkzNmUy
YzQuLjIwMDc2NTgzNjgwNTNmZjJiMmVmYmIwYTM0YmZmZmNmYjlkMjk3MWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQWx0ZXJuYXRpdmVU
ZXh0Q2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQuaApAQCAtMzcsNiArMzcsNyBAQCBjbGFzcyBXZWJB
bHRlcm5hdGl2ZVRleHRDbGllbnQgOiBwdWJsaWMgV2ViQ29yZTo6QWx0ZXJuYXRpdmVUZXh0Q2xp
ZW50IHsKIHB1YmxpYzoKICAgICBXZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQoV2ViUGFnZSAqKTsK
ICAgICB2aXJ0dWFsIH5XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQoKTsKKyAgICB2aXJ0dWFsIHZv
aWQgcGFnZURlc3Ryb3llZCgpIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBzaG93Q29ycmVj
dGlvbkFsdGVybmF0aXZlKFdlYkNvcmU6OkFsdGVybmF0aXZlVGV4dFR5cGUsIGNvbnN0IFdlYkNv
cmU6OkZsb2F0UmVjdCYgYm91bmRpbmdCb3hPZlJlcGxhY2VkU3RyaW5nLCBjb25zdCBTdHJpbmcm
IHJlcGxhY2VkU3RyaW5nLCBjb25zdCBTdHJpbmcmIHJlcGxhY2VtZW50U3RyaW5nLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgYWx0ZXJuYXRpdmVSZXBsYWNlbWVudFN0cmluZ3MpIE9WRVJSSURFOwog
ICAgIHZpcnR1YWwgdm9pZCBkaXNtaXNzQWx0ZXJuYXRpdmUoV2ViQ29yZTo6UmVhc29uRm9yRGlz
bWlzc2luZ0FsdGVybmF0aXZlVGV4dCkgT1ZFUlJJREU7CiAgICAgdmlydHVhbCBTdHJpbmcgZGlz
bWlzc0FsdGVybmF0aXZlU29vbihXZWJDb3JlOjpSZWFzb25Gb3JEaXNtaXNzaW5nQWx0ZXJuYXRp
dmVUZXh0KSBPVkVSUklERTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvbWFjL1dlYkFsdGVybmF0aXZlVGV4dENsaWVudC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJBbHRlcm5hdGl2ZVRleHRD
bGllbnQuY3BwCmluZGV4IDZhYmI2OTM1NDFkMDg1NmVlMDFmZGM2M2U4MThmOTg1NjY0ZjYwZGEu
LmFjMWRmYzU4M2E2NGFhMTIxMzY2NjlmMjk0YjJlNGZlZWZjOTBjMGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYkFsdGVybmF0aXZl
VGV4dENsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9tYWMvV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50LmNwcApAQCAtNDYsNiArNDYsMTEgQEAg
V2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50Ojp+V2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50KCkKICNl
bmRpZgogfQogCit2b2lkIFdlYkFsdGVybmF0aXZlVGV4dENsaWVudDo6cGFnZURlc3Ryb3llZCgp
Cit7CisgICAgZGVsZXRlIHRoaXM7Cit9CisKIHZvaWQgV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50
OjpzaG93Q29ycmVjdGlvbkFsdGVybmF0aXZlKEFsdGVybmF0aXZlVGV4dFR5cGUgdHlwZSwgY29u
c3QgRmxvYXRSZWN0JiBib3VuZGluZ0JveE9mUmVwbGFjZWRTdHJpbmcsIGNvbnN0IFN0cmluZyYg
cmVwbGFjZWRTdHJpbmcsIGNvbnN0IFN0cmluZyYgcmVwbGFjZW1lbnRTdHJpbmcsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBhbHRlcm5hdGl2ZVJlcGxhY2VtZW50U3RyaW5ncykKIHsKICNpZiBVU0Uo
QVVUT0NPUlJFQ1RJT05fUEFORUwpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>138421</attachid>
            <date>2012-04-23 14:02:03 -0700</date>
            <delta_ts>2012-04-26 14:29:01 -0700</delta_ts>
            <desc>Use OwnPtr.</desc>
            <filename>bug-84307-20120423140202.patch</filename>
            <type>text/plain</type>
            <size>2491</size>
            <attacher name="Jia Pu">jiapu.mail</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE0OTA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjhjOWRlOWUzNjBiNWQ2
NDE3MGE4OTA0NDllMGU4MmFkN2RmYjY5My4uZTBkZDA5OTc5MjY3MDY5NjczODYxNDk4NWEyZTg0
ZThkMmE5MGNiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTA0LTIzICBKaWEg
UHUgIDxqcHVAYXBwbGUuY29tPgorCisgICAgICAgIFdlYktpdDI6IFdlIGFyZSBsZWFraW5nIFdl
YkFsdGVybmF0aXZlVGV4dENsaWVudHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NDMwNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFsdGVybmF0aXZlVGV4dENsaWVudCBvYmplY3QgaXMgb3duZWQgYnkg
UGFnZSwgYnV0IGlzIG5vdCByZWxlYXNlZCBhZnRlciBQYWdlIGlzIHJlbGVhc2VkLgorICAgICAg
ICBXaXRoIHRoaXMgY2hhbmdlLCBQYWdlIHdpbGwgaG9sZCB0aGUgY2xpZW50IG9iamVjdCB3aXRo
IE93blB0ci4KKworICAgICAgICAqIHBhZ2UvUGFnZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQ
YWdlOjpQYWdlKToKKyAgICAgICAgKiBwYWdlL1BhZ2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBh
Z2U6OmFsdGVybmF0aXZlVGV4dENsaWVudCk6CisgICAgICAgIChQYWdlKToKKwogMjAxMi0wNC0x
NyAgS2VudGFybyBIYXJhICA8aGFyYWtlbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW1Y4XSBB
ZGQgYW4gb3B0aW9uYWwgSXNvbGF0ZSBhcmd1bWVudCB0byB0b1Y4KCkuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNw
cAppbmRleCBkMTViMTZmZDViZWUzMTM4OGFmYjkyYWI1ZGQ5YjNiYzA2ZjhlMDM5Li44ZDc4YWUw
M2FiZGVhNmZmNDEyY2JmMmM2NzRjZDMyNmM2Y2JmN2Y5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKQEAg
LTIwLDYgKzIwLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAK
KyNpbmNsdWRlICJBbHRlcm5hdGl2ZVRleHRDbGllbnQuaCIKICNpbmNsdWRlICJCYWNrRm9yd2Fy
ZENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJCYWNrRm9yd2FyZExpc3QuaCIKICNpbmNsdWRlICJC
YXNlNjQuaCIKQEAgLTE1OSw3ICsxNjAsNyBAQCBQYWdlOjpQYWdlKFBhZ2VDbGllbnRzJiBwYWdl
Q2xpZW50cykKICNpZm5kZWYgTkRFQlVHCiAgICAgLCBtX2lzUGFpbnRpbmcoZmFsc2UpCiAjZW5k
aWYKLSAgICAsIG1fYWx0ZXJuYXRpdmVUZXh0Q2xpZW50KHBhZ2VDbGllbnRzLmFsdGVybmF0aXZl
VGV4dENsaWVudCkKKyAgICAsIG1fYWx0ZXJuYXRpdmVUZXh0Q2xpZW50KGFkb3B0UHRyKHBhZ2VD
bGllbnRzLmFsdGVybmF0aXZlVGV4dENsaWVudCkpCiAgICAgLCBtX3NjcmlwdGVkQW5pbWF0aW9u
c1N1c3BlbmRlZChmYWxzZSkKIHsKICAgICBpZiAoIWFsbFBhZ2VzKSB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5oCmlu
ZGV4IGQ5N2M0NWZjZTc3Nzg4NDQ0ZmRiMDQxZmMxYjliYzExZGNmZGNlMzYuLjgxNjRiNTJiYmU4
MTU2OWQ1YTM5NDAxN2Q4YjcwM2U1N2E5OWZjZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5oCkBAIC0zMzcsNyAr
MzM3LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBib29sIGlzUGFpbnRpbmcoKSBj
b25zdCB7IHJldHVybiBtX2lzUGFpbnRpbmc7IH0KICNlbmRpZgogCi0gICAgICAgIEFsdGVybmF0
aXZlVGV4dENsaWVudCogYWx0ZXJuYXRpdmVUZXh0Q2xpZW50KCkgY29uc3QgeyByZXR1cm4gbV9h
bHRlcm5hdGl2ZVRleHRDbGllbnQ7IH0KKyAgICAgICAgQWx0ZXJuYXRpdmVUZXh0Q2xpZW50KiBh
bHRlcm5hdGl2ZVRleHRDbGllbnQoKSBjb25zdCB7IHJldHVybiBtX2FsdGVybmF0aXZlVGV4dENs
aWVudC5nZXQoKTsgfQogCiAgICAgcHJpdmF0ZToKICAgICAgICAgdm9pZCBpbml0R3JvdXAoKTsK
QEAgLTQzOCw3ICs0MzgsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAjaWZuZGVmIE5ERUJVRwog
ICAgICAgICBib29sIG1faXNQYWludGluZzsKICNlbmRpZgotICAgICAgICBBbHRlcm5hdGl2ZVRl
eHRDbGllbnQqIG1fYWx0ZXJuYXRpdmVUZXh0Q2xpZW50OworICAgICAgICBPd25QdHI8QWx0ZXJu
YXRpdmVUZXh0Q2xpZW50PiBtX2FsdGVybmF0aXZlVGV4dENsaWVudDsKIAogICAgICAgICBib29s
IG1fc2NyaXB0ZWRBbmltYXRpb25zU3VzcGVuZGVkOwogICAgIH07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>139071</attachid>
            <date>2012-04-26 14:29:09 -0700</date>
            <delta_ts>2012-04-26 14:31:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-84307-20120426143129.patch</filename>
            <type>text/plain</type>
            <size>8340</size>
            <attacher name="Jon Lee">jonlee</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE1MzM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGNiN2U4ODFhYjViZDVk
M2ZmOWUzN2U0ZTQyZWZlOThhYWM3NTZjNy4uMmExNmY2MDZhZTI0M2ZjZjg0MDEzZDM0YmUwOWE2
NzVhMDNmNGUwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTA0LTI2ICBKb24g
TGVlICA8am9ubGVlQGFwcGxlLmNvbT4KKworICAgICAgICBbV0syXSBBbHRlcm5hdGl2ZVRleHRD
bGllbnQgbGVha3Mgd2hlbiB0aGUgcGFnZSBpcyBkZXN0cm95ZWQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg0MzA3CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS8xMTMyODQzMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIHBhZ2UvQWx0ZXJuYXRpdmVUZXh0Q2xpZW50Lmg6IEFkZCBwYWdlRGVzdHJveWVk
KCkgY2FsbCwgYXMgaW4gRWRpdG9yQ2xpZW50LgorICAgICAgICAoQWx0ZXJuYXRpdmVUZXh0Q2xp
ZW50KToKKyAgICAgICAgKiBwYWdlL1BhZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZTo6
flBhZ2UpOiBXaGVuIHRoZSBwYWdlIGlzIGRlc3Ryb3llZCwgbm90aWZ5IHRoZSBjbGllbnQgaWYg
aXQgZXhpc3RzLgorCiAyMDEyLTA0LTI2ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNv
bT4KIAogICAgICAgICBJbXBsZW1lbnQgU3R5bGVTaGVldEludGVybmFsIGNvcHlpbmcKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0No
YW5nZUxvZwppbmRleCA2NDZmZjgzNTUzZGUwOWE5YTA1MTBkMjYwYjZlZmJlZjdlOGVlZjU1Li43
Y2ZlYWJjNTc5MTEwNDAzYTM3NTFkOTllYjRjNjhmZTBhYTVkMzQ5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMDQtMjYgIEpvbiBMZWUgIDxqb25sZWVAYXBwbGUuY29t
PgorCisgICAgICAgIFtXSzJdIEFsdGVybmF0aXZlVGV4dENsaWVudCBsZWFrcyB3aGVuIHRoZSBw
YWdlIGlzIGRlc3Ryb3llZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODQzMDcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzExMzI4NDMxPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViQ29yZVN1cHBv
cnQvV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50Lmg6IEltcGxlbWVudCBwYWdlRGVzdHJveWVkKCks
IGFzIGluIEVkaXRvckNsaWVudC4KKyAgICAgICAgKFdlYkFsdGVybmF0aXZlVGV4dENsaWVudCk6
CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50Lm1tOgor
ICAgICAgICAoV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50OjpwYWdlRGVzdHJveWVkKTogRGVsZXRl
cyBpdHNlbGYuCisKIDIwMTItMDQtMjUgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+
CiAKICAgICAgICAgUGxhY2Vob2xkZXIgdmlldyBpcyBpbW1lZGlhdGVseSByZW1vdmVkIGZyb20g
aG9zdGluZyB3aW5kb3cgdXBvbiBlbnRlcmluZyBmdWxsIHNjcmVlbi4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA5
YTdmNzJkNDk2NDMwNTUwZWJmYThkMjE4Mjg0MTQzZWQ0NWMxYjQxLi43NzZmMmMwNGJmZTg1NDEy
Y2Y3ZTYyNGExYzdhNTU4MTYwMmVjM2Y2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIw
MTItMDQtMjYgIEpvbiBMZWUgIDxqb25sZWVAYXBwbGUuY29tPgorCisgICAgICAgIFtXSzJdIEFs
dGVybmF0aXZlVGV4dENsaWVudCBsZWFrcyB3aGVuIHRoZSBwYWdlIGlzIGRlc3Ryb3llZAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQzMDcKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzExMzI4NDMxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJBbHRl
cm5hdGl2ZVRleHRDbGllbnQuaDogSW1wbGVtZW50IHBhZ2VEZXN0cm95ZWQoKSwgYXMgaW4gRWRp
dG9yQ2xpZW50LgorICAgICAgICAoV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50KToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQ6OnBhZ2VEZXN0
cm95ZWQpOiBEZWxldGVzIGl0c2VsZi4KKwogMjAxMi0wNC0yNSAgSmVyIE5vYmxlICA8amVyLm5v
YmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBQbGFjZWhvbGRlciB2aWV3IGlzIGltbWVkaWF0ZWx5
IHJlbW92ZWQgZnJvbSBob3N0aW5nIHdpbmRvdyB1cG9uIGVudGVyaW5nIGZ1bGwgc2NyZWVuLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9BbHRlcm5hdGl2ZVRleHRDbGllbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvQWx0ZXJuYXRpdmVUZXh0Q2xpZW50LmgKaW5kZXggZjVhZTY3
ZDBlZDlmZGM2ZmJmNDcwNzM3NjY2M2I5MmFjOTMxNWNiYy4uMDk0N2M4N2JhMDI0MTQ0MzFlNjZk
MzYzYzY4YTkzNjY2ZmRlOTZmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9BbHRl
cm5hdGl2ZVRleHRDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0FsdGVybmF0aXZl
VGV4dENsaWVudC5oCkBAIC01Myw2ICs1Myw4IEBAIGVudW0gQXV0b2NvcnJlY3Rpb25SZXNwb25z
ZVR5cGUgewogY2xhc3MgQWx0ZXJuYXRpdmVUZXh0Q2xpZW50IHsKIHB1YmxpYzoKICAgICB2aXJ0
dWFsIH5BbHRlcm5hdGl2ZVRleHRDbGllbnQoKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgcGFnZURl
c3Ryb3llZCgpID0gMDsKKwogICAgIHZpcnR1YWwgdm9pZCBzaG93Q29ycmVjdGlvbkFsdGVybmF0
aXZlKEFsdGVybmF0aXZlVGV4dFR5cGUsIGNvbnN0IEZsb2F0UmVjdCYgYm91bmRpbmdCb3hPZlJl
cGxhY2VkU3RyaW5nLCBjb25zdCBTdHJpbmcmIHJlcGxhY2VkU3RyaW5nLCBjb25zdCBTdHJpbmcm
IHJlcGxhY21lbnRTdHJpbmcsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBhbHRlcm5hdGl2ZVJlcGxh
Y2VtZW50U3RyaW5ncykgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkaXNtaXNzQWx0ZXJuYXRpdmUo
UmVhc29uRm9yRGlzbWlzc2luZ0FsdGVybmF0aXZlVGV4dCkgPSAwOwogICAgIHZpcnR1YWwgU3Ry
aW5nIGRpc21pc3NBbHRlcm5hdGl2ZVNvb24oUmVhc29uRm9yRGlzbWlzc2luZ0FsdGVybmF0aXZl
VGV4dCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKaW5kZXggYzc5NjIyYmM0ODRhOWIxNDFlNGRhYjdm
NjBmM2Y2YTA0MjM1YjhjMy4uZmRlOGJjMDVjZmJhN2NhNzAyZjI2YWMwOWVhNjIxNmJlMDZlMWMz
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BhZ2UuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAo
QykgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMCwgMjAxMSBBcHBsZSBJbmMuIEFsbCBSaWdo
dHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDksIDIw
MTAsIDIwMTEsIDIwMTIgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICogQ29weXJp
Z2h0IChDKSAyMDA4IFRvcmNoIE1vYmlsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIChodHRw
Oi8vd3d3LnRvcmNobW9iaWxlLmNvbS8pCiAgKgogICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29m
dHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgpAQCAtMjAsNiArMjAsNyBAQAog
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKIAorI2luY2x1ZGUgIkFsdGVy
bmF0aXZlVGV4dENsaWVudC5oIgogI2luY2x1ZGUgIkJhY2tGb3J3YXJkQ29udHJvbGxlci5oIgog
I2luY2x1ZGUgIkJhY2tGb3J3YXJkTGlzdC5oIgogI2luY2x1ZGUgIkJhc2U2NC5oIgpAQCAtMTg4
LDYgKzE4OSw4IEBAIFBhZ2U6On5QYWdlKCkKICAgICB9CiAKICAgICBtX2VkaXRvckNsaWVudC0+
cGFnZURlc3Ryb3llZCgpOworICAgIGlmIChtX2FsdGVybmF0aXZlVGV4dENsaWVudCkKKyAgICAg
ICAgbV9hbHRlcm5hdGl2ZVRleHRDbGllbnQtPnBhZ2VEZXN0cm95ZWQoKTsKIAogI2lmIEVOQUJM
RShJTlNQRUNUT1IpCiAgICAgbV9pbnNwZWN0b3JDb250cm9sbGVyLT5pbnNwZWN0ZWRQYWdlRGVz
dHJveWVkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkFsdGVybmF0aXZlVGV4dENsaWVudC5oCmluZGV4IDdlZGZhY2UwYWUzNDY4MTQxOTdj
ZGIxNTZkNmJiMzZjZDZiMWQxZDcuLjVlNjZhY2FmN2I3MWFlNzRlY2ZkZDJiNGU3MjFkOTNmZDhj
Y2ZjN2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkFs
dGVybmF0aXZlVGV4dENsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkFsdGVybmF0aXZlVGV4dENsaWVudC5oCkBAIC0zNiw2ICszNiw3IEBAIGNsYXNzIFdl
YkFsdGVybmF0aXZlVGV4dENsaWVudCA6IHB1YmxpYyBXZWJDb3JlOjpBbHRlcm5hdGl2ZVRleHRD
bGllbnQgewogcHVibGljOgogICAgIFdlYkFsdGVybmF0aXZlVGV4dENsaWVudChXZWJWaWV3ICop
OwogICAgIHZpcnR1YWwgfldlYkFsdGVybmF0aXZlVGV4dENsaWVudCgpOworICAgIHZpcnR1YWwg
dm9pZCBwYWdlRGVzdHJveWVkKCkgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHNob3dDb3Jy
ZWN0aW9uQWx0ZXJuYXRpdmUoV2ViQ29yZTo6QWx0ZXJuYXRpdmVUZXh0VHlwZSwgY29uc3QgV2Vi
Q29yZTo6RmxvYXRSZWN0JiBib3VuZGluZ0JveE9mUmVwbGFjZWRTdHJpbmcsIGNvbnN0IFN0cmlu
ZyYgcmVwbGFjZWRTdHJpbmcsIGNvbnN0IFN0cmluZyYgcmVwbGFjZW1lbnRTdHJpbmcsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiBhbHRlcm5hdGl2ZVJlcGxhY2VtZW50U3RyaW5ncykgT1ZFUlJJREU7
CiAgICAgdmlydHVhbCB2b2lkIGRpc21pc3NBbHRlcm5hdGl2ZShXZWJDb3JlOjpSZWFzb25Gb3JE
aXNtaXNzaW5nQWx0ZXJuYXRpdmVUZXh0KSBPVkVSUklERTsKICAgICB2aXJ0dWFsIFN0cmluZyBk
aXNtaXNzQWx0ZXJuYXRpdmVTb29uKFdlYkNvcmU6OlJlYXNvbkZvckRpc21pc3NpbmdBbHRlcm5h
dGl2ZVRleHQpIE9WRVJSSURFOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50Lm1tCmluZGV4IDY5NzJmYjRi
YTkzMmUyNGNkYmIwNDk5Y2U0OGVmNmVhMjRlZDUyY2QuLmYxYTcwZmM1NDNjNmM1YzdhODIxMWU1
N2M1MDlhOThiYjAwZmZkY2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkFsdGVybmF0aXZlVGV4dENsaWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJDb3JlU3VwcG9ydC9XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQubW0KQEAgLTM5LDYgKzM5
LDExIEBAIFdlYkFsdGVybmF0aXZlVGV4dENsaWVudDo6fldlYkFsdGVybmF0aXZlVGV4dENsaWVu
dCgpCiAjZW5kaWYKIH0KIAordm9pZCBXZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQ6OnBhZ2VEZXN0
cm95ZWQoKQoreworICAgIGRlbGV0ZSB0aGlzOworfQorCiB2b2lkIFdlYkFsdGVybmF0aXZlVGV4
dENsaWVudDo6c2hvd0NvcnJlY3Rpb25BbHRlcm5hdGl2ZShBbHRlcm5hdGl2ZVRleHRUeXBlIHR5
cGUsIGNvbnN0IEZsb2F0UmVjdCYgYm91bmRpbmdCb3hPZlJlcGxhY2VkU3RyaW5nLCBjb25zdCBT
dHJpbmcmIHJlcGxhY2VkU3RyaW5nLCBjb25zdCBTdHJpbmcmIHJlcGxhY2VtZW50U3RyaW5nLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgYWx0ZXJuYXRpdmVSZXBsYWNlbWVudFN0cmluZ3MpCiB7CiAj
aWYgVVNFKEFVVE9DT1JSRUNUSU9OX1BBTkVMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQuaCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQWx0ZXJuYXRpdmVUZXh0
Q2xpZW50LmgKaW5kZXggYjgwNWFkYWY1ODEyYWY1ZjIzY2VjNGExYjVjOTJkN2M2OTM2ZTJjNC4u
MjAwNzY1ODM2ODA1M2ZmMmIyZWZiYjBhMzRiZmZmY2ZiOWQyOTcxYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJBbHRlcm5hdGl2ZVRleHRD
bGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkFsdGVybmF0aXZlVGV4dENsaWVudC5oCkBAIC0zNyw2ICszNyw3IEBAIGNsYXNzIFdlYkFsdGVy
bmF0aXZlVGV4dENsaWVudCA6IHB1YmxpYyBXZWJDb3JlOjpBbHRlcm5hdGl2ZVRleHRDbGllbnQg
ewogcHVibGljOgogICAgIFdlYkFsdGVybmF0aXZlVGV4dENsaWVudChXZWJQYWdlICopOwogICAg
IHZpcnR1YWwgfldlYkFsdGVybmF0aXZlVGV4dENsaWVudCgpOworICAgIHZpcnR1YWwgdm9pZCBw
YWdlRGVzdHJveWVkKCkgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHNob3dDb3JyZWN0aW9u
QWx0ZXJuYXRpdmUoV2ViQ29yZTo6QWx0ZXJuYXRpdmVUZXh0VHlwZSwgY29uc3QgV2ViQ29yZTo6
RmxvYXRSZWN0JiBib3VuZGluZ0JveE9mUmVwbGFjZWRTdHJpbmcsIGNvbnN0IFN0cmluZyYgcmVw
bGFjZWRTdHJpbmcsIGNvbnN0IFN0cmluZyYgcmVwbGFjZW1lbnRTdHJpbmcsIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiBhbHRlcm5hdGl2ZVJlcGxhY2VtZW50U3RyaW5ncykgT1ZFUlJJREU7CiAgICAg
dmlydHVhbCB2b2lkIGRpc21pc3NBbHRlcm5hdGl2ZShXZWJDb3JlOjpSZWFzb25Gb3JEaXNtaXNz
aW5nQWx0ZXJuYXRpdmVUZXh0KSBPVkVSUklERTsKICAgICB2aXJ0dWFsIFN0cmluZyBkaXNtaXNz
QWx0ZXJuYXRpdmVTb29uKFdlYkNvcmU6OlJlYXNvbkZvckRpc21pc3NpbmdBbHRlcm5hdGl2ZVRl
eHQpIE9WRVJSSURFOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9tYWMvV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50LmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYkFsdGVybmF0aXZlVGV4dENsaWVu
dC5jcHAKaW5kZXggNmFiYjY5MzU0MWQwODU2ZWUwMWZkYzYzZTgxOGY5ODU2NjRmNjBkYS4uYWMx
ZGZjNTgzYTY0YWExMjEzNjY2OWYyOTRiMmU0ZmVlZmM5MGMwYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViQWx0ZXJuYXRpdmVUZXh0
Q2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L21hYy9XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQuY3BwCkBAIC00Niw2ICs0NiwxMSBAQCBXZWJB
bHRlcm5hdGl2ZVRleHRDbGllbnQ6On5XZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQoKQogI2VuZGlm
CiB9CiAKK3ZvaWQgV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50OjpwYWdlRGVzdHJveWVkKCkKK3sK
KyAgICBkZWxldGUgdGhpczsKK30KKwogdm9pZCBXZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQ6OnNo
b3dDb3JyZWN0aW9uQWx0ZXJuYXRpdmUoQWx0ZXJuYXRpdmVUZXh0VHlwZSB0eXBlLCBjb25zdCBG
bG9hdFJlY3QmIGJvdW5kaW5nQm94T2ZSZXBsYWNlZFN0cmluZywgY29uc3QgU3RyaW5nJiByZXBs
YWNlZFN0cmluZywgY29uc3QgU3RyaW5nJiByZXBsYWNlbWVudFN0cmluZywgY29uc3QgVmVjdG9y
PFN0cmluZz4mIGFsdGVybmF0aXZlUmVwbGFjZW1lbnRTdHJpbmdzKQogewogI2lmIFVTRShBVVRP
Q09SUkVDVElPTl9QQU5FTCkK
</data>
<flag name="review"
          id="144626"
          type_id="1"
          status="+"
          setter="enrica"
    />
          </attachment>
      

    </bug>

</bugzilla>