<?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>133471</bug_id>
          
          <creation_ts>2014-06-03 02:30:58 -0700</creation_ts>
          <short_desc>Prepopulated tiles may never be unparented from TileGrids with aggressive tile retention on</short_desc>
          <delta_ts>2014-06-03 12:01:18 -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>Layout and Rendering</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="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1013069</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-06-03 02:30:58 -0700</bug_when>
    <thetext>We only unparent tiles that are in the VisibleTileCohort when cleaning up no-longer-visible tiles. If tiles were created via prepopulateRect() and never made it into the VisibleTileCohort, they won&apos;t be unparented (and will thus stick around, nonvolatile, forever, until the scale changes or the primary coverage rect moves to intersect them). This is in some cases a huge waste of memory and time.

We can&apos;t just immediately unparent all non-primary-coverage layers, because that would defeat prepopulateRect(). We may be able to make use of the cohort age and unparent them on a subsequent revalidateTiles (and schedule a revalidation timer when we prepopulate, etc.).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013071</commentid>
    <comment_count>1</comment_count>
      <attachid>232419</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-06-03 03:29:02 -0700</bug_when>
    <thetext>Created attachment 232419
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013072</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-06-03 03:30:50 -0700</bug_when>
    <thetext>Attachment 232419 did not pass style-queue:


ERROR: Source/WebCore/platform/graphics/ca/mac/TileGrid.h:125:  The parameter name &quot;cohortInfo&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 1 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013096</commentid>
    <comment_count>3</comment_count>
      <attachid>232419</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-06-03 09:03:44 -0700</bug_when>
    <thetext>Comment on attachment 232419
patch

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

&gt; Source/WebCore/platform/graphics/ca/mac/TileController.h:128
&gt; +
&gt; +

Blank lines.

&gt; Source/WebCore/platform/graphics/ca/mac/TileGrid.h:125
&gt; +    double timeUntilCohortExpires(TileCohortInfo cohortInfo); // move onto cohortinfo?

const TileCohortInfo&amp;. Could be static or moved onto TileCohortInfo.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013124</commentid>
    <comment_count>4</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-06-03 12:01:18 -0700</bug_when>
    <thetext>&gt; &gt; Source/WebCore/platform/graphics/ca/mac/TileGrid.h:125
&gt; &gt; +    double timeUntilCohortExpires(TileCohortInfo cohortInfo); // move onto cohortinfo?
&gt; 
&gt; const TileCohortInfo&amp;. Could be static or moved onto TileCohortInfo.

I totally meant to actually do what that comment said, and forgot. Fixed in the patch that landed. Thanks!

http://trac.webkit.org/changeset/169565</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>232419</attachid>
            <date>2014-06-03 03:29:02 -0700</date>
            <delta_ts>2014-06-03 09:03:44 -0700</delta_ts>
            <desc>patch</desc>
            <filename>unparent.diff</filename>
            <type>text/plain</type>
            <size>7733</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3NzRlNzY0Li5lNjE4Y2Q4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQg
QEAKKzIwMTQtMDYtMDMgIFRpbW90aHkgSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29t
PgorCisgICAgICAgIFByZXBvcHVsYXRlZCB0aWxlcyBtYXkgbmV2ZXIgYmUgdW5wYXJlbnRlZCBm
cm9tIFRpbGVHcmlkcyB3aXRoIGFnZ3Jlc3NpdmUgdGlsZSByZXRlbnRpb24gb24KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMzQ3MQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvY2EvbWFjL1RpbGVDb250cm9sbGVyLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2EvbWFjL1RpbGVHcmlkLmg6CisgICAgICAgIChXZWJDb3JlOjpUaWxlR3JpZDo6VGlsZUNvaG9y
dEluZm86OlRpbGVDb2hvcnRJbmZvKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9t
YWMvVGlsZUdyaWQubW06CisgICAgICAgIChXZWJDb3JlOjpUaWxlR3JpZDo6dGltZVVudGlsQ29o
b3J0RXhwaXJlcyk6CisgICAgICAgIChXZWJDb3JlOjpUaWxlR3JpZDo6Y29ob3J0UmVtb3ZhbFRp
bWVyRmlyZWQpOgorICAgICAgICBGYWN0b3IgdGltZVVudGlsQ29ob3J0RXhwaXJlcygpIG91dCBv
ZiBjb2hvcnRSZW1vdmFsVGltZXJGaXJlZCgpLgorCisgICAgICAgIChXZWJDb3JlOjpUaWxlR3Jp
ZDo6cmV2YWxpZGF0ZVRpbGVzKToKKyAgICAgICAgRW5zdXJlIHRoYXQgc2Vjb25kYXJ5IHRpbGVz
IHRoYXQgbmV2ZXIgdG91Y2ggdGhlIHByaW1hcnkgY292ZXJhZ2UgcmVjdAorICAgICAgICBhcmUg
c3RpbGwgdW5wYXJlbnRlZCBldmVudHVhbGx5IChhZnRlciAyIHNlY29uZHMsIHRoZSBzYW1lIGxp
ZmV0aW1lIHdlIHVzZQorICAgICAgICBmb3IgY29ob3J0cyBpbiBub24tYWdncmVzc2l2ZSByZXRl
bnRpb24pLgorICAgICAgICBTY2hlZHVsZSBhbm90aGVyIHJldmFsaWRhdGVUaWxlcyBpZiB3ZSBs
ZWZ0IHBhcmVudGVkIHNlY29uZGFyeSB0aWxlcyBiZWhpbmQuCisKIDIwMTQtMDYtMDIgIEplciBO
b2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW01TRV1bTWFjXSBNZWRpYSBk
b2VzIG5vdCBnZW5lcmF0ZSAnZW5kZWQnIGV2ZW50IHdoZW4gcGxheWluZyB0byBkdXJhdGlvbi4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9UaWxl
Q29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1Rp
bGVDb250cm9sbGVyLmgKaW5kZXggNWM3OGIyZi4uN2Q5NjRkZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1RpbGVDb250cm9sbGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1RpbGVDb250cm9sbGVyLmgK
QEAgLTUwLDYgKzUwLDggQEAgdHlwZWRlZiBWZWN0b3I8UmV0YWluUHRyPFBsYXRmb3JtTGF5ZXI+
PiBQbGF0Zm9ybUxheWVyTGlzdDsKIAogY2xhc3MgVGlsZUNvbnRyb2xsZXIgZmluYWwgOiBwdWJs
aWMgVGlsZWRCYWNraW5nIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShUaWxlQ29udHJvbGxl
cik7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworICAgIGZyaWVuZCBjbGFzcyBUaWxlQ292ZXJh
Z2VNYXA7CisgICAgZnJpZW5kIGNsYXNzIFRpbGVHcmlkOwogcHVibGljOgogICAgIHN0YXRpYyBQ
YXNzT3duUHRyPFRpbGVDb250cm9sbGVyPiBjcmVhdGUoUGxhdGZvcm1DQUxheWVyKik7CiAgICAg
flRpbGVDb250cm9sbGVyKCk7CkBAIC04NCwxMCArODYsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBy
ZW1vdmVVbnBhcmVudGVkVGlsZXNOb3coKTsKICNlbmRpZgogCi1wdWJsaWM6Ci0gICAgLy8gUHVi
bGljIGZvciBUaWxlR3JpZCBhbmQgVGlsZUNvdmVyYWdlTWFwCi0gICAgYm9vbCBpc0luV2luZG93
KCkgY29uc3QgeyByZXR1cm4gbV9pc0luV2luZG93OyB9Ci0KICAgICBmbG9hdCBkZXZpY2VTY2Fs
ZUZhY3RvcigpIGNvbnN0IHsgcmV0dXJuIG1fZGV2aWNlU2NhbGVGYWN0b3I7IH0KIAogICAgIENv
bG9yIHRpbGVEZWJ1Z0JvcmRlckNvbG9yKCkgY29uc3QgeyByZXR1cm4gbV90aWxlRGVidWdCb3Jk
ZXJDb2xvcjsgfQpAQCAtMTI2LDYgKzEyNCwxMiBAQCBwdWJsaWM6CiAKICAgICBWZWN0b3I8UmVm
UHRyPFBsYXRmb3JtQ0FMYXllcj4+IGNvbnRhaW5lckxheWVycygpOwogCisKKworcHJvdGVjdGVk
OgorICAgIHZvaWQgc2NoZWR1bGVUaWxlUmV2YWxpZGF0aW9uKGRvdWJsZSBpbnRlcnZhbCk7CisK
KyAgICBib29sIGlzSW5XaW5kb3coKSBjb25zdCB7IHJldHVybiBtX2lzSW5XaW5kb3c7IH0KICAg
ICBmbG9hdCB0b3BDb250ZW50SW5zZXQoKSBjb25zdCB7IHJldHVybiBtX3RvcENvbnRlbnRJbnNl
dDsgfQogCiBwcml2YXRlOgpAQCAtMTU0LDcgKzE1OCw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVh
bCB2b2lkIHNldFpvb21lZE91dENvbnRlbnRzU2NhbGUoZmxvYXQpIG92ZXJyaWRlOwogICAgIHZp
cnR1YWwgZmxvYXQgem9vbWVkT3V0Q29udGVudHNTY2FsZSgpIGNvbnN0IG92ZXJyaWRlOwogCi0g
ICAgdm9pZCBzY2hlZHVsZVRpbGVSZXZhbGlkYXRpb24oZG91YmxlIGludGVydmFsKTsKKwogICAg
IHZvaWQgdGlsZVJldmFsaWRhdGlvblRpbWVyRmlyZWQoVGltZXI8VGlsZUNvbnRyb2xsZXI+Kik7
CiAKICAgICB2b2lkIHNldE5lZWRzUmV2YWxpZGF0ZVRpbGVzKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvVGlsZUdyaWQuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9UaWxlR3JpZC5oCmluZGV4IGYwNmIzNzQu
LmNlZDEwMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nh
L21hYy9UaWxlR3JpZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nh
L21hYy9UaWxlR3JpZC5oCkBAIC0xMDQsNiArMTA0LDE1IEBAIHByaXZhdGU6CiAgICAgZW51bSBj
bGFzcyBDb3ZlcmFnZVR5cGUgeyBQcmltYXJ5VGlsZXMsIFNlY29uZGFyeVRpbGVzIH07CiAgICAg
SW50UmVjdCBlbnN1cmVUaWxlc0ZvclJlY3QoY29uc3QgRmxvYXRSZWN0JiwgQ292ZXJhZ2VUeXBl
KTsKIAorICAgIHN0cnVjdCBUaWxlQ29ob3J0SW5mbyB7CisgICAgICAgIFRpbGVDb2hvcnQgY29o
b3J0OworICAgICAgICBkb3VibGUgY3JlYXRpb25UaW1lOyAvLyBpbiBtb25vdG9uaWNhbGx5SW5j
cmVhc2luZ1RpbWUoKS4KKyAgICAgICAgVGlsZUNvaG9ydEluZm8oVGlsZUNvaG9ydCBpbkNvaG9y
dCwgZG91YmxlIGluVGltZSkKKyAgICAgICAgICAgIDogY29ob3J0KGluQ29ob3J0KQorICAgICAg
ICAgICAgLCBjcmVhdGlvblRpbWUoaW5UaW1lKQorICAgICAgICB7IH0KKyAgICB9OworCiAgICAg
dm9pZCByZW1vdmVBbGxTZWNvbmRhcnlUaWxlcygpOwogICAgIHZvaWQgcmVtb3ZlVGlsZXNJbkNv
aG9ydChUaWxlQ29ob3J0KTsKIApAQCAtMTEzLDYgKzEyMiw3IEBAIHByaXZhdGU6CiAgICAgdm9p
ZCBzdGFydGVkTmV3Q29ob3J0KFRpbGVDb2hvcnQpOwogICAgIFRpbGVDb2hvcnQgbmV3ZXN0VGls
ZUNvaG9ydCgpIGNvbnN0OwogICAgIFRpbGVDb2hvcnQgb2xkZXN0VGlsZUNvaG9ydCgpIGNvbnN0
OworICAgIGRvdWJsZSB0aW1lVW50aWxDb2hvcnRFeHBpcmVzKFRpbGVDb2hvcnRJbmZvIGNvaG9y
dEluZm8pOyAvLyBtb3ZlIG9udG8gY29ob3J0aW5mbz8KIAogICAgIHZvaWQgcmVtb3ZlVGlsZXMo
VmVjdG9yPFRpbGVHcmlkOjpUaWxlSW5kZXg+JiB0b1JlbW92ZSk7CiAKQEAgLTEzNiwxNCArMTQ2
LDYgQEAgcHJpdmF0ZToKIAogICAgIGZsb2F0IG1fc2NhbGU7CiAKLSAgICBzdHJ1Y3QgVGlsZUNv
aG9ydEluZm8gewotICAgICAgICBUaWxlQ29ob3J0IGNvaG9ydDsKLSAgICAgICAgZG91YmxlIGNy
ZWF0aW9uVGltZTsgLy8gaW4gbW9ub3RvbmljYWxseUluY3JlYXNpbmdUaW1lKCkuCi0gICAgICAg
IFRpbGVDb2hvcnRJbmZvKFRpbGVDb2hvcnQgaW5Db2hvcnQsIGRvdWJsZSBpblRpbWUpCi0gICAg
ICAgICAgICA6IGNvaG9ydChpbkNvaG9ydCkKLSAgICAgICAgICAgICwgY3JlYXRpb25UaW1lKGlu
VGltZSkKLSAgICAgICAgeyB9Ci0gICAgfTsKICAgICB0eXBlZGVmIERlcXVlPFRpbGVDb2hvcnRJ
bmZvPiBUaWxlQ29ob3J0TGlzdDsKICAgICBUaWxlQ29ob3J0TGlzdCBtX2NvaG9ydExpc3Q7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9UaWxl
R3JpZC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9UaWxlR3Jp
ZC5tbQppbmRleCA0YTQxM2FmLi4zZGI3YzQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvVGlsZUdyaWQubW0KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1RpbGVHcmlkLm1tCkBAIC0zMTcsNiArMzE3LDkgQEAg
dm9pZCBUaWxlR3JpZDo6cmV2YWxpZGF0ZVRpbGVzKHVuc2lnbmVkIHZhbGlkYXRpb25Qb2xpY3kp
CiAgICAgVGlsZUNvaG9ydCBjdXJyQ29ob3J0ID0gbmV4dFRpbGVDb2hvcnQoKTsKICAgICB1bnNp
Z25lZCB0aWxlc0luQ29ob3J0ID0gMDsKIAorICAgIGRvdWJsZSBtaW5pbXVtUmV2YWxpZGF0aW9u
VGltZXJEdXJhdGlvbiA9IHN0ZDo6bnVtZXJpY19saW1pdHM8ZG91YmxlPjo6bWF4KCk7CisgICAg
Ym9vbCBuZWVkc1RpbGVSZXZhbGlkYXRpb24gPSBmYWxzZTsKKwogICAgIC8vIE1vdmUgdGlsZXMg
bmV3bHkgb3V0c2lkZSB0aGUgY292ZXJhZ2UgcmVjdCBpbnRvIHRoZSBjb2hvcnQgbWFwLgogICAg
IGZvciAoVGlsZU1hcDo6aXRlcmF0b3IgaXQgPSBtX3RpbGVzLmJlZ2luKCksIGVuZCA9IG1fdGls
ZXMuZW5kKCk7IGl0ICE9IGVuZDsgKytpdCkgewogICAgICAgICBUaWxlSW5mbyYgdGlsZUluZm8g
PSBpdC0+dmFsdWU7CkBAIC0zMzksMTAgKzM0MiwyOCBAQCB2b2lkIFRpbGVHcmlkOjpyZXZhbGlk
YXRlVGlsZXModW5zaWduZWQgdmFsaWRhdGlvblBvbGljeSkKIAogICAgICAgICAgICAgICAgIGlm
IChtX2NvbnRyb2xsZXIudW5wYXJlbnRzT2Zmc2NyZWVuVGlsZXMoKSkKICAgICAgICAgICAgICAg
ICAgICAgdGlsZUxheWVyLT5yZW1vdmVGcm9tU3VwZXJsYXllcigpOworICAgICAgICAgICAgfSBl
bHNlIGlmIChtX2NvbnRyb2xsZXIudW5wYXJlbnRzT2Zmc2NyZWVuVGlsZXMoKSAmJiBtX2NvbnRy
b2xsZXIuc2hvdWxkQWdncmVzc2l2ZWx5UmV0YWluVGlsZXMoKSAmJiB0aWxlTGF5ZXItPnN1cGVy
bGF5ZXIoKSkgeworICAgICAgICAgICAgICAgIC8vIEFnZ3Jlc3NpdmUgdGlsZSByZXRlbnRpb24g
bWVhbnMgd2UnbGwgbmV2ZXIgcmVtb3ZlIGNvaG9ydHMsIGJ1dCB3ZSBuZWVkIHRvIG1ha2Ugc3Vy
ZSB0aGV5J3JlIHVucGFyZW50ZWQuCisgICAgICAgICAgICAgICAgLy8gV2UgY2FuJ3QgaW1tZWRp
YXRlbHkgdW5wYXJlbnQgY29ob3J0cyBjb21wcmlzZWQgb2Ygc2Vjb25kYXJ5IHRpbGVzIHRoYXQg
bmV2ZXIgdG91Y2ggdGhlIHByaW1hcnkgY292ZXJhZ2UgcmVjdCwKKyAgICAgICAgICAgICAgICAv
LyBiZWNhdXNlIHRoYXQgd291bGQgZGVmZWF0IHRoZSB1c2VmdWxuZXNzIG9mIHByZXBvcHVsYXRl
UmVjdCgpOyBpbnN0ZWFkLCBhZ2UgcHJlcG9wdWxhdGVkIHRpbGVzIG91dCBhcyBpZiB0aGV5IHdl
cmUgYmVpbmcgcmVtb3ZlZC4KKyAgICAgICAgICAgICAgICBmb3IgKGF1dG8mIGNvaG9ydCA6IG1f
Y29ob3J0TGlzdCkgeworICAgICAgICAgICAgICAgICAgICBpZiAoY29ob3J0LmNvaG9ydCAhPSB0
aWxlSW5mby5jb2hvcnQpCisgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAg
ICAgICAgICAgICAgICAgZG91YmxlIHRpbWVVbnRpbENvaG9ydEV4cGlyZXMgPSB0aGlzLT50aW1l
VW50aWxDb2hvcnRFeHBpcmVzKGNvaG9ydCk7CisgICAgICAgICAgICAgICAgICAgIGlmICh0aW1l
VW50aWxDb2hvcnRFeHBpcmVzID4gMCkgeworICAgICAgICAgICAgICAgICAgICAgICAgbWluaW11
bVJldmFsaWRhdGlvblRpbWVyRHVyYXRpb24gPSBzdGQ6Om1pbihtaW5pbXVtUmV2YWxpZGF0aW9u
VGltZXJEdXJhdGlvbiwgdGltZVVudGlsQ29ob3J0RXhwaXJlcyk7CisgICAgICAgICAgICAgICAg
ICAgICAgICBuZWVkc1RpbGVSZXZhbGlkYXRpb24gPSB0cnVlOworICAgICAgICAgICAgICAgICAg
ICB9IGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgIHRpbGVMYXllci0+cmVtb3ZlRnJvbVN1
cGVybGF5ZXIoKTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQogCisgICAgaWYgKG5lZWRzVGlsZVJl
dmFsaWRhdGlvbikKKyAgICAgICAgbV9jb250cm9sbGVyLnNjaGVkdWxlVGlsZVJldmFsaWRhdGlv
bihtaW5pbXVtUmV2YWxpZGF0aW9uVGltZXJEdXJhdGlvbik7CisKICAgICBpZiAodGlsZXNJbkNv
aG9ydCkKICAgICAgICAgc3RhcnRlZE5ld0NvaG9ydChjdXJyQ29ob3J0KTsKIApAQCAtNDQ4LDYg
KzQ2OSwxMyBAQCB2b2lkIFRpbGVHcmlkOjpzY2hlZHVsZUNvaG9ydFJlbW92YWwoKQogICAgICAg
ICBtX2NvaG9ydFJlbW92YWxUaW1lci5zdGFydFJlcGVhdGluZyhjb2hvcnRSZW1vdmFsVGltZXJT
ZWNvbmRzKTsKIH0KIAorZG91YmxlIFRpbGVHcmlkOjp0aW1lVW50aWxDb2hvcnRFeHBpcmVzKFRp
bGVDb2hvcnRJbmZvIGNvaG9ydEluZm8pCit7CisgICAgZG91YmxlIGNvaG9ydExpZmVUaW1lU2Vj
b25kcyA9IDI7CisgICAgZG91YmxlIHRpbWVUaHJlc2hvbGQgPSBtb25vdG9uaWNhbGx5SW5jcmVh
c2luZ1RpbWUoKSAtIGNvaG9ydExpZmVUaW1lU2Vjb25kczsKKyAgICByZXR1cm4gY29ob3J0SW5m
by5jcmVhdGlvblRpbWUgLSB0aW1lVGhyZXNob2xkOworfQorCiB2b2lkIFRpbGVHcmlkOjpjb2hv
cnRSZW1vdmFsVGltZXJGaXJlZChUaW1lcjxUaWxlR3JpZD4qKQogewogICAgIGlmIChtX2NvaG9y
dExpc3QuaXNFbXB0eSgpKSB7CkBAIC00NTUsMTAgKzQ4Myw3IEBAIHZvaWQgVGlsZUdyaWQ6OmNv
aG9ydFJlbW92YWxUaW1lckZpcmVkKFRpbWVyPFRpbGVHcmlkPiopCiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKLSAgICBkb3VibGUgY29ob3J0TGlmZVRpbWVTZWNvbmRzID0gMjsKLSAgICBkb3Vi
bGUgdGltZVRocmVzaG9sZCA9IG1vbm90b25pY2FsbHlJbmNyZWFzaW5nVGltZSgpIC0gY29ob3J0
TGlmZVRpbWVTZWNvbmRzOwotCi0gICAgd2hpbGUgKCFtX2NvaG9ydExpc3QuaXNFbXB0eSgpICYm
IG1fY29ob3J0TGlzdC5maXJzdCgpLmNyZWF0aW9uVGltZSA8IHRpbWVUaHJlc2hvbGQpIHsKKyAg
ICB3aGlsZSAoIW1fY29ob3J0TGlzdC5pc0VtcHR5KCkgJiYgdGltZVVudGlsQ29ob3J0RXhwaXJl
cyhtX2NvaG9ydExpc3QuZmlyc3QoKSkgPCAwKSB7CiAgICAgICAgIFRpbGVDb2hvcnRJbmZvIGZp
cnN0Q29ob3J0ID0gbV9jb2hvcnRMaXN0LnRha2VGaXJzdCgpOwogICAgICAgICByZW1vdmVUaWxl
c0luQ29ob3J0KGZpcnN0Q29ob3J0LmNvaG9ydCk7CiAgICAgfQo=
</data>
<flag name="review"
          id="256915"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>