<?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>89012</bug_id>
          
          <creation_ts>2012-06-13 09:46:12 -0700</creation_ts>
          <short_desc>[Qt] Create an extra atlas when there is no available buffer space.</short_desc>
          <delta_ts>2012-06-19 04:44:00 -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 Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexis Menard (darktears)">menard</reporter>
          <assigned_to name="Alexis Menard (darktears)">menard</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>jturcotte</cc>
    
    <cc>noam</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>648151</commentid>
    <comment_count>0</comment_count>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-06-13 09:46:12 -0700</bug_when>
    <thetext>[Qt] Create an extra atlas when there no available buffer space.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>648155</commentid>
    <comment_count>1</comment_count>
      <attachid>147342</attachid>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-06-13 09:48:08 -0700</bug_when>
    <thetext>Created attachment 147342
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>648167</commentid>
    <comment_count>2</comment_count>
      <attachid>147342</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-06-13 09:56:04 -0700</bug_when>
    <thetext>Comment on attachment 147342
Patch

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

&gt; Source/WebKit2/ChangeLog:3
&gt; +        [Qt] Create an extra atlas when there no available buffer space.

...when there is no...

&gt; Source/WebKit2/ChangeLog:10
&gt; +        are updated. It can happen that there no available buffer space for
&gt; +        the current atlas used. In that case we can create a new one. One

&quot;for the current atlas.&quot;? &quot;for the currently used atlas.&quot;?

Looks fine to me otherwise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>648168</commentid>
    <comment_count>3</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-06-13 09:56:34 -0700</bug_when>
    <thetext>I&apos;ll let No&apos;am have a look if he&apos;s around.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>648216</commentid>
    <comment_count>4</comment_count>
      <attachid>147354</attachid>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-06-13 10:26:46 -0700</bug_when>
    <thetext>Created attachment 147354
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>648237</commentid>
    <comment_count>5</comment_count>
      <attachid>147354</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-06-13 10:40:51 -0700</bug_when>
    <thetext>Comment on attachment 147354
Patch

We should only enable this for desktop, with some settings flag, or a build flag. Otherwise we&apos;re making our scratch-buffer memory usage unpredictable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>651345</commentid>
    <comment_count>6</comment_count>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-06-18 06:25:41 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 147354 [details])
&gt; We should only enable this for desktop, with some settings flag, or a build flag. Otherwise we&apos;re making our scratch-buffer memory usage unpredictable.

It fixes an horrible bug that could totally happen where the drawing surface is big, and not necessarily on a desktop platform. It&apos;s not like we see checkerboard or something like that, we simply don&apos;t repaint some tiles for a while, making the scrolling just plainly horrible and buggy.

What about a compile flag where you specify the scratch buffer memory value like how many time we will create an atlas of 2000.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>651346</commentid>
    <comment_count>7</comment_count>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-06-18 06:26:24 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #5)
&gt; &gt; (From update of attachment 147354 [details] [details])
&gt; &gt; We should only enable this for desktop, with some settings flag, or a build flag. Otherwise we&apos;re making our scratch-buffer memory usage unpredictable.
&gt; 
&gt; It fixes an horrible bug that could totally happen where the drawing surface is big, and not necessarily on a desktop platform. It&apos;s not like we see checkerboard or something like that, we simply don&apos;t repaint some tiles for a while, making the scrolling just plainly horrible and buggy.
&gt; 
&gt; What about a compile flag where you specify the scratch buffer memory value like how many time we will create an atlas of 2000.

Also having the default case to be buggy is not really an option.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>651350</commentid>
    <comment_count>8</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-06-18 06:42:15 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Also having the default case to be buggy is not really an option.

I agree, I think that it&apos;s much better if the default behavior on any platform is perfectly rendered.
If a platform wants to make sure that those 2MB of extra RAM are not allocated, the compile flag should be the exception and not the other way around.

Right now this causes tearing on the non-desktop view as well, during full-page renders like page loads, large document modifications, etc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>652234</commentid>
    <comment_count>9</comment_count>
      <attachid>147354</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-06-19 01:58:24 -0700</bug_when>
    <thetext>Comment on attachment 147354
Patch

OK, I agree with the comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>652327</commentid>
    <comment_count>10</comment_count>
      <attachid>147354</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-19 04:43:55 -0700</bug_when>
    <thetext>Comment on attachment 147354
Patch

Clearing flags on attachment: 147354

Committed r120705: &lt;http://trac.webkit.org/changeset/120705&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>652328</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-19 04:44:00 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>147342</attachid>
            <date>2012-06-13 09:48:08 -0700</date>
            <delta_ts>2012-06-13 10:26:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-89012-20120613134744.patch</filename>
            <type>text/plain</type>
            <size>4356</size>
            <attacher name="Alexis Menard (darktears)">menard</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwMTgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNTNmMDMwNzI4MDQwY2Ey
M2YxZTYxZGU2NWRjNDE5MjIxNDMzMGEwNi4uMGFiMTYxOWZmMzRlODIxODQ1YmE2NmVjOTY3M2E5
MmEyMmU2YWMxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA2LTEzICBBbGV4
aXMgTWVuYXJkICA8YWxleGlzLm1lbmFyZEBvcGVuYm9zc2Eub3JnPgorCisgICAgICAgIFtRdF0g
Q3JlYXRlIGFuIGV4dHJhIGF0bGFzIHdoZW4gdGhlcmUgbm8gYXZhaWxhYmxlIGJ1ZmZlciBzcGFj
ZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg5MDEy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gY2Fz
ZSBvZiB0aGUgZGVza3RvcCBtb2RlIHdoZW4gd2Ugc2Nyb2xsIHRoZSB2aWV3IGFsbCB0aGUgdGls
ZXMKKyAgICAgICAgYXJlIHVwZGF0ZWQuIEl0IGNhbiBoYXBwZW4gdGhhdCB0aGVyZSBubyBhdmFp
bGFibGUgYnVmZmVyIHNwYWNlIGZvcgorICAgICAgICB0aGUgY3VycmVudCBhdGxhcyB1c2VkLiBJ
biB0aGF0IGNhc2Ugd2UgY2FuIGNyZWF0ZSBhIG5ldyBvbmUuIE9uZQorICAgICAgICBmdXR1cmUg
aW1wcm92ZW1lbnQgY291bGQgYmUgdG8gbWFrZSBhIHRpbWVyIGFuZCBkZWxldGUgdGhpcyBleHRy
YSBhdGxhcworICAgICAgICB3aGVuIGl0IGlzIG5vdCB1c2VkLgorCisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL3F0L0xheWVyVHJlZUhvc3RRdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OmJl
Z2luQ29udGVudFVwZGF0ZUluQXRsYXMpOgorICAgICAgICAoV2ViS2l0OjpMYXllclRyZWVIb3N0
UXQ6OmJlZ2luQ29udGVudFVwZGF0ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL3F0
L0xheWVyVHJlZUhvc3RRdC5oOgorICAgICAgICAoTGF5ZXJUcmVlSG9zdFF0KToKKwogMjAxMi0w
Ni0xMiAgTU9SSVRBIEhhamltZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KIAogICAgICAgICBTaGFk
b3cgUHNldWRvIElEIHNob3VsZCBiZSBhYmxlIHRvIG5lc3QgdG8gcG9pbnQgbmVzdGVkIHNoYWRv
dyBET00uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvcXQv
TGF5ZXJUcmVlSG9zdFF0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9x
dC9MYXllclRyZWVIb3N0UXQuY3BwCmluZGV4IGMyOTY0ODE1ZGFmNGE4NDdjYjhjMmU5YTBjMGRl
YmRmY2IxMjM2MTQuLjAxMTRjZjQxNjIzNGM5YTYzZTc4MWRjOTdiODU4YTc5MzViNTliYjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9xdC9MYXllclRyZWVI
b3N0UXQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9xdC9MYXll
clRyZWVIb3N0UXQuY3BwCkBAIC01NTIsMjkgKzU1MiwyOSBAQCB2b2lkIExheWVyVHJlZUhvc3RR
dDo6cHVyZ2VCYWNraW5nU3RvcmVzKCkKICAgICBtX3VwZGF0ZUF0bGFzZXMuY2xlYXIoKTsKIH0K
IAotVXBkYXRlQXRsYXMmIExheWVyVHJlZUhvc3RRdDo6Z2V0QXRsYXMoU2hhcmVhYmxlQml0bWFw
OjpGbGFncyBmbGFncykKK3N0YXRpYyBQYXNzT3duUHRyPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4
dD4gYmVnaW5Db250ZW50VXBkYXRlSW5BdGxhcyhVcGRhdGVBdGxhcyYgYXRsYXMsIGNvbnN0IFdl
YkNvcmU6OkludFNpemUmIHNpemUsIFNoYXJlYWJsZVN1cmZhY2U6OkhhbmRsZSYgaGFuZGxlLCBX
ZWJDb3JlOjpJbnRQb2ludCYgb2Zmc2V0KQogewotICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbV91
cGRhdGVBdGxhc2VzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGlmIChtX3VwZGF0ZUF0bGFzZXNb
aV0uZmxhZ3MoKSA9PSBmbGFncykKLSAgICAgICAgICAgIHJldHVybiBtX3VwZGF0ZUF0bGFzZXNb
aV07Ci0gICAgfQotICAgIHN0YXRpYyBjb25zdCBpbnQgU2NyYXRjaEJ1ZmZlckRpbWVuc2lvbiA9
IDIwMDA7Ci0gICAgbV91cGRhdGVBdGxhc2VzLmFwcGVuZChVcGRhdGVBdGxhcyhTY3JhdGNoQnVm
ZmVyRGltZW5zaW9uLCBmbGFncykpOwotICAgIHJldHVybiBtX3VwZGF0ZUF0bGFzZXMubGFzdCgp
OworICAgIGlmICghYXRsYXMuc3VyZmFjZSgpLT5jcmVhdGVIYW5kbGUoaGFuZGxlKSkKKyAgICAg
ICAgcmV0dXJuIFBhc3NPd25QdHI8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0PigpOworICAgIHJl
dHVybiBhdGxhcy5iZWdpblBhaW50aW5nT25BdmFpbGFibGVCdWZmZXIoc2l6ZSwgb2Zmc2V0KTsK
IH0KIAogUGFzc093blB0cjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ+IExheWVyVHJlZUhvc3RR
dDo6YmVnaW5Db250ZW50VXBkYXRlKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNpemUsIFNoYXJl
YWJsZUJpdG1hcDo6RmxhZ3MgZmxhZ3MsIFNoYXJlYWJsZVN1cmZhY2U6OkhhbmRsZSYgaGFuZGxl
LCBXZWJDb3JlOjpJbnRQb2ludCYgb2Zmc2V0KQogewotICAgIFVwZGF0ZUF0bGFzJiBhdGxhcyA9
IGdldEF0bGFzKGZsYWdzKTsKLSAgICBpZiAoIWF0bGFzLnN1cmZhY2UoKS0+Y3JlYXRlSGFuZGxl
KGhhbmRsZSkpCi0gICAgICAgIHJldHVybiBQYXNzT3duUHRyPFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dD4oKTsKLQotICAgIC8vIFRoaXMgd2lsbCByZXR1cm4gbnVsbCBpZiB0aGVyZSBpcyBubyBh
dmFpbGFibGUgYnVmZmVyLgotICAgIE93blB0cjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ+IGdy
YXBoaWNzQ29udGV4dCA9IGF0bGFzLmJlZ2luUGFpbnRpbmdPbkF2YWlsYWJsZUJ1ZmZlcihzaXpl
LCBvZmZzZXQpOwotICAgIGlmICghZ3JhcGhpY3NDb250ZXh0KQotICAgICAgICByZXR1cm4gUGFz
c093blB0cjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ+KCk7CisgICAgT3duUHRyPFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dD4gZ3JhcGhpY3NDb250ZXh0OworICAgIGZvciAoaW50IGkgPSAwOyBp
IDwgbV91cGRhdGVBdGxhc2VzLnNpemUoKTsgKytpKSB7CisgICAgICAgIFVwZGF0ZUF0bGFzJiBh
dGxhcyA9IG1fdXBkYXRlQXRsYXNlc1tpXTsKKyAgICAgICAgaWYgKGF0bGFzLmZsYWdzKCkgPT0g
ZmxhZ3MpIHsKKyAgICAgICAgICAgIC8vIFRoaXMgd2lsbCByZXR1cm4gbnVsbCBpZiB0aGVyZSBp
cyBubyBhdmFpbGFibGUgYnVmZmVyIHNwYWNlLgorICAgICAgICAgICAgZ3JhcGhpY3NDb250ZXh0
ID0gYmVnaW5Db250ZW50VXBkYXRlSW5BdGxhcyhhdGxhcywgc2l6ZSwgaGFuZGxlLCBvZmZzZXQp
OworICAgICAgICAgICAgaWYgKGdyYXBoaWNzQ29udGV4dCkKKyAgICAgICAgICAgICAgICByZXR1
cm4gZ3JhcGhpY3NDb250ZXh0LnJlbGVhc2UoKTsKKyAgICAgICAgfQorICAgIH0KIAotICAgIHJl
dHVybiBncmFwaGljc0NvbnRleHQucmVsZWFzZSgpOworICAgIHN0YXRpYyBjb25zdCBpbnQgU2Ny
YXRjaEJ1ZmZlckRpbWVuc2lvbiA9IDIwMDA7CisgICAgbV91cGRhdGVBdGxhc2VzLmFwcGVuZChV
cGRhdGVBdGxhcyhTY3JhdGNoQnVmZmVyRGltZW5zaW9uLCBmbGFncykpOworICAgIHJldHVybiBi
ZWdpbkNvbnRlbnRVcGRhdGVJbkF0bGFzKG1fdXBkYXRlQXRsYXNlcy5sYXN0KCksIHNpemUsIGhh
bmRsZSwgb2Zmc2V0KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvcXQvTGF5ZXJUcmVlSG9zdFF0LmggYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvcXQvTGF5ZXJUcmVlSG9zdFF0LmgKaW5k
ZXggMzNmZGVjNzM0MzMwOGY3NjY0ZWRhZWFiOWM2NDBhMThhYzM3NzM1ZS4uZTU4NTNhZDAzODli
YWY2YWUxZTAyMmNlN2NlYzRhN2YxYzYxMWMwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL3F0L0xheWVyVHJlZUhvc3RRdC5oCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9xdC9MYXllclRyZWVIb3N0UXQuaApAQCAtMTA1LDggKzEw
NSw2IEBAIHByaXZhdGU6CiAgICAgdm9pZCBwZXJmb3JtU2NoZWR1bGVkTGF5ZXJGbHVzaCgpOwog
ICAgIHZvaWQgc2VuZExheWVyc1RvVUkoKTsKIAotICAgIFVwZGF0ZUF0bGFzJiBnZXRBdGxhcyhT
aGFyZWFibGVCaXRtYXA6OkZsYWdzKTsKLQogICAgIE93blB0cjxXZWJDb3JlOjpHcmFwaGljc0xh
eWVyPiBtX3Jvb3RMYXllcjsKIAogICAgIC8vIFRoZSBsYXllciB3aGljaCBjb250YWlucyBhbGwg
bm9uLWNvbXBvc2l0ZWQgY29udGVudC4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>147354</attachid>
            <date>2012-06-13 10:26:46 -0700</date>
            <delta_ts>2012-06-19 04:43:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-89012-20120613142719.patch</filename>
            <type>text/plain</type>
            <size>4393</size>
            <attacher name="Alexis Menard (darktears)">menard</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwMjE5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNmJmMzZlM2I1ZjJlNWQ3
ZjM2ZmQwNGY1M2Y3OTJiNjJmN2Q1OTkyNi4uNGZjNDhlODIwMzEzYWNkYjgxMTBmNzQ3YmU5OTMz
YTViMjllZmNjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA2LTEzICBBbGV4
aXMgTWVuYXJkICA8YWxleGlzLm1lbmFyZEBvcGVuYm9zc2Eub3JnPgorCisgICAgICAgIFtRdF0g
Q3JlYXRlIGFuIGV4dHJhIGF0bGFzIHdoZW4gdGhlcmUgaXMgbm8gYXZhaWxhYmxlIGJ1ZmZlciBz
cGFjZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg5
MDEyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW4g
Y2FzZSBvZiB0aGUgZGVza3RvcCBtb2RlIHdoZW4gd2Ugc2Nyb2xsIHRoZSB2aWV3IGFsbCB0aGUg
dGlsZXMKKyAgICAgICAgYXJlIHVwZGF0ZWQuIEl0IGNhbiBoYXBwZW4gdGhhdCB0aGVyZSBubyBh
dmFpbGFibGUgYnVmZmVyIHNwYWNlIGZvcgorICAgICAgICB0aGUgY3VycmVudGx5IHVzZWQgYXRs
YXMoZXNwZWNpYWxseSB3aGVuIHNjcm9sbGluZyBmYXN0KS4gSW4gdGhhdCBjYXNlIAorICAgICAg
ICB3ZSBjYW4gY3JlYXRlIGEgbmV3IG9uZS4gT25lIGZ1dHVyZSBpbXByb3ZlbWVudCBjb3VsZCBi
ZSB0byBtYWtlIGEgdGltZXIgYW5kIAorICAgICAgICBkZWxldGUgdGhpcyBleHRyYSBhdGxhcyB3
aGVuIGl0IGlzIG5vdCB1c2VkLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL3F0L0xh
eWVyVHJlZUhvc3RRdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OmJlZ2luQ29udGVudFVwZGF0ZUlu
QXRsYXMpOgorICAgICAgICAoV2ViS2l0OjpMYXllclRyZWVIb3N0UXQ6OmJlZ2luQ29udGVudFVw
ZGF0ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL3F0L0xheWVyVHJlZUhvc3RRdC5o
OgorICAgICAgICAoTGF5ZXJUcmVlSG9zdFF0KToKKwogMjAxMi0wNi0xMyAgQWxsYW4gU2FuZGZl
bGQgSmVuc2VuICA8YWxsYW4uamVuc2VuQG5va2lhLmNvbT4KIAogICAgICAgICBbUXRdIEZpeGVk
IHZpc2libGUgY29udGVudCByZWN0IGxvc3QgZHVyaW5nIHBhZ2UtbG9hZApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL3F0L0xheWVyVHJlZUhvc3RRdC5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvcXQvTGF5ZXJUcmVlSG9zdFF0LmNw
cAppbmRleCBjMjk2NDgxNWRhZjRhODQ3Y2I4YzJlOWEwYzBkZWJkZmNiMTIzNjE0Li4wMTE0Y2Y0
MTYyMzRjOWE2M2U3ODFkYzk3Yjg1OGE3OTM1YjU5YmIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvcXQvTGF5ZXJUcmVlSG9zdFF0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvcXQvTGF5ZXJUcmVlSG9zdFF0LmNwcApAQCAt
NTUyLDI5ICs1NTIsMjkgQEAgdm9pZCBMYXllclRyZWVIb3N0UXQ6OnB1cmdlQmFja2luZ1N0b3Jl
cygpCiAgICAgbV91cGRhdGVBdGxhc2VzLmNsZWFyKCk7CiB9CiAKLVVwZGF0ZUF0bGFzJiBMYXll
clRyZWVIb3N0UXQ6OmdldEF0bGFzKFNoYXJlYWJsZUJpdG1hcDo6RmxhZ3MgZmxhZ3MpCitzdGF0
aWMgUGFzc093blB0cjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ+IGJlZ2luQ29udGVudFVwZGF0
ZUluQXRsYXMoVXBkYXRlQXRsYXMmIGF0bGFzLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzaXpl
LCBTaGFyZWFibGVTdXJmYWNlOjpIYW5kbGUmIGhhbmRsZSwgV2ViQ29yZTo6SW50UG9pbnQmIG9m
ZnNldCkKIHsKLSAgICBmb3IgKGludCBpID0gMDsgaSA8IG1fdXBkYXRlQXRsYXNlcy5zaXplKCk7
ICsraSkgewotICAgICAgICBpZiAobV91cGRhdGVBdGxhc2VzW2ldLmZsYWdzKCkgPT0gZmxhZ3Mp
Ci0gICAgICAgICAgICByZXR1cm4gbV91cGRhdGVBdGxhc2VzW2ldOwotICAgIH0KLSAgICBzdGF0
aWMgY29uc3QgaW50IFNjcmF0Y2hCdWZmZXJEaW1lbnNpb24gPSAyMDAwOwotICAgIG1fdXBkYXRl
QXRsYXNlcy5hcHBlbmQoVXBkYXRlQXRsYXMoU2NyYXRjaEJ1ZmZlckRpbWVuc2lvbiwgZmxhZ3Mp
KTsKLSAgICByZXR1cm4gbV91cGRhdGVBdGxhc2VzLmxhc3QoKTsKKyAgICBpZiAoIWF0bGFzLnN1
cmZhY2UoKS0+Y3JlYXRlSGFuZGxlKGhhbmRsZSkpCisgICAgICAgIHJldHVybiBQYXNzT3duUHRy
PFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dD4oKTsKKyAgICByZXR1cm4gYXRsYXMuYmVnaW5QYWlu
dGluZ09uQXZhaWxhYmxlQnVmZmVyKHNpemUsIG9mZnNldCk7CiB9CiAKIFBhc3NPd25QdHI8V2Vi
Q29yZTo6R3JhcGhpY3NDb250ZXh0PiBMYXllclRyZWVIb3N0UXQ6OmJlZ2luQ29udGVudFVwZGF0
ZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzaXplLCBTaGFyZWFibGVCaXRtYXA6OkZsYWdzIGZs
YWdzLCBTaGFyZWFibGVTdXJmYWNlOjpIYW5kbGUmIGhhbmRsZSwgV2ViQ29yZTo6SW50UG9pbnQm
IG9mZnNldCkKIHsKLSAgICBVcGRhdGVBdGxhcyYgYXRsYXMgPSBnZXRBdGxhcyhmbGFncyk7Ci0g
ICAgaWYgKCFhdGxhcy5zdXJmYWNlKCktPmNyZWF0ZUhhbmRsZShoYW5kbGUpKQotICAgICAgICBy
ZXR1cm4gUGFzc093blB0cjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ+KCk7Ci0KLSAgICAvLyBU
aGlzIHdpbGwgcmV0dXJuIG51bGwgaWYgdGhlcmUgaXMgbm8gYXZhaWxhYmxlIGJ1ZmZlci4KLSAg
ICBPd25QdHI8V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0PiBncmFwaGljc0NvbnRleHQgPSBhdGxh
cy5iZWdpblBhaW50aW5nT25BdmFpbGFibGVCdWZmZXIoc2l6ZSwgb2Zmc2V0KTsKLSAgICBpZiAo
IWdyYXBoaWNzQ29udGV4dCkKLSAgICAgICAgcmV0dXJuIFBhc3NPd25QdHI8V2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0PigpOworICAgIE93blB0cjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ+IGdy
YXBoaWNzQ29udGV4dDsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IG1fdXBkYXRlQXRsYXNlcy5z
aXplKCk7ICsraSkgeworICAgICAgICBVcGRhdGVBdGxhcyYgYXRsYXMgPSBtX3VwZGF0ZUF0bGFz
ZXNbaV07CisgICAgICAgIGlmIChhdGxhcy5mbGFncygpID09IGZsYWdzKSB7CisgICAgICAgICAg
ICAvLyBUaGlzIHdpbGwgcmV0dXJuIG51bGwgaWYgdGhlcmUgaXMgbm8gYXZhaWxhYmxlIGJ1ZmZl
ciBzcGFjZS4KKyAgICAgICAgICAgIGdyYXBoaWNzQ29udGV4dCA9IGJlZ2luQ29udGVudFVwZGF0
ZUluQXRsYXMoYXRsYXMsIHNpemUsIGhhbmRsZSwgb2Zmc2V0KTsKKyAgICAgICAgICAgIGlmIChn
cmFwaGljc0NvbnRleHQpCisgICAgICAgICAgICAgICAgcmV0dXJuIGdyYXBoaWNzQ29udGV4dC5y
ZWxlYXNlKCk7CisgICAgICAgIH0KKyAgICB9CiAKLSAgICByZXR1cm4gZ3JhcGhpY3NDb250ZXh0
LnJlbGVhc2UoKTsKKyAgICBzdGF0aWMgY29uc3QgaW50IFNjcmF0Y2hCdWZmZXJEaW1lbnNpb24g
PSAyMDAwOworICAgIG1fdXBkYXRlQXRsYXNlcy5hcHBlbmQoVXBkYXRlQXRsYXMoU2NyYXRjaEJ1
ZmZlckRpbWVuc2lvbiwgZmxhZ3MpKTsKKyAgICByZXR1cm4gYmVnaW5Db250ZW50VXBkYXRlSW5B
dGxhcyhtX3VwZGF0ZUF0bGFzZXMubGFzdCgpLCBzaXplLCBoYW5kbGUsIG9mZnNldCk7CiB9CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL3F0L0xheWVyVHJlZUhvc3RRdC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL3F0L0xheWVyVHJlZUhvc3RRdC5oCmluZGV4IDMzZmRlYzczNDMzMDhmNzY2
NGVkYWVhYjljNjQwYTE4YWMzNzczNWUuLmU1ODUzYWQwMzg5YmFmNmFlMWUwMjJjZTdjZWM0YTdm
MWM2MTFjMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9x
dC9MYXllclRyZWVIb3N0UXQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvcXQvTGF5ZXJUcmVlSG9zdFF0LmgKQEAgLTEwNSw4ICsxMDUsNiBAQCBwcml2YXRlOgogICAg
IHZvaWQgcGVyZm9ybVNjaGVkdWxlZExheWVyRmx1c2goKTsKICAgICB2b2lkIHNlbmRMYXllcnNU
b1VJKCk7CiAKLSAgICBVcGRhdGVBdGxhcyYgZ2V0QXRsYXMoU2hhcmVhYmxlQml0bWFwOjpGbGFn
cyk7Ci0KICAgICBPd25QdHI8V2ViQ29yZTo6R3JhcGhpY3NMYXllcj4gbV9yb290TGF5ZXI7CiAK
ICAgICAvLyBUaGUgbGF5ZXIgd2hpY2ggY29udGFpbnMgYWxsIG5vbi1jb21wb3NpdGVkIGNvbnRl
bnQuCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>