<?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>64241</bug_id>
          
          <creation_ts>2011-07-10 11:30:54 -0700</creation_ts>
          <short_desc>WebKit2 is leaking NSCursors created by leakNamedCursor</short_desc>
          <delta_ts>2011-07-10 19:08: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>New Bugs</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>darin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>434583</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-07-10 11:30:54 -0700</bug_when>
    <thetext>WebKit2 is leaking NSCursors created by leakNamedCursor</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434589</commentid>
    <comment_count>1</comment_count>
      <attachid>100233</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-07-10 11:40:04 -0700</bug_when>
    <thetext>Created attachment 100233
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434610</commentid>
    <comment_count>2</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-07-10 12:41:42 -0700</bug_when>
    <thetext>Wouldn’t it be better to cache each of these NSCursor objects exactly once?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434611</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-07-10 12:41:53 -0700</bug_when>
    <thetext>Except for the custom cursor one?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434624</commentid>
    <comment_count>4</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-07-10 16:10:41 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Wouldn’t it be better to cache each of these NSCursor objects exactly once?

We&apos;re already caching them in the Cursor singletons in WebKit1, and for WebKit2 that&apos;s what the forcing of platformCursor does. I don&apos;t like the idea of having three levels of caches for some Cursors (WKSI, CursorMac.mm and Cursor.cpp).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434626</commentid>
    <comment_count>5</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-07-10 17:32:08 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; for WebKit2 that&apos;s what the forcing of platformCursor does

So I guess that’s the real fix. Not sure the rest of this patch was needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434643</commentid>
    <comment_count>6</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-07-10 19:02:15 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #4)
&gt; &gt; for WebKit2 that&apos;s what the forcing of platformCursor does
&gt; 
&gt; So I guess that’s the real fix. Not sure the rest of this patch was needed.

Right. I figured I&apos;d do that part anyway since I don&apos;t like having potential leaks present in the code. In the future I think we can get rid of the Cursor singletons and cache the underlying platform cursors instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434648</commentid>
    <comment_count>7</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-07-10 19:08:47 -0700</bug_when>
    <thetext>Committed r90705: &lt;http://trac.webkit.org/changeset/90705&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>100233</attachid>
            <date>2011-07-10 11:40:04 -0700</date>
            <delta_ts>2011-07-10 12:08:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64241-20110710113956.patch</filename>
            <type>text/plain</type>
            <size>13061</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDkwNjkzKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDctMTAgIEFuZGVycyBD
YXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBXZWJLaXQyIGlzIGxlYWtp
bmcgTlNDdXJzb3JzIGNyZWF0ZWQgYnkgbGVha05hbWVkQ3Vyc29yCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NDI0MQorICAgICAgICA8cmRhcjovL3By
b2JsZW0vOTUwNzE1MT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIHBsYXRmb3JtL21hYy9DdXJzb3JNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpj
cmVhdGVOYW1lZEN1cnNvcik6CisgICAgICAgIFJlbmFtZSB0aGlzIGZyb20gbGVha05hbWVkQ3Vy
c29yIHRvIGNyZWF0ZU5hbWVkQ3Vyc29yIGFuZCBtYWtlIGl0IHJldHVybiBhCisgICAgICAgIFJl
dGFpblB0cjxOU0N1cnNvcj4gaW5zdGVhZCBvZiBhIHJhdyBwb2ludGVyLgorCisgICAgICAgIChX
ZWJDb3JlOjpDdXJzb3I6OmVuc3VyZVBsYXRmb3JtQ3Vyc29yKToKKyAgICAgICAgRG9uJ3QgbGVh
ayBjdXJzb3JzIGhlcmUuIFdlIHN0aWxsIHdvbid0IGRlYWxsb2NhdGUgY3Vyc29ycyBkdXJpbmcg
c2h1dGRvd24gKHdoaWNoIGxlYWtOYW1lZEN1cnNvcgorICAgICAgICB3YXMgc2FpZCB0byBwcmV2
ZW50KSBiZWNhdXNlIHRoZSBjdXJzb3Igc2luZ2xldG9ucyBhcmUgYWxsIGFsbG9jYXRlZCBmcm9t
IHRoZSBoZWFwIGFuZCBhcmUgbmV2ZXIgZGVzdHJveWVkCisgICAgICAgIGFueXdheS4KKwogMjAx
MS0wNy0xMCAgUGF0cmljayBHYW5zdGVyZXIgIDxwYXJvZ2FAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL0N1cnNvck1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvQ3Vyc29yTWFjLm1tCShyZXZpc2lvbiA5MDY5MikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21hYy9DdXJzb3JNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTUzLDIxICs1MywxNyBAQCBz
dGF0aWMgUmV0YWluUHRyPE5TQ3Vyc29yPiBjcmVhdGVDdXN0b21DCiAgICAgcmV0dXJuIDA7CiB9
CiAKLS8vIExlYWsgdGhlc2UgY3Vyc29ycyBpbnRlbnRpb25hbGx5LCB0aGF0IHdheSB3ZSB3b24n
dCB3YXN0ZSB0aW1lIHRyeWluZyB0byBjbGVhbiB0aGVtCi0vLyB1cCBhdCBwcm9jZXNzIGV4aXQg
dGltZS4KLXN0YXRpYyBOU0N1cnNvciogbGVha05hbWVkQ3Vyc29yKGNvbnN0IGNoYXIqIG5hbWUs
IGludCB4LCBpbnQgeSkKK3N0YXRpYyBSZXRhaW5QdHI8TlNDdXJzb3I+IGNyZWF0ZU5hbWVkQ3Vy
c29yKGNvbnN0IGNoYXIqIG5hbWUsIGludCB4LCBpbnQgeSkKIHsKICAgICBCRUdJTl9CTE9DS19P
QkpDX0VYQ0VQVElPTlM7Ci0gICAgTlNTdHJpbmcqIHJlc291cmNlTmFtZSA9IFtbTlNTdHJpbmcg
YWxsb2NdIGluaXRXaXRoVVRGOFN0cmluZzpuYW1lXTsKLSAgICBOU0ltYWdlKiBjdXJzb3JJbWFn
ZSA9IFtbTlNJbWFnZSBhbGxvY10gaW5pdFdpdGhDb250ZW50c09mRmlsZToKLSAgICAgICAgW1tO
U0J1bmRsZSBidW5kbGVGb3JDbGFzczpbV2ViQ29yZUN1cnNvckJ1bmRsZSBjbGFzc11dCi0gICAg
ICAgIHBhdGhGb3JSZXNvdXJjZTpyZXNvdXJjZU5hbWUgb2ZUeXBlOkAicG5nIl1dOwotICAgIFty
ZXNvdXJjZU5hbWUgcmVsZWFzZV07Ci0gICAgTlNDdXJzb3IqIGN1cnNvciA9IDA7CisgICAgUmV0
YWluUHRyPE5TU3RyaW5nPiByZXNvdXJjZU5hbWUoQWRvcHROUywgW1tOU1N0cmluZyBhbGxvY10g
aW5pdFdpdGhVVEY4U3RyaW5nOm5hbWVdKTsKKyAgICBSZXRhaW5QdHI8TlNJbWFnZT4gY3Vyc29y
SW1hZ2UoQWRvcHROUywgW1tOU0ltYWdlIGFsbG9jXSBpbml0V2l0aENvbnRlbnRzT2ZGaWxlOltb
TlNCdW5kbGUgYnVuZGxlRm9yQ2xhc3M6W1dlYkNvcmVDdXJzb3JCdW5kbGUgY2xhc3NdXSBwYXRo
Rm9yUmVzb3VyY2U6cmVzb3VyY2VOYW1lLmdldCgpIG9mVHlwZTpAInBuZyJdXSk7CisgICAgCisg
ICAgUmV0YWluUHRyPE5TQ3Vyc29yPiBjdXJzb3I7CisKICAgICBpZiAoY3Vyc29ySW1hZ2UpIHsK
ICAgICAgICAgTlNQb2ludCBob3RTcG90UG9pbnQgPSB7eCwgeX07IC8vIHdvcmthcm91bmQgZm9y
IDQyMTMzMTQKLSAgICAgICAgY3Vyc29yID0gW1tOU0N1cnNvciBhbGxvY10gaW5pdFdpdGhJbWFn
ZTpjdXJzb3JJbWFnZSBob3RTcG90OmhvdFNwb3RQb2ludF07Ci0gICAgICAgIFtjdXJzb3JJbWFn
ZSByZWxlYXNlXTsKKyAgICAgICAgY3Vyc29yLmFkb3B0TlMoW1tOU0N1cnNvciBhbGxvY10gaW5p
dFdpdGhJbWFnZTpjdXJzb3JJbWFnZS5nZXQoKSBob3RTcG90OmhvdFNwb3RQb2ludF0pOwogICAg
IH0KICAgICByZXR1cm4gY3Vyc29yOwogICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CkBA
IC05MiwyNCArODgsMjQgQEAgdm9pZCBDdXJzb3I6OmVuc3VyZVBsYXRmb3JtQ3Vyc29yKCkgY29u
cwogI2Vsc2UKICAgICAgICAgLy8gVGhlIHBvaW50aW5nSGFuZEN1cnNvciBmcm9tIE5TQ3Vyc29y
IGRvZXMgbm90IGhhdmUgYSBzaGFkb3cgb24KICAgICAgICAgLy8gb2xkZXIgdmVyc2lvbnMgb2Yg
TWFjIE9TIFgsIHNvIHVzZSBvdXIgb3duIGN1c3RvbSBjdXJzb3IuCi0gICAgICAgIG1fcGxhdGZv
cm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJzb3IoImxpbmtDdXJzb3IiLCA2LCAxKTsKKyAgICAgICAg
bV9wbGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJsaW5rQ3Vyc29yIiwgNiwgMSk7
CiAjZW5kaWYKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDdXJzb3I6OklCZWFtOgogICAgICAg
ICBtX3BsYXRmb3JtQ3Vyc29yID0gW05TQ3Vyc29yIElCZWFtQ3Vyc29yXTsKICAgICAgICAgYnJl
YWs7CiAgICAgY2FzZSBDdXJzb3I6OldhaXQ6Ci0gICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSBs
ZWFrTmFtZWRDdXJzb3IoIndhaXRDdXJzb3IiLCA3LCA3KTsKKyAgICAgICAgbV9wbGF0Zm9ybUN1
cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJ3YWl0Q3Vyc29yIiwgNywgNyk7CiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgQ3Vyc29yOjpIZWxwOgotICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0g
bGVha05hbWVkQ3Vyc29yKCJoZWxwQ3Vyc29yIiwgOCwgOCk7CisgICAgICAgIG1fcGxhdGZvcm1D
dXJzb3IgPSBjcmVhdGVOYW1lZEN1cnNvcigiaGVscEN1cnNvciIsIDgsIDgpOwogICAgICAgICBi
cmVhazsKICAgICBjYXNlIEN1cnNvcjo6TW92ZToKICAgICBjYXNlIEN1cnNvcjo6TWlkZGxlUGFu
bmluZzoKICNpZiAhZGVmaW5lZChCVUlMRElOR19PTl9MRU9QQVJEKSAmJiAhZGVmaW5lZChCVUlM
RElOR19PTl9TTk9XX0xFT1BBUkQpCiAgICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSB3a0N1cnNv
cigiTW92ZSIpOwogI2Vsc2UKLSAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGxlYWtOYW1lZEN1
cnNvcigibW92ZUN1cnNvciIsIDcsIDcpOworICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gY3Jl
YXRlTmFtZWRDdXJzb3IoIm1vdmVDdXJzb3IiLCA3LCA3KTsKICNlbmRpZgogICAgICAgICBicmVh
azsKICAgICBjYXNlIEN1cnNvcjo6RWFzdFJlc2l6ZToKQEAgLTExNyw3ICsxMTMsNyBAQCB2b2lk
IEN1cnNvcjo6ZW5zdXJlUGxhdGZvcm1DdXJzb3IoKSBjb25zCiAjaWYgIWRlZmluZWQoQlVJTERJ
TkdfT05fTEVPUEFSRCkgJiYgIWRlZmluZWQoQlVJTERJTkdfT05fU05PV19MRU9QQVJEKQogICAg
ICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gd2tDdXJzb3IoIlJlc2l6ZUVhc3QiKTsKICNlbHNlCi0g
ICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJzb3IoImVhc3RSZXNpemVDdXJz
b3IiLCAxNCwgNyk7CisgICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSBjcmVhdGVOYW1lZEN1cnNv
cigiZWFzdFJlc2l6ZUN1cnNvciIsIDE0LCA3KTsKICNlbmRpZgogICAgICAgICBicmVhazsKICAg
ICBjYXNlIEN1cnNvcjo6Tm9ydGhSZXNpemU6CkBAIC0xMjUsNyArMTIxLDcgQEAgdm9pZCBDdXJz
b3I6OmVuc3VyZVBsYXRmb3JtQ3Vyc29yKCkgY29ucwogI2lmICFkZWZpbmVkKEJVSUxESU5HX09O
X0xFT1BBUkQpICYmICFkZWZpbmVkKEJVSUxESU5HX09OX1NOT1dfTEVPUEFSRCkKICAgICAgICAg
bV9wbGF0Zm9ybUN1cnNvciA9IHdrQ3Vyc29yKCJSZXNpemVOb3J0aCIpOwogI2Vsc2UKLSAgICAg
ICAgbV9wbGF0Zm9ybUN1cnNvciA9IGxlYWtOYW1lZEN1cnNvcigibm9ydGhSZXNpemVDdXJzb3Ii
LCA3LCAxKTsKKyAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJu
b3J0aFJlc2l6ZUN1cnNvciIsIDcsIDEpOwogI2VuZGlmCiAgICAgICAgIGJyZWFrOwogICAgIGNh
c2UgQ3Vyc29yOjpOb3J0aEVhc3RSZXNpemU6CkBAIC0xMzMsNyArMTI5LDcgQEAgdm9pZCBDdXJz
b3I6OmVuc3VyZVBsYXRmb3JtQ3Vyc29yKCkgY29ucwogI2lmICFkZWZpbmVkKEJVSUxESU5HX09O
X0xFT1BBUkQpICYmICFkZWZpbmVkKEJVSUxESU5HX09OX1NOT1dfTEVPUEFSRCkKICAgICAgICAg
bV9wbGF0Zm9ybUN1cnNvciA9IHdrQ3Vyc29yKCJSZXNpemVOb3J0aGVhc3QiKTsKICNlbHNlCi0g
ICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJzb3IoIm5vcnRoRWFzdFJlc2l6
ZUN1cnNvciIsIDE0LCAxKTsKKyAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVk
Q3Vyc29yKCJub3J0aEVhc3RSZXNpemVDdXJzb3IiLCAxNCwgMSk7CiAjZW5kaWYKICAgICAgICAg
YnJlYWs7CiAgICAgY2FzZSBDdXJzb3I6Ok5vcnRoV2VzdFJlc2l6ZToKQEAgLTE0MSw3ICsxMzcs
NyBAQCB2b2lkIEN1cnNvcjo6ZW5zdXJlUGxhdGZvcm1DdXJzb3IoKSBjb25zCiAjaWYgIWRlZmlu
ZWQoQlVJTERJTkdfT05fTEVPUEFSRCkgJiYgIWRlZmluZWQoQlVJTERJTkdfT05fU05PV19MRU9Q
QVJEKQogICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gd2tDdXJzb3IoIlJlc2l6ZU5vcnRod2Vz
dCIpOwogI2Vsc2UKLSAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGxlYWtOYW1lZEN1cnNvcigi
bm9ydGhXZXN0UmVzaXplQ3Vyc29yIiwgMCwgMCk7CisgICAgICAgIG1fcGxhdGZvcm1DdXJzb3Ig
PSBjcmVhdGVOYW1lZEN1cnNvcigibm9ydGhXZXN0UmVzaXplQ3Vyc29yIiwgMCwgMCk7CiAjZW5k
aWYKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDdXJzb3I6OlNvdXRoUmVzaXplOgpAQCAtMTQ5
LDcgKzE0NSw3IEBAIHZvaWQgQ3Vyc29yOjplbnN1cmVQbGF0Zm9ybUN1cnNvcigpIGNvbnMKICNp
ZiAhZGVmaW5lZChCVUlMRElOR19PTl9MRU9QQVJEKSAmJiAhZGVmaW5lZChCVUlMRElOR19PTl9T
Tk9XX0xFT1BBUkQpCiAgICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSB3a0N1cnNvcigiUmVzaXpl
U291dGgiKTsKICNlbHNlCi0gICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJz
b3IoInNvdXRoUmVzaXplQ3Vyc29yIiwgNywgMTQpOworICAgICAgICBtX3BsYXRmb3JtQ3Vyc29y
ID0gY3JlYXRlTmFtZWRDdXJzb3IoInNvdXRoUmVzaXplQ3Vyc29yIiwgNywgMTQpOwogI2VuZGlm
CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ3Vyc29yOjpTb3V0aEVhc3RSZXNpemU6CkBAIC0x
NTcsNyArMTUzLDcgQEAgdm9pZCBDdXJzb3I6OmVuc3VyZVBsYXRmb3JtQ3Vyc29yKCkgY29ucwog
I2lmICFkZWZpbmVkKEJVSUxESU5HX09OX0xFT1BBUkQpICYmICFkZWZpbmVkKEJVSUxESU5HX09O
X1NOT1dfTEVPUEFSRCkKICAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IHdrQ3Vyc29yKCJSZXNp
emVTb3V0aGVhc3QiKTsKICNlbHNlCi0gICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSBsZWFrTmFt
ZWRDdXJzb3IoInNvdXRoRWFzdFJlc2l6ZUN1cnNvciIsIDE0LCAxNCk7CisgICAgICAgIG1fcGxh
dGZvcm1DdXJzb3IgPSBjcmVhdGVOYW1lZEN1cnNvcigic291dGhFYXN0UmVzaXplQ3Vyc29yIiwg
MTQsIDE0KTsKICNlbmRpZgogICAgICAgICBicmVhazsKICAgICBjYXNlIEN1cnNvcjo6U291dGhX
ZXN0UmVzaXplOgpAQCAtMTY1LDIxICsxNjEsMjEgQEAgdm9pZCBDdXJzb3I6OmVuc3VyZVBsYXRm
b3JtQ3Vyc29yKCkgY29ucwogI2lmICFkZWZpbmVkKEJVSUxESU5HX09OX0xFT1BBUkQpICYmICFk
ZWZpbmVkKEJVSUxESU5HX09OX1NOT1dfTEVPUEFSRCkKICAgICAgICAgbV9wbGF0Zm9ybUN1cnNv
ciA9IHdrQ3Vyc29yKCJSZXNpemVTb3V0aHdlc3QiKTsKICNlbHNlCi0gICAgICAgIG1fcGxhdGZv
cm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJzb3IoInNvdXRoV2VzdFJlc2l6ZUN1cnNvciIsIDEsIDE0
KTsKKyAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJzb3V0aFdl
c3RSZXNpemVDdXJzb3IiLCAxLCAxNCk7CiAjZW5kaWYKICAgICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBDdXJzb3I6Oldlc3RSZXNpemU6CiAjaWYgIWRlZmluZWQoQlVJTERJTkdfT05fTEVPUEFSRCkg
JiYgIWRlZmluZWQoQlVJTERJTkdfT05fU05PV19MRU9QQVJEKQogICAgICAgICBtX3BsYXRmb3Jt
Q3Vyc29yID0gd2tDdXJzb3IoIlJlc2l6ZVdlc3QiKTsKICNlbHNlCi0gICAgICAgIG1fcGxhdGZv
cm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJzb3IoIndlc3RSZXNpemVDdXJzb3IiLCAxLCA3KTsKKyAg
ICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJ3ZXN0UmVzaXplQ3Vy
c29yIiwgMSwgNyk7CiAjZW5kaWYKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDdXJzb3I6Ok5v
cnRoU291dGhSZXNpemU6CiAjaWYgIWRlZmluZWQoQlVJTERJTkdfT05fTEVPUEFSRCkgJiYgIWRl
ZmluZWQoQlVJTERJTkdfT05fU05PV19MRU9QQVJEKQogICAgICAgICBtX3BsYXRmb3JtQ3Vyc29y
ID0gd2tDdXJzb3IoIlJlc2l6ZU5vcnRoU291dGgiKTsKICNlbHNlCi0gICAgICAgIG1fcGxhdGZv
cm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJzb3IoIm5vcnRoU291dGhSZXNpemVDdXJzb3IiLCA3LCA3
KTsKKyAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJub3J0aFNv
dXRoUmVzaXplQ3Vyc29yIiwgNywgNyk7CiAjZW5kaWYKICAgICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBDdXJzb3I6OkVhc3RXZXN0UmVzaXplOgpAQCAtMTg3LDIxICsxODMsMjEgQEAgdm9pZCBDdXJz
b3I6OmVuc3VyZVBsYXRmb3JtQ3Vyc29yKCkgY29ucwogI2lmICFkZWZpbmVkKEJVSUxESU5HX09O
X0xFT1BBUkQpICYmICFkZWZpbmVkKEJVSUxESU5HX09OX1NOT1dfTEVPUEFSRCkKICAgICAgICAg
bV9wbGF0Zm9ybUN1cnNvciA9IHdrQ3Vyc29yKCJSZXNpemVFYXN0V2VzdCIpOwogI2Vsc2UKLSAg
ICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGxlYWtOYW1lZEN1cnNvcigiZWFzdFdlc3RSZXNpemVD
dXJzb3IiLCA3LCA3KTsKKyAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVkQ3Vy
c29yKCJlYXN0V2VzdFJlc2l6ZUN1cnNvciIsIDcsIDcpOwogI2VuZGlmCiAgICAgICAgIGJyZWFr
OwogICAgIGNhc2UgQ3Vyc29yOjpOb3J0aEVhc3RTb3V0aFdlc3RSZXNpemU6CiAjaWYgIWRlZmlu
ZWQoQlVJTERJTkdfT05fTEVPUEFSRCkgJiYgIWRlZmluZWQoQlVJTERJTkdfT05fU05PV19MRU9Q
QVJEKQogICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gd2tDdXJzb3IoIlJlc2l6ZU5vcnRoZWFz
dFNvdXRod2VzdCIpOwogI2Vsc2UKLSAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGxlYWtOYW1l
ZEN1cnNvcigibm9ydGhFYXN0U291dGhXZXN0UmVzaXplQ3Vyc29yIiwgNywgNyk7CisgICAgICAg
IG1fcGxhdGZvcm1DdXJzb3IgPSBjcmVhdGVOYW1lZEN1cnNvcigibm9ydGhFYXN0U291dGhXZXN0
UmVzaXplQ3Vyc29yIiwgNywgNyk7CiAjZW5kaWYKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBD
dXJzb3I6Ok5vcnRoV2VzdFNvdXRoRWFzdFJlc2l6ZToKICNpZiAhZGVmaW5lZChCVUlMRElOR19P
Tl9MRU9QQVJEKSAmJiAhZGVmaW5lZChCVUlMRElOR19PTl9TTk9XX0xFT1BBUkQpCiAgICAgICAg
IG1fcGxhdGZvcm1DdXJzb3IgPSB3a0N1cnNvcigiUmVzaXplTm9ydGh3ZXN0U291dGhlYXN0Iik7
CiAjZWxzZQotICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gbGVha05hbWVkQ3Vyc29yKCJub3J0
aFdlc3RTb3V0aEVhc3RSZXNpemVDdXJzb3IiLCA3LCA3KTsKKyAgICAgICAgbV9wbGF0Zm9ybUN1
cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJub3J0aFdlc3RTb3V0aEVhc3RSZXNpemVDdXJzb3Ii
LCA3LCA3KTsKICNlbmRpZgogICAgICAgICBicmVhazsKICAgICBjYXNlIEN1cnNvcjo6Q29sdW1u
UmVzaXplOgpAQCAtMjE0LDU4ICsyMTAsNTggQEAgdm9pZCBDdXJzb3I6OmVuc3VyZVBsYXRmb3Jt
Q3Vyc29yKCkgY29ucwogI2lmICFkZWZpbmVkKEJVSUxESU5HX09OX0xFT1BBUkQpICYmICFkZWZp
bmVkKEJVSUxESU5HX09OX1NOT1dfTEVPUEFSRCkKICAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9
IFtOU0N1cnNvciBJQmVhbUN1cnNvckZvclZlcnRpY2FsTGF5b3V0XTsKICNlbHNlCi0gICAgICAg
IG1fcGxhdGZvcm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJzb3IoInZlcnRpY2FsVGV4dEN1cnNvciIs
IDcsIDcpOworICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gY3JlYXRlTmFtZWRDdXJzb3IoInZl
cnRpY2FsVGV4dEN1cnNvciIsIDcsIDcpOwogI2VuZGlmCiAgICAgICAgIGJyZWFrOwogICAgIGNh
c2UgQ3Vyc29yOjpDZWxsOgotICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gbGVha05hbWVkQ3Vy
c29yKCJjZWxsQ3Vyc29yIiwgNywgNyk7CisgICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSBjcmVh
dGVOYW1lZEN1cnNvcigiY2VsbEN1cnNvciIsIDcsIDcpOwogICAgICAgICBicmVhazsKICAgICBj
YXNlIEN1cnNvcjo6Q29udGV4dE1lbnU6CiAjaWYgIWRlZmluZWQoQlVJTERJTkdfT05fTEVPUEFS
RCkKICAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IFtOU0N1cnNvciBjb250ZXh0dWFsTWVudUN1
cnNvcl07CiAjZWxzZQotICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gbGVha05hbWVkQ3Vyc29y
KCJjb250ZXh0TWVudUN1cnNvciIsIDMsIDIpOworICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0g
Y3JlYXRlTmFtZWRDdXJzb3IoImNvbnRleHRNZW51Q3Vyc29yIiwgMywgMik7CiAjZW5kaWYKICAg
ICAgICAgYnJlYWs7CiAgICAgY2FzZSBDdXJzb3I6OkFsaWFzOgogI2lmICFkZWZpbmVkKEJVSUxE
SU5HX09OX0xFT1BBUkQpICYmICFkZWZpbmVkKEJVSUxESU5HX09OX1NOT1dfTEVPUEFSRCkKICAg
ICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IHdrQ3Vyc29yKCJNYWtlQWxpYXMiKTsKICNlbHNlCi0g
ICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJzb3IoImFsaWFzQ3Vyc29yIiwg
MTEsIDMpOworICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gY3JlYXRlTmFtZWRDdXJzb3IoImFs
aWFzQ3Vyc29yIiwgMTEsIDMpOwogI2VuZGlmCiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ3Vy
c29yOjpQcm9ncmVzczoKICNpZiAhZGVmaW5lZChCVUlMRElOR19PTl9MRU9QQVJEKSAmJiAhZGVm
aW5lZChCVUlMRElOR19PTl9TTk9XX0xFT1BBUkQpCiAgICAgICAgIG1fcGxhdGZvcm1DdXJzb3Ig
PSB3a0N1cnNvcigiQnVzeUJ1dENsaWNrYWJsZSIpOwogI2Vsc2UKLSAgICAgICAgbV9wbGF0Zm9y
bUN1cnNvciA9IGxlYWtOYW1lZEN1cnNvcigicHJvZ3Jlc3NDdXJzb3IiLCAzLCAyKTsKKyAgICAg
ICAgbV9wbGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJwcm9ncmVzc0N1cnNvciIs
IDMsIDIpOwogI2VuZGlmCiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ3Vyc29yOjpOb0Ryb3A6
Ci0gICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJzb3IoIm5vRHJvcEN1cnNv
ciIsIDMsIDEpOworICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gY3JlYXRlTmFtZWRDdXJzb3Io
Im5vRHJvcEN1cnNvciIsIDMsIDEpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEN1cnNvcjo6
Q29weToKICNpZiAhZGVmaW5lZChCVUlMRElOR19PTl9MRU9QQVJEKQogICAgICAgICBtX3BsYXRm
b3JtQ3Vyc29yID0gW05TQ3Vyc29yIGRyYWdDb3B5Q3Vyc29yXTsKICNlbHNlCi0gICAgICAgIG1f
cGxhdGZvcm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJzb3IoImNvcHlDdXJzb3IiLCAzLCAyKTsKKyAg
ICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJjb3B5Q3Vyc29yIiwg
MywgMik7CiAjZW5kaWYKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDdXJzb3I6Ok5vbmU6Ci0g
ICAgICAgIG1fcGxhdGZvcm1DdXJzb3IgPSBsZWFrTmFtZWRDdXJzb3IoIm5vbmVDdXJzb3IiLCA3
LCA3KTsKKyAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJub25l
Q3Vyc29yIiwgNywgNyk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ3Vyc29yOjpOb3RBbGxv
d2VkOgogI2lmICFkZWZpbmVkKEJVSUxESU5HX09OX0xFT1BBUkQpCiAgICAgICAgIG1fcGxhdGZv
cm1DdXJzb3IgPSBbTlNDdXJzb3Igb3BlcmF0aW9uTm90QWxsb3dlZEN1cnNvcl07CiAjZWxzZQot
ICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gbGVha05hbWVkQ3Vyc29yKCJub3RBbGxvd2VkQ3Vy
c29yIiwgMTEsIDExKTsKKyAgICAgICAgbV9wbGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVkQ3Vy
c29yKCJub3RBbGxvd2VkQ3Vyc29yIiwgMTEsIDExKTsKICNlbmRpZgogICAgICAgICBicmVhazsK
ICAgICBjYXNlIEN1cnNvcjo6Wm9vbUluOgotICAgICAgICBtX3BsYXRmb3JtQ3Vyc29yID0gbGVh
a05hbWVkQ3Vyc29yKCJ6b29tSW5DdXJzb3IiLCA3LCA3KTsKKyAgICAgICAgbV9wbGF0Zm9ybUN1
cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJ6b29tSW5DdXJzb3IiLCA3LCA3KTsKICAgICAgICAg
YnJlYWs7CiAgICAgY2FzZSBDdXJzb3I6Olpvb21PdXQ6Ci0gICAgICAgIG1fcGxhdGZvcm1DdXJz
b3IgPSBsZWFrTmFtZWRDdXJzb3IoInpvb21PdXRDdXJzb3IiLCA3LCA3KTsKKyAgICAgICAgbV9w
bGF0Zm9ybUN1cnNvciA9IGNyZWF0ZU5hbWVkQ3Vyc29yKCJ6b29tT3V0Q3Vyc29yIiwgNywgNyk7
CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ3Vyc29yOjpHcmFiOgogICAgICAgICBtX3BsYXRm
b3JtQ3Vyc29yID0gW05TQ3Vyc29yIG9wZW5IYW5kQ3Vyc29yXTsKSW5kZXg6IFNvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDkwNjkzKQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDctMTAgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2Nh
QGFwcGxlLmNvbT4KKworICAgICAgICBXZWJLaXQyIGlzIGxlYWtpbmcgTlNDdXJzb3JzIGNyZWF0
ZWQgYnkgbGVha05hbWVkQ3Vyc29yCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02NDI0MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHA6CisgICAgICAg
IChDb3JlSVBDOjo6OmRlY29kZSk6CisgICAgICAgIFdoZW4gZGVjb2RpbmcgYSBjdXJzb3Igb2Yg
YSBrbm93biB0eXBlLCBtYWtlIHN1cmUgdG8gZWFnZXJseSBjcmVhdGUgdGhlIHBsYXRmb3JtIGN1
cnNvcgorICAgICAgICBmb3IgdGhlIGN1cnNvciBzaW5nbGV0b24uIFRoaXMgd2F5IHdlIGF2b2lk
IHJlLWNyZWF0aW5nIG5ldyBOU0N1cnNvciBvYmplY3RzIG92ZXIgYW5kIG92ZXIgZm9yCisgICAg
ICAgIHN0YW5kYXJkIGN1cnNvcnMuCisKIDIwMTEtMDctMDkgIE5vZWwgR29yZG9uICA8bm9lbC5n
b3Jkb25AZ21haWwuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCkluZGV4
OiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAko
cmV2aXNpb24gOTA2OTIpCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50
Q29kZXJzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzM1LDcgKzMzNSwxMiBAQCBib29sIEFyZ3Vt
ZW50Q29kZXI8Q3Vyc29yPjo6ZGVjb2RlKEFyZ3VtCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAog
ICAgIGlmICh0eXBlICE9IEN1cnNvcjo6Q3VzdG9tKSB7Ci0gICAgICAgIGN1cnNvciA9IEN1cnNv
cjo6ZnJvbVR5cGUodHlwZSk7CisgICAgICAgIGNvbnN0IEN1cnNvciYgY3Vyc29yUmVmZXJlbmNl
ID0gQ3Vyc29yOjpmcm9tVHlwZSh0eXBlKTsKKyAgICAgICAgLy8gQ2FsbGluZyBwbGF0Zm9ybUN1
cnNvciBoZXJlIHdpbGwgZWFnZXJseSBjcmVhdGUgdGhlIHBsYXRmb3JtIGN1cnNvciBmb3IgdGhl
IGN1cnNvciBzaW5nbGV0b25zIGluc2lkZSBXZWJDb3JlLgorICAgICAgICAvLyBUaGlzIHdpbGwg
YXZvaWQgaGF2aW5nIHRvIHJlLWNyZWF0ZSB0aGUgcGxhdGZvcm0gY3Vyc29ycyBvdmVyIGFuZCBv
dmVyLgorICAgICAgICAodm9pZCljdXJzb3JSZWZlcmVuY2UucGxhdGZvcm1DdXJzb3IoKTsKKwor
ICAgICAgICBjdXJzb3IgPSBjdXJzb3JSZWZlcmVuY2U7CiAgICAgICAgIHJldHVybiB0cnVlOwog
ICAgIH0KIAo=
</data>
<flag name="review"
          id="94887"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>