<?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>3672</bug_id>
          
          <creation_ts>2005-06-23 02:48:46 -0700</creation_ts>
          <short_desc>GW: KWQRect -- CGRect and other small additions</short_desc>
          <delta_ts>2005-06-24 13:39:09 -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>412</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>3250</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>12906</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2005-06-23 02:48:47 -0700</bug_when>
    <thetext>KWQRect -- CGRect and other small additions

including:
QRect (const QPoint &amp;tl, const QPoint &amp;br)
QRect::top()
QRect::left()
QRect::topLeft()
QRect::bottomRight()
QRect::contiains(QRect)
QRect::normalize()

I&apos;m not 100% sure of the correctness of all these changes... only due to the possible off-by-one error 
associated with QRect.  QRect has this funny +1 width/height property, and I&apos;m not sure that I&apos;m 
correctly adding/removing that +1 when converting to/from CGRect, etc.  Hopefully someone who has 
worked with QRect a bit longer than I can comment more.

That said, the code is otherwise tested and in use locally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12907</commentid>
    <comment_count>1</comment_count>
      <attachid>2576</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2005-06-23 02:51:29 -0700</bug_when>
    <thetext>Created attachment 2576
KWQRect -- CGRect and other small additions</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12922</commentid>
    <comment_count>2</comment_count>
      <attachid>2576</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2005-06-23 07:12:28 -0700</bug_when>
    <thetext>Comment on attachment 2576
KWQRect -- CGRect and other small additions

Looks good. A few comments:

The QRect contructor that takes two points is too long to be inline. Please
move it into the .mm file.

Why did you make left() and top() non-inline? They shouldn&apos;t be changed unless
there&apos;s a reason.

In QRect::normalize, you should use &quot;-w&quot; rather than &quot;(w * -1)&quot; and &quot;-h&quot; rather
than &quot;(h * -1)&quot;.

No need for the extra blank line after operator CGRect. Better to keep the
file&apos;s format consistent, even in such a trivial detail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12982</commentid>
    <comment_count>3</comment_count>
      <attachid>2603</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2005-06-23 12:10:00 -0700</bug_when>
    <thetext>Created attachment 2603
Formatting oversights now fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>13017</commentid>
    <comment_count>4</comment_count>
      <attachid>2603</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2005-06-23 22:55:52 -0700</bug_when>
    <thetext>Comment on attachment 2603
Formatting oversights now fixed.

r=me</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>2576</attachid>
            <date>2005-06-23 02:51:29 -0700</date>
            <delta_ts>2005-06-23 12:10:00 -0700</delta_ts>
            <desc>KWQRect -- CGRect and other small additions</desc>
            <filename>qrect.patch</filename>
            <type>text/plain</type>
            <size>4074</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">SW5kZXg6IEtXUVJlY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvV2ViQ29yZS9r
d3EvS1dRUmVjdC5oLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjMxCmRpZmYgLXAgLXUgLXIxLjMx
IEtXUVJlY3QuaAotLS0gS1dRUmVjdC5oCTIwMDQvMTIvMDcgMDA6MzQ6MDIJMS4zMQorKysgS1dR
UmVjdC5oCTIwMDUvMDYvMjMgMDk6NDQ6MDIKQEAgLTMwLDEzICszMCwxNiBAQAogI2luY2x1ZGUg
IktXUVBvaW50QXJyYXkuaCIKIAogdHlwZWRlZiBzdHJ1Y3QgX05TUmVjdCBOU1JlY3Q7Cit0eXBl
ZGVmIHN0cnVjdCBDR1JlY3QgQ0dSZWN0OwogCiBjbGFzcyBRUmVjdCB7CiBwdWJsaWM6CiAgICAg
UVJlY3QoKTsKICAgICBRUmVjdChRUG9pbnQgcCwgUVNpemUgcyk7CiAgICAgUVJlY3QoaW50LCBp
bnQsIGludCwgaW50KTsKKyAgICBRUmVjdCAoY29uc3QgUVBvaW50ICZ0bCwgY29uc3QgUVBvaW50
ICZicikgeyB4cD10bC54KCk7IHlwPXRsLnkoKTsgdz0oYnIueCgpLXRsLngoKSsxKTsgaD0oYnIu
eSgpLXRsLnkoKSsxKTsgfQogICAgIGV4cGxpY2l0IFFSZWN0KGNvbnN0IE5TUmVjdCAmKTsgLy8g
ZG9uJ3QgZG8gdGhpcyBpbXBsaWNpdGx5IHNpbmNlIGl0J3MgbG9zc3kKKyAgICBleHBsaWNpdCBR
UmVjdChjb25zdCBDR1JlY3QgJik7IC8vIGRvbid0IGRvIHRoaXMgaW1wbGljaXRseSBzaW5jZSBp
dCdzIGxvc3N5CiAKICAgICBib29sIGlzTnVsbCgpIGNvbnN0OwogICAgIGJvb2wgaXNWYWxpZCgp
IGNvbnN0OwpAQCAtNDQsMTUgKzQ3LDE4IEBAIHB1YmxpYzoKIAogICAgIGludCB4KCkgY29uc3Qg
eyByZXR1cm4geHA7IH0KICAgICBpbnQgeSgpIGNvbnN0IHsgcmV0dXJuIHlwOyB9Ci0gICAgaW50
IGxlZnQoKSBjb25zdCB7IHJldHVybiB4cDsgfQotICAgIGludCB0b3AoKSBjb25zdCB7IHJldHVy
biB5cDsgfQorICAgIGludCBsZWZ0KCkgY29uc3Q7CisgICAgaW50IHRvcCgpIGNvbnN0OwogICAg
IGludCByaWdodCgpIGNvbnN0OwogICAgIGludCBib3R0b20oKSBjb25zdDsKICAgICBpbnQgd2lk
dGgoKSBjb25zdCB7IHJldHVybiB3OyB9CiAgICAgaW50IGhlaWdodCgpIGNvbnN0IHsgcmV0dXJu
IGg7IH0KIAogICAgIFFQb2ludCB0b3BMZWZ0KCkgY29uc3Q7CisgICAgUVBvaW50IHRvcFJpZ2h0
KCkgY29uc3Q7CiAgICAgUVBvaW50IGJvdHRvbVJpZ2h0KCkgY29uc3Q7CisgICAgUVBvaW50IGJv
dHRvbUxlZnQoKSBjb25zdDsKKwkKICAgICBRU2l6ZSBzaXplKCkgY29uc3Q7CiAgICAgdm9pZCBz
ZXRYKGludCB4KSB7IHhwID0geDsgfQogICAgIHZvaWQgc2V0WShpbnQgeSkgeyB5cCA9IHk7IH0K
QEAgLTYyLDE4ICs2OCwyNCBAQCBwdWJsaWM6CiAgICAgUVJlY3QgaW50ZXJzZWN0KGNvbnN0IFFS
ZWN0ICYpIGNvbnN0OwogICAgIGJvb2wgaW50ZXJzZWN0cyhjb25zdCBRUmVjdCAmKSBjb25zdDsK
ICAgICBRUmVjdCB1bml0ZShjb25zdCBRUmVjdCAmKSBjb25zdDsKKyAgICBRUmVjdCBub3JtYWxp
emUoKSBjb25zdDsKKwkKKyAgICBib29sIGNvbnRhaW5zKGNvbnN0IFFQb2ludCAmcG9pbnQpIGNv
bnN0IHsgcmV0dXJuIGNvbnRhaW5zKHBvaW50LngoKSwgcG9pbnQueSgpKTsgfQogCiAgICAgYm9v
bCBjb250YWlucyhpbnQgeCwgaW50IHksIGJvb2wgcHJvcGVyID0gZmFsc2UpIGNvbnN0IHsKICAg
ICAgICAgaWYgKHByb3BlcikKICAgICAgICAgICAgIHJldHVybiB4ID4geHAgJiYgKHggPCAoeHAg
KyB3IC0gMSkpICYmIHkgPiB5cCAmJiB5IDwgKHlwICsgaCAtIDEpOwogICAgICAgICByZXR1cm4g
eCA+PSB4cCAmJiB4IDwgKHhwICsgdykgJiYgeSA+PSB5cCAmJiB5IDwgKHlwICsgaCk7CiAgICAg
fQorCQorICAgIGJvb2wgY29udGFpbnMoY29uc3QgUVJlY3QgJnJlY3QpIGNvbnN0IHsgcmV0dXJu
ICh0aGlzLT5pbnRlcnNlY3QocmVjdCkgPT0gcmVjdCk7IH0KICAgICAKICAgICB2b2lkIGluZmxh
dGUoaW50IHMpOwogCiAgICAgaW5saW5lIFFSZWN0IG9wZXJhdG9yJihjb25zdCBRUmVjdCAmcikg
Y29uc3QgeyByZXR1cm4gaW50ZXJzZWN0KHIpOyB9CiAKICAgICBvcGVyYXRvciBOU1JlY3QoKSBj
b25zdDsKKyAgICBvcGVyYXRvciBDR1JlY3QoKSBjb25zdDsKIAogI2lmZGVmIF9LV1FfSU9TVFJF
QU1fCiAgICAgZnJpZW5kIHN0ZDo6b3N0cmVhbSAmb3BlcmF0b3I8PChzdGQ6Om9zdHJlYW0gJiwg
Y29uc3QgUVJlY3QgJik7CkluZGV4OiBLV1FSZWN0Lm1tCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9j
dnMvcm9vdC9XZWJDb3JlL2t3cS9LV1FSZWN0Lm1tLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjE0
CmRpZmYgLXAgLXUgLXIxLjE0IEtXUVJlY3QubW0KLS0tIEtXUVJlY3QubW0JMjAwNC8xMi8wNyAw
MDozNDowMgkxLjE0CisrKyBLV1FSZWN0Lm1tCTIwMDUvMDYvMjMgMDk6NDQ6MDMKQEAgLTQ2LDYg
KzQ2LDEwIEBAIFFSZWN0OjpRUmVjdChjb25zdCBOU1JlY3QgJnIpIDogeHAoKGludCkKIHsKIH0K
IAorUVJlY3Q6OlFSZWN0KGNvbnN0IENHUmVjdCAmcikgOiB4cCgoaW50KXIub3JpZ2luLngpLCB5
cCgoaW50KXIub3JpZ2luLnkpLCB3KChpbnQpci5zaXplLndpZHRoKSwgaCgoaW50KXIuc2l6ZS5o
ZWlnaHQpCit7Cit9CisKIGJvb2wgUVJlY3Q6OmlzTnVsbCgpIGNvbnN0CiB7CiAgICAgcmV0dXJu
IHcgPT0gMCAmJiBoID09IDA7CkBAIC02MSw2ICs2NSwxMSBAQCBib29sIFFSZWN0Ojppc0VtcHR5
KCkgY29uc3QKICAgICByZXR1cm4gdyA8PSAwIHx8IGggPD0gMDsKIH0KIAoraW50IFFSZWN0Ojps
ZWZ0KCkgY29uc3QKK3sKKyAgICByZXR1cm4geHA7Cit9CisKIGludCBRUmVjdDo6cmlnaHQoKSBj
b25zdAogewogICAgIHJldHVybiB4cCArIHcgLSAxOwpAQCAtNzEsMTYgKzgwLDMxIEBAIGludCBR
UmVjdDo6Ym90dG9tKCkgY29uc3QKICAgICByZXR1cm4geXAgKyBoIC0gMTsKIH0KIAoraW50IFFS
ZWN0Ojp0b3AoKSBjb25zdAoreworICAgIHJldHVybiB5cDsKK30KKwogUVBvaW50IFFSZWN0Ojp0
b3BMZWZ0KCkgY29uc3QKIHsKICAgICByZXR1cm4gUVBvaW50KHhwLHlwKTsKIH0KIAorUVBvaW50
IFFSZWN0Ojp0b3BSaWdodCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIFFQb2ludChyaWdodCgpLHRv
cCgpKTsKK30KKwogUVBvaW50IFFSZWN0Ojpib3R0b21SaWdodCgpIGNvbnN0CiB7CiAgICAgcmV0
dXJuIFFQb2ludChyaWdodCgpLGJvdHRvbSgpKTsKIH0KIAorUVBvaW50IFFSZWN0Ojpib3R0b21M
ZWZ0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gUVBvaW50KGxlZnQoKSxib3R0b20oKSk7Cit9CisK
IFFTaXplIFFSZWN0OjpzaXplKCkgY29uc3QKIHsKICAgICByZXR1cm4gUVNpemUodyxoKTsKQEAg
LTExNCw2ICsxMzgsMTkgQEAgUVJlY3QgUVJlY3Q6OnVuaXRlKGNvbnN0IFFSZWN0ICZyKSBjb25z
dAogICAgIHJldHVybiBRUmVjdChueCwgbnksIG53LCBuaCk7CiB9CiAKK1FSZWN0IFFSZWN0Ojpu
b3JtYWxpemUoKSBjb25zdAoreworCVFSZWN0IG5ld1JlY3Q7CisJCisJbmV3UmVjdC54cAk9ICh3
IDwgMCkgPyAoeHAgLSB3KSA6IHhwOworCW5ld1JlY3Qudwk9ICh3IDwgMCkgPyAodyAqIC0xKSA6
IHc7CisJCisJbmV3UmVjdC55cAk9IChoIDwgMCkgPyAoeXAgLSBoKSA6IHlwOworCW5ld1JlY3Qu
aAk9IChoIDwgMCkgPyAoaCAqIC0xKSA6IGg7CisJCisJcmV0dXJuIG5ld1JlY3Q7Cit9CisKIGJv
b2wgUVJlY3Q6OmludGVyc2VjdHMoY29uc3QgUVJlY3QgJnIpIGNvbnN0CiB7CiAgICAgcmV0dXJu
IGludGVyc2VjdChyKS5pc1ZhbGlkKCk7CkBAIC0xNTMsNiArMTkwLDEyIEBAIFFSZWN0OjpvcGVy
YXRvciBOU1JlY3QoKSBjb25zdAogewogICAgIHJldHVybiBOU01ha2VSZWN0KHhwLCB5cCwgdywg
aCk7CiB9CisKK1FSZWN0OjpvcGVyYXRvciBDR1JlY3QoKSBjb25zdAoreworICAgIHJldHVybiBD
R1JlY3RNYWtlKHhwLCB5cCwgdywgaCk7Cit9CisKIAogYm9vbCBvcGVyYXRvcj09KGNvbnN0IFFS
ZWN0ICZhLCBjb25zdCBRUmVjdCAmYikKIHsK
</data>
<flag name="review"
          id="80"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>2603</attachid>
            <date>2005-06-23 12:10:00 -0700</date>
            <delta_ts>2005-06-23 22:55:52 -0700</delta_ts>
            <desc>Formatting oversights now fixed.</desc>
            <filename>rect2.patch</filename>
            <type>text/plain</type>
            <size>3800</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">SW5kZXg6IEtXUVJlY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvV2ViQ29yZS9r
d3EvS1dRUmVjdC5oLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjMxCmRpZmYgLXAgLXUgLXIxLjMx
IEtXUVJlY3QuaAotLS0gS1dRUmVjdC5oCTIwMDQvMTIvMDcgMDA6MzQ6MDIJMS4zMQorKysgS1dR
UmVjdC5oCTIwMDUvMDYvMjMgMTk6MDc6MjMKQEAgLTMwLDEzICszMCwxNiBAQAogI2luY2x1ZGUg
IktXUVBvaW50QXJyYXkuaCIKIAogdHlwZWRlZiBzdHJ1Y3QgX05TUmVjdCBOU1JlY3Q7Cit0eXBl
ZGVmIHN0cnVjdCBDR1JlY3QgQ0dSZWN0OwogCiBjbGFzcyBRUmVjdCB7CiBwdWJsaWM6CiAgICAg
UVJlY3QoKTsKICAgICBRUmVjdChRUG9pbnQgcCwgUVNpemUgcyk7CiAgICAgUVJlY3QoaW50LCBp
bnQsIGludCwgaW50KTsKKyAgICBRUmVjdChjb25zdCBRUG9pbnQgJiwgY29uc3QgUVBvaW50ICYp
OwogICAgIGV4cGxpY2l0IFFSZWN0KGNvbnN0IE5TUmVjdCAmKTsgLy8gZG9uJ3QgZG8gdGhpcyBp
bXBsaWNpdGx5IHNpbmNlIGl0J3MgbG9zc3kKKyAgICBleHBsaWNpdCBRUmVjdChjb25zdCBDR1Jl
Y3QgJik7IC8vIGRvbid0IGRvIHRoaXMgaW1wbGljaXRseSBzaW5jZSBpdCdzIGxvc3N5CiAKICAg
ICBib29sIGlzTnVsbCgpIGNvbnN0OwogICAgIGJvb2wgaXNWYWxpZCgpIGNvbnN0OwpAQCAtNTIs
NyArNTUsMTAgQEAgcHVibGljOgogICAgIGludCBoZWlnaHQoKSBjb25zdCB7IHJldHVybiBoOyB9
CiAKICAgICBRUG9pbnQgdG9wTGVmdCgpIGNvbnN0OworICAgIFFQb2ludCB0b3BSaWdodCgpIGNv
bnN0OwogICAgIFFQb2ludCBib3R0b21SaWdodCgpIGNvbnN0OworICAgIFFQb2ludCBib3R0b21M
ZWZ0KCkgY29uc3Q7CisJCiAgICAgUVNpemUgc2l6ZSgpIGNvbnN0OwogICAgIHZvaWQgc2V0WChp
bnQgeCkgeyB4cCA9IHg7IH0KICAgICB2b2lkIHNldFkoaW50IHkpIHsgeXAgPSB5OyB9CkBAIC02
MiwxOCArNjgsMjQgQEAgcHVibGljOgogICAgIFFSZWN0IGludGVyc2VjdChjb25zdCBRUmVjdCAm
KSBjb25zdDsKICAgICBib29sIGludGVyc2VjdHMoY29uc3QgUVJlY3QgJikgY29uc3Q7CiAgICAg
UVJlY3QgdW5pdGUoY29uc3QgUVJlY3QgJikgY29uc3Q7CisgICAgUVJlY3Qgbm9ybWFsaXplKCkg
Y29uc3Q7CisJCisgICAgYm9vbCBjb250YWlucyhjb25zdCBRUG9pbnQgJnBvaW50KSBjb25zdCB7
IHJldHVybiBjb250YWlucyhwb2ludC54KCksIHBvaW50LnkoKSk7IH0KIAogICAgIGJvb2wgY29u
dGFpbnMoaW50IHgsIGludCB5LCBib29sIHByb3BlciA9IGZhbHNlKSBjb25zdCB7CiAgICAgICAg
IGlmIChwcm9wZXIpCiAgICAgICAgICAgICByZXR1cm4geCA+IHhwICYmICh4IDwgKHhwICsgdyAt
IDEpKSAmJiB5ID4geXAgJiYgeSA8ICh5cCArIGggLSAxKTsKICAgICAgICAgcmV0dXJuIHggPj0g
eHAgJiYgeCA8ICh4cCArIHcpICYmIHkgPj0geXAgJiYgeSA8ICh5cCArIGgpOwogICAgIH0KKwkK
KyAgICBib29sIGNvbnRhaW5zKGNvbnN0IFFSZWN0ICZyZWN0KSBjb25zdCB7IHJldHVybiBpbnRl
cnNlY3QocmVjdCkgPT0gcmVjdDsgfQogICAgIAogICAgIHZvaWQgaW5mbGF0ZShpbnQgcyk7CiAK
ICAgICBpbmxpbmUgUVJlY3Qgb3BlcmF0b3ImKGNvbnN0IFFSZWN0ICZyKSBjb25zdCB7IHJldHVy
biBpbnRlcnNlY3Qocik7IH0KIAogICAgIG9wZXJhdG9yIE5TUmVjdCgpIGNvbnN0OworICAgIG9w
ZXJhdG9yIENHUmVjdCgpIGNvbnN0OwogCiAjaWZkZWYgX0tXUV9JT1NUUkVBTV8KICAgICBmcmll
bmQgc3RkOjpvc3RyZWFtICZvcGVyYXRvcjw8KHN0ZDo6b3N0cmVhbSAmLCBjb25zdCBRUmVjdCAm
KTsKSW5kZXg6IEtXUVJlY3QubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L1dlYkNv
cmUva3dxL0tXUVJlY3QubW0sdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTQKZGlmZiAtcCAtdSAt
cjEuMTQgS1dRUmVjdC5tbQotLS0gS1dRUmVjdC5tbQkyMDA0LzEyLzA3IDAwOjM0OjAyCTEuMTQK
KysrIEtXUVJlY3QubW0JMjAwNS8wNi8yMyAxOTowNzoyMwpAQCAtNDIsMTAgKzQyLDIyIEBAIFFS
ZWN0OjpRUmVjdChRUG9pbnQgcCwgUVNpemUgcykgOiB4cChwLngKIHsKIH0KIAorUVJlY3Q6OlFS
ZWN0KGNvbnN0IFFQb2ludCAmdG9wTGVmdCwgY29uc3QgUVBvaW50ICZib3R0b21SaWdodCkKK3sK
KyAgICB4cCA9IHRvcExlZnQueCgpOworICAgIHlwID0gdG9wTGVmdC55KCk7CisgICAgdyA9IGJv
dHRvbVJpZ2h0LngoKSAtIHRvcExlZnQueCgpICsgMTsKKyAgICBoID0gYm90dG9tUmlnaHQueSgp
IC0gdG9wTGVmdC55KCkgKyAxOworfQorCiBRUmVjdDo6UVJlY3QoY29uc3QgTlNSZWN0ICZyKSA6
IHhwKChpbnQpci5vcmlnaW4ueCksIHlwKChpbnQpci5vcmlnaW4ueSksIHcoKGludClyLnNpemUu
d2lkdGgpLCBoKChpbnQpci5zaXplLmhlaWdodCkKIHsKIH0KIAorUVJlY3Q6OlFSZWN0KGNvbnN0
IENHUmVjdCAmcikgOiB4cCgoaW50KXIub3JpZ2luLngpLCB5cCgoaW50KXIub3JpZ2luLnkpLCB3
KChpbnQpci5zaXplLndpZHRoKSwgaCgoaW50KXIuc2l6ZS5oZWlnaHQpCit7Cit9CisKIGJvb2wg
UVJlY3Q6OmlzTnVsbCgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIHcgPT0gMCAmJiBoID09IDA7CkBA
IC03NiwxMSArODgsMjEgQEAgUVBvaW50IFFSZWN0Ojp0b3BMZWZ0KCkgY29uc3QKICAgICByZXR1
cm4gUVBvaW50KHhwLHlwKTsKIH0KIAorUVBvaW50IFFSZWN0Ojp0b3BSaWdodCgpIGNvbnN0Cit7
CisgICAgcmV0dXJuIFFQb2ludChyaWdodCgpLHRvcCgpKTsKK30KKwogUVBvaW50IFFSZWN0Ojpi
b3R0b21SaWdodCgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIFFQb2ludChyaWdodCgpLGJvdHRvbSgp
KTsKIH0KIAorUVBvaW50IFFSZWN0Ojpib3R0b21MZWZ0KCkgY29uc3QKK3sKKyAgICByZXR1cm4g
UVBvaW50KGxlZnQoKSxib3R0b20oKSk7Cit9CisKIFFTaXplIFFSZWN0OjpzaXplKCkgY29uc3QK
IHsKICAgICByZXR1cm4gUVNpemUodyxoKTsKQEAgLTExNCw2ICsxMzYsMTkgQEAgUVJlY3QgUVJl
Y3Q6OnVuaXRlKGNvbnN0IFFSZWN0ICZyKSBjb25zdAogICAgIHJldHVybiBRUmVjdChueCwgbnks
IG53LCBuaCk7CiB9CiAKK1FSZWN0IFFSZWN0Ojpub3JtYWxpemUoKSBjb25zdAoreworICAgIFFS
ZWN0IG5ld1JlY3Q7CisgICAgCisgICAgbmV3UmVjdC54cAk9ICh3IDwgMCkgPyAoeHAgLSB3KSA6
IHhwOworICAgIG5ld1JlY3Qudwk9ICh3IDwgMCkgPyAtdyA6IHc7CisgICAgCisgICAgbmV3UmVj
dC55cAk9IChoIDwgMCkgPyAoeXAgLSBoKSA6IHlwOworICAgIG5ld1JlY3QuaAk9IChoIDwgMCkg
PyAtaCA6IGg7CisgICAgCisgICAgcmV0dXJuIG5ld1JlY3Q7Cit9CisKIGJvb2wgUVJlY3Q6Omlu
dGVyc2VjdHMoY29uc3QgUVJlY3QgJnIpIGNvbnN0CiB7CiAgICAgcmV0dXJuIGludGVyc2VjdChy
KS5pc1ZhbGlkKCk7CkBAIC0xNTIsNiArMTg3LDExIEBAIHZvaWQgUVJlY3Q6OmluZmxhdGUoaW50
IHMpCiBRUmVjdDo6b3BlcmF0b3IgTlNSZWN0KCkgY29uc3QKIHsKICAgICByZXR1cm4gTlNNYWtl
UmVjdCh4cCwgeXAsIHcsIGgpOworfQorCitRUmVjdDo6b3BlcmF0b3IgQ0dSZWN0KCkgY29uc3QK
K3sKKyAgICByZXR1cm4gQ0dSZWN0TWFrZSh4cCwgeXAsIHcsIGgpOwogfQogCiBib29sIG9wZXJh
dG9yPT0oY29uc3QgUVJlY3QgJmEsIGNvbnN0IFFSZWN0ICZiKQo=
</data>
<flag name="review"
          id="90"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>