<?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>119636</bug_id>
          
          <creation_ts>2013-08-09 12:56:05 -0700</creation_ts>
          <short_desc>dataLog dumpers for WebCore&apos;s basic geometry types</short_desc>
          <delta_ts>2013-08-12 12:55:43 -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>ap</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>eflews.bot</cc>
    
    <cc>fpizlo</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tonikitoo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>915916</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-08-09 12:56:05 -0700</bug_when>
    <thetext>This way you can dataLog(anIntRect, someFloatPoint, &quot;\n&quot;) and all will be well. Will save (Simon and I at least) lots of typing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>915933</commentid>
    <comment_count>1</comment_count>
      <attachid>208452</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-08-09 14:10:15 -0700</bug_when>
    <thetext>Created attachment 208452
take one

I&apos;m somewhat tempted to put them all in one big implementation file (GeometryFormatters? I have no idea) instead of spreading datalog stuff throughout all these classes (especially because of IntPoint and IntSize lacking implementation files causing PrintStream.h inclusion in their headers -- but maybe PrintStream.h doesn&apos;t change often and that won&apos;t be a problem?).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>915938</commentid>
    <comment_count>2</comment_count>
      <attachid>208452</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-08-09 14:27:06 -0700</bug_when>
    <thetext>Comment on attachment 208452
take one

What’s the rationale for using member functions for these? Easier to invoke from the debugger?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>915939</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-08-09 14:28:02 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; especially because of IntPoint and IntSize lacking implementation files causing PrintStream.h inclusion in their headers

Make IntPoint.cpp and IntSize.cpp instead; what’s the argument against that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>915943</commentid>
    <comment_count>4</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-08-09 14:32:05 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #1)
&gt; &gt; especially because of IntPoint and IntSize lacking implementation files causing PrintStream.h inclusion in their headers
&gt; 
&gt; Make IntPoint.cpp and IntSize.cpp instead; what’s the argument against that?

Valid point :)

(In reply to comment #2)
&gt; (From update of attachment 208452 [details])
&gt; What’s the rationale for using member functions for these? Easier to invoke from the debugger?

Is there a better way? It looked to me like DataLog falls back on calling T::dump() when it doesn&apos;t know about the type. Maybe pizlo can comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>915945</commentid>
    <comment_count>5</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-08-09 14:34:07 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 208452 [details])
&gt; What’s the rationale for using member functions for these? Easier to invoke from the debugger?

Also, you don&apos;t invoke these manually; they get invoked via dataLog()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>915946</commentid>
    <comment_count>6</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-08-09 14:35:08 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #2)
&gt; &gt; What’s the rationale for using member functions for these? Easier to invoke from the debugger?
&gt; 
&gt; Is there a better way? It looked to me like DataLog falls back on calling T::dump() when it doesn&apos;t know about the type. Maybe pizlo can comment.

We should fix DataLog so it calls dump(const X&amp;), which in turn can be a template that calls X::dump. That way you can make something dump-able without changing the class itself.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>915951</commentid>
    <comment_count>7</comment_count>
      <attachid>208452</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-08-09 14:49:31 -0700</bug_when>
    <thetext>Comment on attachment 208452
take one

Attachment 208452 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/1359579</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>915960</commentid>
    <comment_count>8</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-08-09 15:29:38 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #4)
&gt; &gt; (In reply to comment #2)
&gt; &gt; &gt; What’s the rationale for using member functions for these? Easier to invoke from the debugger?
&gt; &gt; 
&gt; &gt; Is there a better way? It looked to me like DataLog falls back on calling T::dump() when it doesn&apos;t know about the type. Maybe pizlo can comment.
&gt; 
&gt; We should fix DataLog so it calls dump(const X&amp;), which in turn can be a template that calls X::dump. That way you can make something dump-able without changing the class itself.

This already works. The canonical way to make something dump able is to add a dump(PrintStream&amp;) method. But you can also add a WTF::printInternal(PrintStream&amp;, const T&amp;) function and get the same effect. 

In JSC the idiom I ultimately converged to was preferring a dump method over a printInternal function, except in the case of enums (obviously). I don&apos;t have a good reason for that preference other than it usually leads to less code, since a function in WTF means opening and then closing that namespace, and having to use whatever namespace T is in (or have a lot of JSC::T like code).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>915962</commentid>
    <comment_count>9</comment_count>
      <attachid>208452</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-08-09 15:31:34 -0700</bug_when>
    <thetext>Comment on attachment 208452
take one

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

&gt; Source/WebCore/platform/graphics/IntRect.h:211
&gt; +    void dump(WTF::PrintStream&amp; out) const;

Don&apos;t need to say &quot;WTF::&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>915963</commentid>
    <comment_count>10</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-08-09 15:33:17 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=208452) [details]
&gt; take one
&gt; 
&gt; I&apos;m somewhat tempted to put them all in one big implementation file (GeometryFormatters? I have no idea) instead of spreading datalog stuff throughout all these classes (especially because of IntPoint and IntSize lacking implementation files causing PrintStream.h inclusion in their headers -- but maybe PrintStream.h doesn&apos;t change often and that won&apos;t be a problem?).

It&apos;s already the case that a bunch of JSC and WTF headers include PrintStream.h - and no, it doesn&apos;t change often.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>916360</commentid>
    <comment_count>11</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-08-12 12:12:31 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/153952</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>916373</commentid>
    <comment_count>12</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2013-08-12 12:41:50 -0700</bug_when>
    <thetext>I remember seeing objections for such kind of print methods addition to these classes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>916374</commentid>
    <comment_count>13</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2013-08-12 12:43:22 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; I remember seeing objections for such kind of print methods addition to these classes.

https://bugs.webkit.org/show_bug.cgi?id=79176 - [Bug 79176] Add dump method for WebCore::Int{Point, Rect, Size}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>916381</commentid>
    <comment_count>14</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-08-12 12:55:43 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; (In reply to comment #12)
&gt; &gt; I remember seeing objections for such kind of print methods addition to these classes.
&gt; 
&gt; https://bugs.webkit.org/show_bug.cgi?id=79176 - [Bug 79176] Add dump method for WebCore::Int{Point, Rect, Size}

Yeah, they&apos;ve come back up again on #webkit too.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>208452</attachid>
            <date>2013-08-09 14:10:15 -0700</date>
            <delta_ts>2013-08-09 15:31:34 -0700</delta_ts>
            <desc>take one</desc>
            <filename>dumpers.diff</filename>
            <type>text/plain</type>
            <size>6953</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjMTVlOTIwLi5lYmVlZDgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcg
QEAKKzIwMTMtMDgtMDkgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisK
KyAgICAgICAgZGF0YUxvZyBkdW1wZXJzIGZvciBXZWJDb3JlJ3MgYmFzaWMgZ2VvbWV0cnkgdHlw
ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExOTYz
NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvRmxvYXRQb2ludC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGbG9hdFBv
aW50OjpkdW1wKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFBvaW50Lmg6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRSZWN0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZsb2F0UmVjdDo6ZHVtcCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRS
ZWN0Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRTaXplLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkZsb2F0U2l6ZTo6ZHVtcCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvRmxvYXRTaXplLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvSW50UG9pbnQuaDoK
KyAgICAgICAgKFdlYkNvcmU6OkludFBvaW50OjpkdW1wKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9JbnRSZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkludFJlY3Q6OmR1bXApOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ludFJlY3QuaDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9JbnRTaXplLmg6CisgICAgICAgIChXZWJDb3JlOjpJbnRTaXplOjpkdW1wKToK
KwogMjAxMy0wOC0wOCAgR3l1eW91bmcgS2ltICA8Z3l1eW91bmcua2ltQHNhbXN1bmcuY29tPgog
CiAgICAgICAgIEludHJvZHVjZSB0b1NWR01QYXRoRWxlbWVudCgpLCBhbmQgdXNlIGl0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFBvaW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQuY3BwCmluZGV4IDI3
OTVhYjMuLmNhMWI4NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL0Zsb2F0UG9pbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0Zsb2F0UG9pbnQuY3BwCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAiVHJhbnNmb3JtYXRp
b25NYXRyaXguaCIKICNpbmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8bWF0aC5oPgorI2luY2x1
ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTExOCw0
ICsxMTksOSBAQCBib29sIGZpbmRJbnRlcnNlY3Rpb24oY29uc3QgRmxvYXRQb2ludCYgcDEsIGNv
bnN0IEZsb2F0UG9pbnQmIHAyLCBjb25zdCBGbG9hdFBvaQogICAgIHJldHVybiB0cnVlOwogfQog
Cit2b2lkIEZsb2F0UG9pbnQ6OmR1bXAoUHJpbnRTdHJlYW0mIG91dCkgY29uc3QKK3sKKyAgICBv
dXQucHJpbnRmKCIoJWYsICVmKSIsIHgoKSwgeSgpKTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRQb2ludC5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRQb2ludC5oCmluZGV4IGE2NTZjM2EuLmU1ODJjNjMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFBvaW50LmgKQEAg
LTE2NCw2ICsxNjQsOCBAQCBwdWJsaWM6CiAgICAgRmxvYXRQb2ludCBtYXRyaXhUcmFuc2Zvcm0o
Y29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmKSBjb25zdDsKICAgICBGbG9hdFBvaW50IG1hdHJp
eFRyYW5zZm9ybShjb25zdCBBZmZpbmVUcmFuc2Zvcm0mKSBjb25zdDsKIAorICAgIHZvaWQgZHVt
cChQcmludFN0cmVhbSYgb3V0KSBjb25zdDsKKwogcHJpdmF0ZToKICAgICBmbG9hdCBtX3gsIG1f
eTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9h
dFJlY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRSZWN0LmNw
cAppbmRleCBjNGViN2IxLi5hZDRjMmViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9GbG9hdFJlY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0Zsb2F0UmVjdC5jcHAKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlIDxhbGdv
cml0aG0+CiAjaW5jbHVkZSA8bWF0aC5oPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+Cisj
aW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CiAKIHVzaW5nIHN0ZDo6bWF4OwogdXNpbmcgc3Rk
OjptaW47CkBAIC0yNTIsNCArMjUzLDkgQEAgRmxvYXRSZWN0IG1hcFJlY3QoY29uc3QgRmxvYXRS
ZWN0JiByLCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEZsb2F0UmVjdCYKICAgICAg
ICAgICAgICAgICAgICAgIHIud2lkdGgoKSAqIHdpZHRoU2NhbGUsIHIuaGVpZ2h0KCkgKiBoZWln
aHRTY2FsZSk7CiB9CiAKK3ZvaWQgRmxvYXRSZWN0OjpkdW1wKFByaW50U3RyZWFtJiBvdXQpIGNv
bnN0Cit7CisgICAgb3V0LnByaW50KGxvY2F0aW9uKCksICIgIiwgc2l6ZSgpKTsKK30KKwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRSZWN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFJlY3QuaAppbmRleCAwZGU3
ZTI3Li5kNGUyY2IxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9GbG9hdFJlY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9h
dFJlY3QuaApAQCAtMjAzLDYgKzIwMyw4IEBAIHB1YmxpYzoKICAgICBvcGVyYXRvciBjYWlyb19y
ZWN0YW5nbGVfdCgpIGNvbnN0OwogI2VuZGlmCiAKKyAgICB2b2lkIGR1bXAoV1RGOjpQcmludFN0
cmVhbSYgb3V0KSBjb25zdDsKKwogcHJpdmF0ZToKICAgICBGbG9hdFBvaW50IG1fbG9jYXRpb247
CiAgICAgRmxvYXRTaXplIG1fc2l6ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0Zsb2F0U2l6ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9GbG9hdFNpemUuY3BwCmluZGV4IDI1NTEyYTcuLjMyMjU4ODYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0U2l6ZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRTaXplLmNwcApAQCAtNjAsNCArNjAsOSBA
QCBGbG9hdFNpemUgRmxvYXRTaXplOjpuYXJyb3dQcmVjaXNpb24oZG91YmxlIHdpZHRoLCBkb3Vi
bGUgaGVpZ2h0KQogICAgIHJldHVybiBGbG9hdFNpemUobmFycm93UHJlY2lzaW9uVG9GbG9hdCh3
aWR0aCksIG5hcnJvd1ByZWNpc2lvblRvRmxvYXQoaGVpZ2h0KSk7CiB9CiAKK3ZvaWQgRmxvYXRT
aXplOjpkdW1wKFByaW50U3RyZWFtJiBvdXQpIGNvbnN0Cit7CisgICAgb3V0LnByaW50ZigiKCVm
IHggJWYpIiwgd2lkdGgoKSwgaGVpZ2h0KCkpOworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFNpemUuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0Zsb2F0U2l6ZS5oCmluZGV4IDFiNDA4NTEuLjdhYWVkMTcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0U2l6ZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0U2l6ZS5oCkBAIC0xMzgsNiAr
MTM4LDggQEAgcHVibGljOgogICAgIG9wZXJhdG9yIE5TU2l6ZSgpIGNvbnN0OwogI2VuZGlmCiAK
KyAgICB2b2lkIGR1bXAoUHJpbnRTdHJlYW0mIG91dCkgY29uc3Q7CisKIHByaXZhdGU6CiAgICAg
ZmxvYXQgbV93aWR0aCwgbV9oZWlnaHQ7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvSW50UG9pbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ludFBvaW50LmgKaW5kZXggNjE5NzM0ZS4uMzVjYjRlMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW50UG9pbnQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbnRQb2ludC5oCkBAIC0yOCw2ICsyOCw3IEBACiAKICNp
bmNsdWRlICJJbnRTaXplLmgiCiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KKyNpbmNsdWRl
IDx3dGYvUHJpbnRTdHJlYW0uaD4KIAogI2lmIFVTRShDRykKIHR5cGVkZWYgc3RydWN0IENHUG9p
bnQgQ0dQb2ludDsKQEAgLTEzOSw2ICsxNDAsOCBAQCBwdWJsaWM6CiAgICAgb3BlcmF0b3IgRXZh
c19Qb2ludCgpIGNvbnN0OwogI2VuZGlmCiAKKyAgICB2b2lkIGR1bXAoUHJpbnRTdHJlYW0mIG91
dCkgY29uc3Q7CisKIHByaXZhdGU6CiAgICAgaW50IG1feCwgbV95OwogfTsKQEAgLTIwMCw2ICsy
MDMsMTEgQEAgaW5saW5lIGludCBJbnRQb2ludDo6ZGlzdGFuY2VTcXVhcmVkVG9Qb2ludChjb25z
dCBJbnRQb2ludCYgcG9pbnQpIGNvbnN0CiAgICAgcmV0dXJuICgoKnRoaXMpIC0gcG9pbnQpLmRp
YWdvbmFsTGVuZ3RoU3F1YXJlZCgpOwogfQogCitpbmxpbmUgdm9pZCBJbnRQb2ludDo6ZHVtcChQ
cmludFN0cmVhbSYgb3V0KSBjb25zdAoreworICAgIG91dC5wcmludGYoIiglZCwgJWQpIiwgeCgp
LCB5KCkpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBJbnRQb2lu
dF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbnRSZWN0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ludFJlY3QuY3BwCmluZGV4
IDYxZWQ1ZWUuLmNkYTBlYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ludFJlY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0ludFJlY3QuY3BwCkBAIC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCiAj
aW5jbHVkZSAiTGF5b3V0UmVjdC5oIgogI2luY2x1ZGUgPGFsZ29yaXRobT4KKyNpbmNsdWRlIDx3
dGYvUHJpbnRTdHJlYW0uaD4KIAogdXNpbmcgc3RkOjptYXg7CiB1c2luZyBzdGQ6Om1pbjsKQEAg
LTE1OSw0ICsxNjAsOSBAQCBJbnRSZWN0IHVuaW9uUmVjdChjb25zdCBWZWN0b3I8SW50UmVjdD4m
IHJlY3RzKQogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKK3ZvaWQgSW50UmVjdDo6ZHVtcChQcmlu
dFN0cmVhbSYgb3V0KSBjb25zdAoreworICAgIG91dC5wcmludChsb2NhdGlvbigpLCAiICIsIHNp
emUoKSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ludFJlY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0ludFJlY3QuaAppbmRleCAwZTMzYmJmLi5hZjgyMmJjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbnRSZWN0LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW50UmVjdC5oCkBAIC0yMDgsNiArMjA4LDggQEAg
cHVibGljOgogICAgIG9wZXJhdG9yIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpJbnRSZWN0KCkgY29u
c3Q7CiAjZW5kaWYKIAorICAgIHZvaWQgZHVtcChXVEY6OlByaW50U3RyZWFtJiBvdXQpIGNvbnN0
OworCiBwcml2YXRlOgogICAgIEludFBvaW50IG1fbG9jYXRpb247CiAgICAgSW50U2l6ZSBtX3Np
emU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbnRTaXpl
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbnRTaXplLmgKaW5kZXggYjg0
MzUwNy4uZjdkMzU1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvSW50U2l6ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ludFNp
emUuaApAQCAtMjYsNiArMjYsOCBAQAogI2lmbmRlZiBJbnRTaXplX2gKICNkZWZpbmUgSW50U2l6
ZV9oCiAKKyNpbmNsdWRlIDx3dGYvUHJpbnRTdHJlYW0uaD4KKwogI2lmIFVTRShDRykKIHR5cGVk
ZWYgc3RydWN0IENHU2l6ZSBDR1NpemU7CiAjZW5kaWYKQEAgLTE1Myw2ICsxNTUsOCBAQCBwdWJs
aWM6CiAgICAgb3BlcmF0b3IgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkludFNpemUoKSBjb25zdDsK
ICNlbmRpZgogCisgICAgdm9pZCBkdW1wKFByaW50U3RyZWFtJiBvdXQpIGNvbnN0OworCiBwcml2
YXRlOgogICAgIGludCBtX3dpZHRoLCBtX2hlaWdodDsKIH07CkBAIC0xOTYsNiArMjAwLDExIEBA
IGlubGluZSBib29sIG9wZXJhdG9yIT0oY29uc3QgSW50U2l6ZSYgYSwgY29uc3QgSW50U2l6ZSYg
YikKICAgICByZXR1cm4gYS53aWR0aCgpICE9IGIud2lkdGgoKSB8fCBhLmhlaWdodCgpICE9IGIu
aGVpZ2h0KCk7CiB9CiAKK2lubGluZSB2b2lkIEludFNpemU6OmR1bXAoUHJpbnRTdHJlYW0mIG91
dCkgY29uc3QKK3sKKyAgICBvdXQucHJpbnRmKCIoJWQgeCAlZCkiLCB3aWR0aCgpLCBoZWlnaHQo
KSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEludFNpemVfaAo=
</data>
<flag name="review"
          id="230372"
          type_id="1"
          status="+"
          setter="fpizlo"
    />
    <flag name="commit-queue"
          id="230375"
          type_id="3"
          status="-"
          setter="eflews.bot"
    />
          </attachment>
      

    </bug>

</bugzilla>