<?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>27813</bug_id>
          
          <creation_ts>2009-07-29 13:19:18 -0700</creation_ts>
          <short_desc>[Qt] DumpRenderTree lacks pixel tests support</short_desc>
          <delta_ts>2010-02-03 11:40:23 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Linux</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="Ariya Hidayat">ariya.hidayat</reporter>
          <assigned_to name="Ariya Hidayat">ariya.hidayat</assigned_to>
          <cc>abecsi</cc>
    
    <cc>hausmann</cc>
    
    <cc>kenneth</cc>
    
    <cc>ossy</cc>
    
    <cc>tonikitoo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>135663</commentid>
    <comment_count>0</comment_count>
    <who name="Ariya Hidayat">ariya.hidayat</who>
    <bug_when>2009-07-29 13:19:18 -0700</bug_when>
    <thetext>DumpRenderTree of the Qt port currently does not support pixel tests.

I will post a series of patches that implement this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135667</commentid>
    <comment_count>1</comment_count>
      <attachid>33737</attachid>
    <who name="Ariya Hidayat">ariya.hidayat</who>
    <bug_when>2009-07-29 13:23:40 -0700</bug_when>
    <thetext>Created attachment 33737
Implement ImageDiff</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135668</commentid>
    <comment_count>2</comment_count>
      <attachid>33738</attachid>
    <who name="Ariya Hidayat">ariya.hidayat</who>
    <bug_when>2009-07-29 13:27:26 -0700</bug_when>
    <thetext>Created attachment 33738
Add pixel tests to DumpRenderTree</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135676</commentid>
    <comment_count>3</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2009-07-29 13:46:25 -0700</bug_when>
    <thetext>&lt;ariya&gt; tonikitoo: relay to kenneth, give a try, check the coding style etc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135818</commentid>
    <comment_count>4</comment_count>
      <attachid>33737</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2009-07-30 05:16:11 -0700</bug_when>
    <thetext>Comment on attachment 33737
Implement ImageDiff

r=me. Cool stuff :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135819</commentid>
    <comment_count>5</comment_count>
      <attachid>33738</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2009-07-30 05:18:15 -0700</bug_when>
    <thetext>Comment on attachment 33738
Add pixel tests to DumpRenderTree

r=me. One sidenote: Due to the WTF assertion macros not be consistenly exported in Mac framework builds in dbg vs. release it may be better to use Q_ASSERT instead of ASSERT() for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135832</commentid>
    <comment_count>6</comment_count>
    <who name="Ariya Hidayat">ariya.hidayat</who>
    <bug_when>2009-07-30 06:11:54 -0700</bug_when>
    <thetext>Landed in 
http://trac.webkit.org/changeset/46579
http://trac.webkit.org/changeset/46577</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187352</commentid>
    <comment_count>7</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2010-02-03 07:32:33 -0800</bug_when>
    <thetext>Now pixel tests don&apos;t work with QtWebKit because of defective DRT implementation.

bug #1
run-webkit-tests pass filename with expected PNG hash to DRT.
eg: test_path/test_name.html&apos;3f973ccf15193923c3fa3fda3cccbb50

If the filename/URL doesn&apos;t start with &quot;http:&quot;, &quot;https:&quot;, &quot;file:&quot;,
DumpRenderTree::processLine test file existance incorrectly, because
we should remove the hash code:
QFileInfo fi(line);
if (!fi.exists()) ...

Now DumpRenderTree::open() separates the real filename and hash,
we should move this mechanism to processLine to work correctly.


bug #2
DumpRenderTree::dump() dumps only the first 32768 bytes chuck of PNG file.
I have no idea what would you like to do with this code:
if (written == block)
    break;

I think it is absolutely unnecessary (and bad), so I propose to remove it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187353</commentid>
    <comment_count>8</comment_count>
      <attachid>48028</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2010-02-03 07:33:14 -0800</bug_when>
    <thetext>Created attachment 48028
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187360</commentid>
    <comment_count>9</comment_count>
      <attachid>48028</attachid>
    <who name="Ariya Hidayat">ariya.hidayat</who>
    <bug_when>2010-02-03 07:55:20 -0800</bug_when>
    <thetext>Comment on attachment 48028
proposed fix

&gt; +        [Qt] DumpRenderTree lacks pixel tests support
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=27813

Maybe provide the description of your fix, rather then the bug?

&gt; +    m_expectedHash = QString();
&gt; +    if (m_dumpPixels) {
&gt; +        // single quote marks the pixel dump hash
&gt; +        int i = line.indexOf(&apos;\&apos;&apos;);
&gt; +        if (i &gt; -1) {
&gt; +            m_expectedHash = line.mid(i + 1, line.length());
&gt; +            line.remove(i, line.length());
&gt; +        }
&gt; +    }

Looks good.

&gt; -                if (written == block)
&gt; -                    break;

This is because it is ported from other DRT. Maybe check why this exists elsewhere?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187373</commentid>
    <comment_count>10</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2010-02-03 08:18:51 -0800</bug_when>
    <thetext>You ported this code from WebKitTools/DumpRenderTree/PixelDumpSupport.cpp:
const size_t bytesToWriteInOneChunk = 1 &lt;&lt; 15;
    size_t dataRemainingToWrite = dataLength;
    while (dataRemainingToWrite) {
        size_t bytesToWriteInThisChunk = std::min(dataRemainingToWrite, bytesToWriteInOneChunk);
        size_t bytesWritten = fwrite(data, 1, bytesToWriteInThisChunk, stdout);
        if (bytesWritten != bytesToWriteInThisChunk)
            break;
        dataRemainingToWrite -= bytesWritten;
        data += bytesWritten;
}

--

s/==/!=/ can solve the problem, but I think the original method and variable names are more understandable, so I suggest we should only port it without refactoring.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187374</commentid>
    <comment_count>11</comment_count>
      <attachid>48035</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2010-02-03 08:19:30 -0800</bug_when>
    <thetext>Created attachment 48035
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187446</commentid>
    <comment_count>12</comment_count>
      <attachid>48055</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2010-02-03 11:17:36 -0800</bug_when>
    <thetext>Created attachment 48055
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187453</commentid>
    <comment_count>13</comment_count>
      <attachid>48055</attachid>
    <who name="Ariya Hidayat">ariya.hidayat</who>
    <bug_when>2010-02-03 11:33:12 -0800</bug_when>
    <thetext>Comment on attachment 48055
proposed fix

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187455</commentid>
    <comment_count>14</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2010-02-03 11:40:23 -0800</bug_when>
    <thetext>Fix landed in http://trac.webkit.org/changeset/54289 .</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33737</attachid>
            <date>2009-07-29 13:23:40 -0700</date>
            <delta_ts>2009-07-30 06:13:52 -0700</delta_ts>
            <desc>Implement ImageDiff</desc>
            <filename>ImageDiff.patch</filename>
            <type>text/plain</type>
            <size>8814</size>
            <attacher name="Ariya Hidayat">ariya.hidayat</attacher>
            
              <data encoding="base64">Y29tbWl0IGE5NTQ1YzFhMzQxYzEzMGVhNjQ5ZGE3ZGRjNjQ4NGM1ZDRhM2IyM2YKQXV0aG9yOiBB
cml5YSBIaWRheWF0IDxhcml5YS5oaWRheWF0QG5va2lhLmNvbT4KRGF0ZTogICBXZWQgSnVsIDI5
IDIyOjE4OjQ3IDIwMDkgKzAyMDAKCiAgICBDaGFuZ2VMb2c6CiAgICAKICAgIDIwMDktMDctMjkg
IEFyaXlhIEhpZGF5YXQgIDxhcml5YS5oaWRheWF0QG5va2lhLmNvbT4KICAgIAogICAgICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KICAgIAogICAgICAgICAgICBBZGRpbmcgSW1h
Z2VEaWZmIHByb2plY3QgZmlsZS4KICAgIAogICAgICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc4MTMKICAgIAogICAgICAgICAgICAqIFdlYktpdC5wcm86
IEFkZGVkIEltYWdlRGlmZi5wcm8uCiAgICAKICAgIFdlYktpdFRvb2xzL0NoYW5nZUxvZzoKICAg
IAogICAgMjAwOS0wNy0yOSAgQXJpeWEgSGlkYXlhdCAgPGFyaXlhLmhpZGF5YXRAbm9raWEuY29t
PgogICAgCiAgICAgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgogICAgCiAgICAg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzgxMwogICAg
CiAgICAgICAgICAgIFtRdF0gSW1wbGVtZW50IEltYWdlRGlmZi4KICAgIAogICAgICAgICAgICAq
IER1bXBSZW5kZXJUcmVlL3F0L0ltYWdlRGlmZi5jcHA6IEFkZGVkLgogICAgICAgICAgICAqIER1
bXBSZW5kZXJUcmVlL3F0L0ltYWdlRGlmZi5wcm86IEFkZGVkLgoKZGlmZiAtLWdpdCBhL0NoYW5n
ZUxvZyBiL0NoYW5nZUxvZwppbmRleCAyNTk2MmRkLi43NGMxYzBkIDEwMDY0NAotLS0gYS9DaGFu
Z2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDktMDctMjkgIEFyaXlh
IEhpZGF5YXQgIDxhcml5YS5oaWRheWF0QG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRpbmcgSW1hZ2VEaWZmIHByb2plY3QgZmls
ZS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc4
MTMKKworICAgICAgICAqIFdlYktpdC5wcm86IEFkZGVkIEltYWdlRGlmZi5wcm8uCisKIDIwMDkt
MDctMjkgIEphbiBNaWNoYWVsIEFsb256byAgPGptYWxvbnpvQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwgYW5kIFhhbiBMb3Blei4KZGlmZiAtLWdpdCBhL1dl
YktpdC5wcm8gYi9XZWJLaXQucHJvCmluZGV4IDIxZDNkYWEuLjBhNjIyZmUgMTAwNjQ0Ci0tLSBh
L1dlYktpdC5wcm8KKysrIGIvV2ViS2l0LnBybwpAQCAtOSw2ICs5LDcgQEAgU1VCRElSUyArPSBc
CiAKICF3aW4zMjohc3ltYmlhbiB7CiAgICAgU1VCRElSUyArPSBXZWJLaXRUb29scy9EdW1wUmVu
ZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5wcm8KKyAgICBTVUJESVJTICs9IFdlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL3F0L0ltYWdlRGlmZi5wcm8KICAgICAhbWFjOiBTVUJESVJTICs9IFdl
YktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L1Rlc3ROZXRzY2FwZVBsdWdpbi9UZXN0TmV0c2Nh
cGVQbHVnaW4ucHJvCiB9CiAKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dl
YktpdFRvb2xzL0NoYW5nZUxvZwppbmRleCBlOTAxODhlLi43ZGYwNjYzIDEwMDY0NAotLS0gYS9X
ZWJLaXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTQgQEAKKzIwMDktMDctMjkgIEFyaXlhIEhpZGF5YXQgIDxhcml5YS5oaWRheWF0QG5va2lh
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc4MTMKKworICAgICAgICBb
UXRdIEltcGxlbWVudCBJbWFnZURpZmYuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9J
bWFnZURpZmYuY3BwOiBBZGRlZC4KKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9JbWFnZURp
ZmYucHJvOiBBZGRlZC4KKwogMjAwOS0wNy0yOSAgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4g
IDxrZW5uZXRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGF2ZSBMZXZpbi4K
ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0ltYWdlRGlmZi5jcHAg
Yi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9JbWFnZURpZmYuY3BwCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVkMWQzZDIKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9JbWFnZURpZmYuY3BwCkBAIC0wLDAgKzEsMTQ0IEBA
CisvKgorICAgIENvcHlyaWdodCAoQykgMjAwOSBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRz
IHN1YnNpZGlhcnkoLWllcykKKworICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5
b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRl
cm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICAgIExpY2Vuc2UgYXMgcHVi
bGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICAgIHZlcnNp
b24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv
bi4KKworICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0
IHdpbGwgYmUgdXNlZnVsLAorICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBl
dmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAgICBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICAgIFlvdSBzaG91bGQg
aGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExp
Y2Vuc2UKKyAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcu
TElCLiAgSWYgbm90LCB3cml0ZSB0bworICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s
IEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgICAgQm9zdG9uLCBNQSAw
MjExMC0xMzAxLCBVU0EuCisqLworCisjaW5jbHVkZSA8UUFwcGxpY2F0aW9uPgorI2luY2x1ZGUg
PFFCdWZmZXI+CisjaW5jbHVkZSA8UUJ5dGVBcnJheT4KKyNpbmNsdWRlIDxRSW1hZ2U+CisjaW5j
bHVkZSA8UVN0cmluZ0xpc3Q+CisKKyNpbmNsdWRlIDxtYXRoLmg+CisKK2ludCBtYWluKGludCBh
cmdjLCBjaGFyKiBhcmd2W10pCit7CisgICAgUUNvcmVBcHBsaWNhdGlvbiBhcHAoYXJnYywgYXJn
dik7CisKKyAgICBxcmVhbCB0b2xlcmFuY2UgPSAwOworCisgICAgUVN0cmluZ0xpc3QgYXJncyA9
IGFwcC5hcmd1bWVudHMoKTsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IGFyZ2M7ICsraSkKKyAg
ICAgICAgaWYgKGFyZ3NbaV0gPT0gIi10IiB8fCBhcmdzW2ldID09ICItLXRvbGVyYW5jZSIpCisg
ICAgICAgICAgICB0b2xlcmFuY2UgPSBhcmdzW2kgKyAxXS50b0RvdWJsZSgpOworCisgICAgY2hh
ciBidWZmZXJbMjA0OF07CisgICAgUUltYWdlIGFjdHVhbEltYWdlOworICAgIFFJbWFnZSBiYXNl
bGluZUltYWdlOworCisgICAgd2hpbGUgKGZnZXRzKGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlciksIHN0
ZGluKSkgeworICAgICAgICAvLyByZW1vdmUgdGhlIENSCisgICAgICAgIGNoYXIqIG5ld0xpbmVD
aGFyYWN0ZXIgPSBzdHJjaHIoYnVmZmVyLCAnXG4nKTsKKyAgICAgICAgaWYgKG5ld0xpbmVDaGFy
YWN0ZXIpCisgICAgICAgICAgICAqbmV3TGluZUNoYXJhY3RlciA9ICdcMCc7CisKKyAgICAgICAg
aWYgKCFzdHJuY21wKCJDb250ZW50LUxlbmd0aDogIiwgYnVmZmVyLCAxNikpIHsKKyAgICAgICAg
ICAgIHN0cnRvayhidWZmZXIsICIgIik7CisgICAgICAgICAgICBpbnQgaW1hZ2VTaXplID0gc3Ry
dG9sKHN0cnRvaygwLCAiICIpLCAwLCAxMCk7CisKKyAgICAgICAgICAgIGlmIChpbWFnZVNpemUg
PD0gMCkgeworICAgICAgICAgICAgICAgIGZwdXRzKCJlcnJvciwgaW1hZ2Ugc2l6ZSBtdXN0IGJl
IHNwZWNpZmllZC5cbiIsIHN0ZG91dCk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgICAgIHVuc2lnbmVkIGNoYXIgYnVmZmVyWzIwNDhdOworICAgICAgICAgICAgICAgIFFCdWZm
ZXIgZGF0YTsKKworICAgICAgICAgICAgICAgIC8vIFJlYWQgYWxsIHRoZSBpbmNvbWluZyBjaHVu
a3MKKyAgICAgICAgICAgICAgICBkYXRhLm9wZW4oUUJ1ZmZlcjo6V3JpdGVPbmx5KTsKKyAgICAg
ICAgICAgICAgICB3aGlsZSAoaW1hZ2VTaXplID4gMCkgeworICAgICAgICAgICAgICAgICAgICBz
aXplX3QgYnl0ZXNUb1JlYWQgPSBxTWluKGltYWdlU2l6ZSwgMjA0OCk7CisgICAgICAgICAgICAg
ICAgICAgIHNpemVfdCBieXRlc1JlYWQgPSBmcmVhZChidWZmZXIsIDEsIGJ5dGVzVG9SZWFkLCBz
dGRpbik7CisgICAgICAgICAgICAgICAgICAgIGRhdGEud3JpdGUocmVpbnRlcnByZXRfY2FzdDxj
b25zdCBjaGFyKj4oYnVmZmVyKSwgYnl0ZXNSZWFkKTsKKyAgICAgICAgICAgICAgICAgICAgaW1h
Z2VTaXplIC09IHN0YXRpY19jYXN0PGludD4oYnl0ZXNSZWFkKTsKKyAgICAgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgICAgICAvLyBDb252ZXJ0IGludG8gUUltYWdlCisgICAgICAgICAgICAg
ICAgUUltYWdlIGRlY29kZWRJbWFnZTsKKyAgICAgICAgICAgICAgICBkZWNvZGVkSW1hZ2UubG9h
ZEZyb21EYXRhKGRhdGEuZGF0YSgpLCAiUE5HIik7CisgICAgICAgICAgICAgICAgZGVjb2RlZElt
YWdlLmNvbnZlcnRUb0Zvcm1hdChRSW1hZ2U6OkZvcm1hdF9BUkdCMzIpOworCisgICAgICAgICAg
ICAgICAgLy8gUGxhY2UgaXQgaW4gdGhlIHJpZ2h0IHBsYWNlCisgICAgICAgICAgICAgICAgaWYg
KGFjdHVhbEltYWdlLmlzTnVsbCgpKQorICAgICAgICAgICAgICAgICAgICBhY3R1YWxJbWFnZSA9
IGRlY29kZWRJbWFnZTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAg
IGJhc2VsaW5lSW1hZ2UgPSBkZWNvZGVkSW1hZ2U7CisgICAgICAgICAgICB9CisgICAgICAgIH0K
KworICAgICAgICBpZiAoIWFjdHVhbEltYWdlLmlzTnVsbCgpICYmICFiYXNlbGluZUltYWdlLmlz
TnVsbCgpKSB7CisKKyAgICAgICAgICAgIGlmIChhY3R1YWxJbWFnZS5zaXplKCkgIT0gYmFzZWxp
bmVJbWFnZS5zaXplKCkpIHsKKyAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9y
LCB0ZXN0IGFuZCByZWZlcmVuY2UgaW1hZ2UgaGF2ZSBkaWZmZXJlbnQgcHJvcGVydGllcy5cbiIp
OworICAgICAgICAgICAgICAgIGZmbHVzaChzdGRlcnIpOworICAgICAgICAgICAgfSBlbHNlIHsK
KworICAgICAgICAgICAgICAgIGludCB3ID0gYWN0dWFsSW1hZ2Uud2lkdGgoKTsKKyAgICAgICAg
ICAgICAgICBpbnQgaCA9IGFjdHVhbEltYWdlLmhlaWdodCgpOworICAgICAgICAgICAgICAgIFFJ
bWFnZSBkaWZmSW1hZ2UodywgaCwgUUltYWdlOjpGb3JtYXRfQVJHQjMyKTsKKworICAgICAgICAg
ICAgICAgIGludCBjb3VudCA9IDA7CisgICAgICAgICAgICAgICAgcXJlYWwgc3VtID0gMDsKKyAg
ICAgICAgICAgICAgICBxcmVhbCBtYXhEaXN0YW5jZSA9IDA7CisKKyAgICAgICAgICAgICAgICBm
b3IgKGludCB4ID0gMDsgeCA8IHc7ICsreCkKKyAgICAgICAgICAgICAgICAgICAgZm9yIChpbnQg
eSA9IDA7IHkgPCBoOyArK3kpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIFFSZ2IgcGl4ZWwg
PSBhY3R1YWxJbWFnZS5waXhlbCh4LCB5KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIFFSZ2Ig
YmFzZVBpeGVsID0gYmFzZWxpbmVJbWFnZS5waXhlbCh4LCB5KTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHFyZWFsIHJlZCA9IChxUmVkKHBpeGVsKSAtIHFSZWQoYmFzZVBpeGVsKSkgLyBzdGF0
aWNfY2FzdDxmbG9hdD4ocU1heCgyNTUgLSBxUmVkKGJhc2VQaXhlbCksIHFSZWQoYmFzZVBpeGVs
KSkpOworICAgICAgICAgICAgICAgICAgICAgICAgcXJlYWwgZ3JlZW4gPSAocUdyZWVuKHBpeGVs
KSAtIHFHcmVlbihiYXNlUGl4ZWwpKSAvIHN0YXRpY19jYXN0PGZsb2F0PihxTWF4KDI1NSAtIHFH
cmVlbihiYXNlUGl4ZWwpLCBxR3JlZW4oYmFzZVBpeGVsKSkpOworICAgICAgICAgICAgICAgICAg
ICAgICAgcXJlYWwgYmx1ZSA9IChxQmx1ZShwaXhlbCkgLSBxQmx1ZShiYXNlUGl4ZWwpKSAvIHN0
YXRpY19jYXN0PGZsb2F0PihxTWF4KDI1NSAtIHFCbHVlKGJhc2VQaXhlbCksIHFCbHVlKGJhc2VQ
aXhlbCkpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHFyZWFsIGFscGhhID0gKHFBbHBoYShw
aXhlbCkgLSBxQWxwaGEoYmFzZVBpeGVsKSkgLyBzdGF0aWNfY2FzdDxmbG9hdD4ocU1heCgyNTUg
LSBxQWxwaGEoYmFzZVBpeGVsKSwgcUFscGhhKGJhc2VQaXhlbCkpKTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHFyZWFsIGRpc3RhbmNlID0gc3FydChyZWQgKiByZWQgKyBncmVlbiAqIGdyZWVu
ICsgYmx1ZSAqIGJsdWUgKyBhbHBoYSAqIGFscGhhKSAvIDIuMGY7CisgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgZ3JheSA9IGRpc3RhbmNlICogcXJlYWwoMjU1KTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGRpZmZJbWFnZS5zZXRQaXhlbCh4LCB5LCBxUmdiKGdyYXksIGdyYXksIGdyYXkp
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkaXN0YW5jZSA+PSAxIC8gcXJlYWwoMjU1
KSkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvdW50Kys7CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgc3VtICs9IGRpc3RhbmNlOworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG1heERpc3RhbmNlID0gcU1heChtYXhEaXN0YW5jZSwgZGlzdGFuY2UpOworICAgICAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIHFy
ZWFsIGRpZmZlcmVuY2UgPSAwOworICAgICAgICAgICAgICAgIGlmIChjb3VudCkKKyAgICAgICAg
ICAgICAgICAgICAgZGlmZmVyZW5jZSA9IDEwMCAqIHN1bSAvIHN0YXRpY19jYXN0PHFyZWFsPih3
ICogaCk7CisgICAgICAgICAgICAgICAgaWYgKGRpZmZlcmVuY2UgPD0gdG9sZXJhbmNlKSB7Cisg
ICAgICAgICAgICAgICAgICAgIGRpZmZlcmVuY2UgPSAwOworICAgICAgICAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICAgICAgICAgIGRpZmZlcmVuY2UgPSByb3VuZChkaWZmZXJlbmNlICog
MTAwKSAvIDEwMDsKKyAgICAgICAgICAgICAgICAgICAgZGlmZmVyZW5jZSA9IHFNYXgoZGlmZmVy
ZW5jZSwgMC4wMSk7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgaWYgKCFj
b3VudCkgeworICAgICAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZG91dCwgImRpZmY6ICUwMS4y
ZiUlIHBhc3NlZFxuIiwgZGlmZmVyZW5jZSk7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgICAgICAgICAgUUJ1ZmZlciBidWZmZXI7CisgICAgICAgICAgICAgICAgICAgIGJ1
ZmZlci5vcGVuKFFCdWZmZXI6OldyaXRlT25seSk7CisgICAgICAgICAgICAgICAgICAgIGRpZmZJ
bWFnZS5zYXZlKCZidWZmZXIsICJQTkciKTsKKyAgICAgICAgICAgICAgICAgICAgYnVmZmVyLmNs
b3NlKCk7CisgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFCeXRlQXJyYXkgJmRhdGEgPSBidWZm
ZXIuZGF0YSgpOworICAgICAgICAgICAgICAgICAgICBwcmludGYoIkNvbnRlbnQtTGVuZ3RoOiAl
bHVcbiIsIHN0YXRpY19jYXN0PHVuc2lnbmVkIGxvbmc+KGRhdGEubGVuZ3RoKCkpKTsKKyAgICAg
ICAgICAgICAgICAgICAgZndyaXRlKGRhdGEuY29uc3REYXRhKCksIDEsIGRhdGEubGVuZ3RoKCks
IHN0ZG91dCk7CisKKyAgICAgICAgICAgICAgICAgICAgZnByaW50ZihzdGRvdXQsICJkaWZmOiAl
MDEuMmYlJSBmYWlsZWRcbiIsIGRpZmZlcmVuY2UpOworICAgICAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgICAgIGZmbHVzaChzdGRvdXQpOworICAgICAgICAgICAgfQorICAgICAgICB9Cisg
ICAgfQorCisgICAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVu
ZGVyVHJlZS9xdC9JbWFnZURpZmYucHJvIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQv
SW1hZ2VEaWZmLnBybwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMWVlMWZh
Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvSW1hZ2VE
aWZmLnBybwpAQCAtMCwwICsxLDE4IEBACitUQVJHRVQgPSBJbWFnZURpZmYKK0NPTkZJRyAgLT0g
YXBwX2J1bmRsZQorCitpbmNsdWRlKC4uLy4uLy4uL1dlYktpdC5wcmkpCitJTkNMVURFUEFUSCAr
PSAuLi8uLi8uLi9KYXZhU2NyaXB0Q29yZQorREVTVERJUiA9IC4uLy4uLy4uL2JpbgorCitRVCA9
IGNvcmUgZ3VpCisKK1NPVVJDRVMgPSBJbWFnZURpZmYuY3BwCisKK3VuaXg6IW1hYyB7CisgICAg
UU1BS0VfUlBBVEhESVIgPSAkJE9VVFBVVF9ESVIvbGliICQkUU1BS0VfUlBBVEhESVIKK30KKwor
bGVzc1RoYW4oUVRfTUlOT1JfVkVSU0lPTiwgNCkgeworICAgIERFRklORVMgKz0gUVRfQkVHSU5f
TkFNRVNQQUNFPSIiIFFUX0VORF9OQU1FU1BBQ0U9IiIKK30K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33738</attachid>
            <date>2009-07-29 13:27:26 -0700</date>
            <delta_ts>2009-07-30 06:14:23 -0700</delta_ts>
            <desc>Add pixel tests to DumpRenderTree</desc>
            <filename>PixelTests.patch</filename>
            <type>text/plain</type>
            <size>6968</size>
            <attacher name="Ariya Hidayat">ariya.hidayat</attacher>
            
              <data encoding="base64">Y29tbWl0IDJjZWI5ZWY1NWZkNTk0YTVkOWQ0OWU4MDFlZDk1NWVhNGZhZWNhOTkKQXV0aG9yOiBB
cml5YSBIaWRheWF0IDxhcml5YS5oaWRheWF0QG5va2lhLmNvbT4KRGF0ZTogICBXZWQgSnVsIDI5
IDIyOjI4OjM3IDIwMDkgKzAyMDAKCiAgICAyMDA5LTA3LTI5ICBBcml5YSBIaWRheWF0ICA8YXJp
eWEuaGlkYXlhdEBub2tpYS5jb20+CiAgICAKICAgICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCiAgICAKICAgICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTI3ODEzCiAgICAKICAgICAgICAgICAgW1F0XSBTdXBwb3J0IHBpeGVsIHRlc3Rz
IGluIER1bXBSZW5kZXJUcmVlIGZvciB0aGUgUXQgcG9ydC4KICAgIAogICAgICAgICAgICAqIER1
bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlLmNwcDoKICAgICAgICAgICAgKFdlYkNvcmU6
OkR1bXBSZW5kZXJUcmVlOjpEdW1wUmVuZGVyVHJlZSk6CiAgICAgICAgICAgIChXZWJDb3JlOjpE
dW1wUmVuZGVyVHJlZTo6b3Blbik6CiAgICAgICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJl
ZTo6c2V0RHVtcFBpeGVscyk6CiAgICAgICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6
ZHVtcCk6CiAgICAgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWUuaDoK
ICAgICAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9tYWluLmNwcDoKICAgICAgICAgICAgKG1h
aW4pOgoKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0No
YW5nZUxvZwppbmRleCA3ZGYwNjYzLi43OGU3OGM3IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9D
aGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC00LDYgKzQsMjMgQEAKIAog
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc4MTMKIAor
ICAgICAgICBbUXRdIFN1cHBvcnQgcGl4ZWwgdGVzdHMgaW4gRHVtcFJlbmRlclRyZWUgZm9yIHRo
ZSBRdCBwb3J0LgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RHVtcFJlbmRlclRyZWU6OkR1bXBSZW5kZXJUcmVlKToK
KyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpvcGVuKToKKyAgICAgICAgKFdlYkNv
cmU6OkR1bXBSZW5kZXJUcmVlOjpzZXREdW1wUGl4ZWxzKToKKyAgICAgICAgKFdlYkNvcmU6OkR1
bXBSZW5kZXJUcmVlOjpkdW1wKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVu
ZGVyVHJlZS5oOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L21haW4uY3BwOgorICAgICAg
ICAobWFpbik6CisKKzIwMDktMDctMjkgIEFyaXlhIEhpZGF5YXQgIDxhcml5YS5oaWRheWF0QG5v
a2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc4MTMKKwogICAgICAg
ICBbUXRdIEltcGxlbWVudCBJbWFnZURpZmYuCiAKICAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9x
dC9JbWFnZURpZmYuY3BwOiBBZGRlZC4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlLmNwcCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L3F0L0R1bXBSZW5kZXJUcmVlLmNwcAppbmRleCA3M2ZmOGIxLi42MzIzNjc3IDEwMDY0NAotLS0g
YS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5jcHAKKysrIGIv
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWUuY3BwCkBAIC0zMyw2
ICszMyw4IEBACiAjaW5jbHVkZSAianNvYmplY3RzLmgiCiAjaW5jbHVkZSAidGVzdHBsdWdpbi5o
IgogCisjaW5jbHVkZSA8UUJ1ZmZlcj4KKyNpbmNsdWRlIDxRQ3J5cHRvZ3JhcGhpY0hhc2g+CiAj
aW5jbHVkZSA8UURpcj4KICNpbmNsdWRlIDxRRmlsZT4KICNpbmNsdWRlIDxRVGltZXI+CkBAIC01
Niw2ICs1OCw4IEBACiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8cWRlYnVnLmg+CiAK
KyNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgorCiBleHRlcm4gdm9pZCBxdF9kcnRfcnVuKGJv
b2wgYik7CiBleHRlcm4gdm9pZCBxdF9kdW1wX3NldF9hY2NlcHRzX2VkaXRpbmcoYm9vbCBiKTsK
IGV4dGVybiB2b2lkIHF0X2R1bXBfZnJhbWVfbG9hZGVyKGJvb2wgYik7CkBAIC0xNDEsNyArMTQ1
LDggQEAgYm9vbCBXZWJQYWdlOjpqYXZhU2NyaXB0UHJvbXB0KFFXZWJGcmFtZSosIGNvbnN0IFFT
dHJpbmcmIG1zZywgY29uc3QgUVN0cmluZyYgZGUKIH0KIAogRHVtcFJlbmRlclRyZWU6OkR1bXBS
ZW5kZXJUcmVlKCkKLSAgICA6IG1fc3RkaW4oMCkKKyAgICA6IG1fZHVtcFBpeGVscyhmYWxzZSkK
KyAgICAsIG1fc3RkaW4oMCkKICAgICAsIG1fbm90aWZpZXIoMCkKIHsKICAgICBxdF9kcnRfb3Zl
cndyaXRlUGx1Z2luRGlyZWN0b3JpZXMoKTsKQEAgLTE5Niw4ICsyMDEsMjEgQEAgdm9pZCBEdW1w
UmVuZGVyVHJlZTo6b3BlbigpCiAgICAgfQogfQogCi12b2lkIER1bXBSZW5kZXJUcmVlOjpvcGVu
KGNvbnN0IFFVcmwmIHVybCkKK3ZvaWQgRHVtcFJlbmRlclRyZWU6Om9wZW4oY29uc3QgUVVybCYg
YXVybCkKIHsKKyAgICBRVXJsIHVybCA9IGF1cmw7CisgICAgbV9leHBlY3RlZEhhc2ggPSBRU3Ry
aW5nKCk7CisgICAgaWYgKG1fZHVtcFBpeGVscykgeworICAgICAgICAvLyBzaW5nbGUgcXVvdGUg
bWFya3MgdGhlIHBpeGVsIGR1bXAgaGFzaAorICAgICAgICBRU3RyaW5nIHN0ciA9IHVybC50b1N0
cmluZygpOworICAgICAgICBpbnQgaSA9IHN0ci5pbmRleE9mKCdcJycpOworICAgICAgICBpZiAo
aSA+IC0xKSB7CisgICAgICAgICAgICBtX2V4cGVjdGVkSGFzaCA9IHN0ci5taWQoaSArIDEsIHN0
ci5sZW5ndGgoKSk7CisgICAgICAgICAgICBzdHIucmVtb3ZlKGksIHN0ci5sZW5ndGgoKSk7Cisg
ICAgICAgICAgICB1cmwgPSBRVXJsKHN0cik7CisgICAgICAgIH0KKyAgICB9CisKICAgICAvLyBX
M0MgU1ZHIHRlc3RzIGV4cGVjdCB0byBiZSA0ODB4MzYwCiAgICAgYm9vbCBpc1czQ1Rlc3QgPSB1
cmwudG9TdHJpbmcoKS5jb250YWlucygic3ZnL1czQy1TVkctMS4xIik7CiAgICAgaW50IHdpZHRo
ID0gaXNXM0NUZXN0ID8gNDgwIDogbWF4Vmlld1dpZHRoOwpAQCAtMjQ3LDYgKzI2NSwxMSBAQCB2
b2lkIER1bXBSZW5kZXJUcmVlOjpyZWFkU3RkaW4oaW50IC8qIHNvY2tldCAqLykKICAgICBmZmx1
c2goc3Rkb3V0KTsKIH0KIAordm9pZCBEdW1wUmVuZGVyVHJlZTo6c2V0RHVtcFBpeGVscyhib29s
IGR1bXApCit7CisgICAgbV9kdW1wUGl4ZWxzID0gZHVtcDsKK30KKwogdm9pZCBEdW1wUmVuZGVy
VHJlZTo6cmVzZXRKU09iamVjdHMoKQogewogICAgIG1fY29udHJvbGxlci0+cmVzZXQoKTsKQEAg
LTMzMSwxNyArMzU0LDU1IEBAIHZvaWQgRHVtcFJlbmRlclRyZWU6OmR1bXAoKQogCiAgICAgLy8g
c2lnbmFsIGVuZCBvZiB0ZXh0IGJsb2NrCiAgICAgZnByaW50ZihzdGRvdXQsICIjRU9GXG4iKTsK
LQotICAgIC8vIFNpbmNlIHBpeGVsIHRlc3RzIGFyZSBjdXJyZW50bHkgdW5zdXBwb3J0ZWQgYnkg
UXQncyBEUlQsCi0gICAgLy8ganVzdCBzaWduYWwgYW4gZW1wdHkgcGl4ZWwgdGVzdCBibG9jayB0
byBydW4td2Via2l0LXRlc3RzCi0gICAgZnByaW50ZihzdGRvdXQsICIjRU9GXG4iKTsKLQogICAg
IGZmbHVzaChzdGRvdXQpOwotCiAgICAgZnByaW50ZihzdGRlcnIsICIjRU9GXG4iKTsKLQogICAg
IGZmbHVzaChzdGRlcnIpOwogCisgICAgaWYgKG1fZHVtcFBpeGVscykgeworCisgICAgICAgIFFJ
bWFnZSBpbWFnZShtX3BhZ2UtPnZpZXdwb3J0U2l6ZSgpLCBRSW1hZ2U6OkZvcm1hdF9BUkdCMzIp
OworICAgICAgICBpbWFnZS5maWxsKFF0Ojp3aGl0ZSk7CisgICAgICAgIFFQYWludGVyIHBhaW50
ZXIoJmltYWdlKTsKKyAgICAgICAgbV9wYWdlLT5tYWluRnJhbWUoKS0+cmVuZGVyKCZwYWludGVy
KTsKKyAgICAgICAgcGFpbnRlci5lbmQoKTsKKworICAgICAgICBRQ3J5cHRvZ3JhcGhpY0hhc2gg
aGFzaChRQ3J5cHRvZ3JhcGhpY0hhc2g6Ok1kNSk7CisgICAgICAgIGZvciAoaW50IHJvdyA9IDA7
IHJvdyA8IGltYWdlLmhlaWdodCgpOyArK3JvdykKKyAgICAgICAgICAgIGhhc2guYWRkRGF0YShy
ZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPihpbWFnZS5zY2FuTGluZShyb3cpKSwgaW1hZ2Uu
d2lkdGgoKSAqIDQpOworICAgICAgICBRU3RyaW5nIGFjdHVhbEhhc2ggPSBoYXNoLnJlc3VsdCgp
LnRvSGV4KCk7CisKKyAgICAgICAgZnByaW50ZihzdGRvdXQsICJcbkFjdHVhbEhhc2g6ICVzXG4i
LCBxUHJpbnRhYmxlKGFjdHVhbEhhc2gpKTsKKworICAgICAgICBpZiAoIW1fZXhwZWN0ZWRIYXNo
LmlzRW1wdHkoKSkgeworICAgICAgICAgICAgQVNTRVJUKG1fZXhwZWN0ZWRIYXNoLmxlbmd0aCgp
ID09IDMyKTsKKyAgICAgICAgICAgIGZwcmludGYoc3Rkb3V0LCAiXG5FeHBlY3RlZEhhc2g6ICVz
XG4iLCBxUHJpbnRhYmxlKG1fZXhwZWN0ZWRIYXNoKSk7CisKKyAgICAgICAgICAgIFFCdWZmZXIg
YnVmZmVyOworICAgICAgICAgICAgYnVmZmVyLm9wZW4oUUJ1ZmZlcjo6V3JpdGVPbmx5KTsKKyAg
ICAgICAgICAgIGltYWdlLnNhdmUoJmJ1ZmZlciwgIlBORyIpOworICAgICAgICAgICAgYnVmZmVy
LmNsb3NlKCk7CisgICAgICAgICAgICBjb25zdCBRQnl0ZUFycmF5ICZkYXRhID0gYnVmZmVyLmRh
dGEoKTsKKworICAgICAgICAgICAgcHJpbnRmKCJDb250ZW50LVR5cGU6ICVzXG4iLCAiaW1hZ2Uv
cG5nIik7CisgICAgICAgICAgICBwcmludGYoIkNvbnRlbnQtTGVuZ3RoOiAlbHVcbiIsIHN0YXRp
Y19jYXN0PHVuc2lnbmVkIGxvbmc+KGRhdGEubGVuZ3RoKCkpKTsKKworICAgICAgICAgICAgY29u
c3QgY2hhciAqcHRyID0gZGF0YS5kYXRhKCk7CisgICAgICAgICAgICBmb3IocXVpbnQzMiBsZWZ0
ID0gZGF0YS5sZW5ndGgoKTsgbGVmdDsgKSB7CisgICAgICAgICAgICAgICAgcXVpbnQzMiBibG9j
ayA9IHFNaW4obGVmdCwgcXVpbnQzMigxIDw8IDE1KSk7CisgICAgICAgICAgICAgICAgcXVpbnQz
MiB3cml0dGVuID0gZndyaXRlKHB0ciwgMSwgYmxvY2ssIHN0ZG91dCk7CisgICAgICAgICAgICAg
ICAgcHRyICs9IHdyaXR0ZW47CisgICAgICAgICAgICAgICAgbGVmdCAtPSB3cml0dGVuOworICAg
ICAgICAgICAgICAgIGlmICh3cml0dGVuID09IGJsb2NrKQorICAgICAgICAgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGZmbHVzaChzdGRvdXQp
OworICAgIH0KKworICAgIGZwcmludGYoc3Rkb3V0LCAiI0VPRlxuIik7CisgICAgZmZsdXNoKHN0
ZG91dCk7CisKICAgICBpZiAoIW1fbm90aWZpZXIpIHsKICAgICAgICAgLy8gRXhpdCBub3cgaW4g
c2luZ2xlIGZpbGUgbW9kZS4uLgogICAgICAgICBxdWl0KCk7CmRpZmYgLS1naXQgYS9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5oIGIvV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWUuaAppbmRleCAzMzYzNDRiLi4zOGMxNTkxIDEw
MDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5o
CisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlLmgKQEAg
LTYyLDYgKzYyLDggQEAgcHVibGljOgogICAgIC8vIEluaXRpYWxpemUgaW4gc2luZ2xlLWZpbGUg
bW9kZS4KICAgICB2b2lkIG9wZW4oY29uc3QgUVVybCYgdXJsKTsKIAorICAgIHZvaWQgc2V0RHVt
cFBpeGVscyhib29sKTsKKwogICAgIHZvaWQgcmVzZXRKU09iamVjdHMoKTsKIAogICAgIExheW91
dFRlc3RDb250cm9sbGVyICpsYXlvdXRUZXN0Q29udHJvbGxlcigpIGNvbnN0IHsgcmV0dXJuIG1f
Y29udHJvbGxlcjsgfQpAQCAtNzMsNiArNzUsNyBAQCBwdWJsaWM6CiAKICAgICBRV2ViUGFnZSAq
d2ViUGFnZSgpIGNvbnN0IHsgcmV0dXJuIG1fcGFnZTsgfQogCisKICNpZiBkZWZpbmVkKFFfV1Nf
WDExKQogICAgIHN0YXRpYyB2b2lkIGluaXRpYWxpemVGb250cygpOwogI2VuZGlmCkBAIC05Myw2
ICs5Niw5IEBAIHByaXZhdGU6CiAgICAgUVN0cmluZyBkdW1wQmFja0ZvcndhcmRMaXN0KCk7CiAg
ICAgTGF5b3V0VGVzdENvbnRyb2xsZXIgKm1fY29udHJvbGxlcjsKIAorICAgIGJvb2wgbV9kdW1w
UGl4ZWxzOworICAgIFFTdHJpbmcgbV9leHBlY3RlZEhhc2g7CisKICAgICBRV2ViUGFnZSAqbV9w
YWdlOwogCiAgICAgRXZlbnRTZW5kZXIgKm1fZXZlbnRTZW5kZXI7CmRpZmYgLS1naXQgYS9XZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9tYWluLmNwcCBiL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL3F0L21haW4uY3BwCmluZGV4IDA3N2ZkYTYuLmFlNjdhNTkgMTAwNjQ0Ci0tLSBhL1dl
YktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L21haW4uY3BwCisrKyBiL1dlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL3F0L21haW4uY3BwCkBAIC0xMzgsNiArMTM4LDkgQEAgaW50IG1haW4oaW50
IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkKIAogICAgIFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlIGR1bXBl
cjsKIAorICAgIGlmIChhcmdzLmNvbnRhaW5zKCItLXBpeGVsLXRlc3RzIikpCisgICAgICAgIGR1
bXBlci5zZXREdW1wUGl4ZWxzKHRydWUpOworCiAgICAgUVN0cmluZyBkYkRpciA9IFFEZXNrdG9w
U2VydmljZXM6OnN0b3JhZ2VMb2NhdGlvbihRRGVza3RvcFNlcnZpY2VzOjpEYXRhTG9jYXRpb24p
ICsgUURpcjo6c2VwYXJhdG9yKCkgKyAicXR3ZWJraXRkcnQiOwogICAgIFFXZWJTZXR0aW5nczo6
c2V0T2ZmbGluZVN0b3JhZ2VQYXRoKGRiRGlyKTsKICAgICBRV2ViRGF0YWJhc2U6OnJlbW92ZUFs
bERhdGFiYXNlcygpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48028</attachid>
            <date>2010-02-03 07:33:14 -0800</date>
            <delta_ts>2010-02-03 08:19:30 -0800</delta_ts>
            <desc>proposed fix</desc>
            <filename>DRT-pixel-test.patch</filename>
            <type>text/plain</type>
            <size>2686</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCAyNDkyYWJkLi5kMjAxNzk2IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDIt
MDMgIENzYWJhIE9zenRyb2dvbsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIER1bXBSZW5kZXJUcmVlIGxh
Y2tzIHBpeGVsIHRlc3RzIHN1cHBvcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI3ODEzCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1w
UmVuZGVyVHJlZVF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpvcGVu
KToKKyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpwcm9jZXNzTGluZSk6CisgICAg
ICAgICAtIEhhc2ggcHJvY2Vzc2luZyBtZWNoYW5pc20gbW92ZWQgZnJvbSBEdW1wUmVuZGVyVHJl
ZTo6b3BlbiB0byBEdW1wUmVuZGVyVHJlZTo6cHJvY2Vzc0xpbmUuCisgICAgICAgIChXZWJDb3Jl
OjpEdW1wUmVuZGVyVHJlZTo6ZHVtcCk6IEZpeGVkLgorCiAyMDEwLTAyLTAyICBLZXZpbiBPbGxp
dmllciAgPGtldmlub0B0aGVvbGxpdmllcnMuY29tPgogCiAgICAgICAgIFt3eF0gQnVpbGQgZml4
IGFmdGVyIGludHJvZHVjdGlvbiBvZiBwYWdlTnVtYmVyRm9yRWxlbWVudEJ5SWQuCmRpZmYgLS1n
aXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcCBi
L1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCmluZGV4
IDk5MTZmMjQuLmNiNWVjMmEgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCkBAIC00MTIsMjMgKzQxMiwxMCBAQCB2b2lkIER1bXBS
ZW5kZXJUcmVlOjpyZXNldFRvQ29uc2lzdGVudFN0YXRlQmVmb3JlVGVzdGluZygpCiAgICAgc2V0
bG9jYWxlKExDX0FMTCwgIiIpOwogfQogCi12b2lkIER1bXBSZW5kZXJUcmVlOjpvcGVuKGNvbnN0
IFFVcmwmIGF1cmwpCit2b2lkIER1bXBSZW5kZXJUcmVlOjpvcGVuKGNvbnN0IFFVcmwmIHVybCkK
IHsKICAgICByZXNldFRvQ29uc2lzdGVudFN0YXRlQmVmb3JlVGVzdGluZygpOwogCi0gICAgUVVy
bCB1cmwgPSBhdXJsOwotICAgIG1fZXhwZWN0ZWRIYXNoID0gUVN0cmluZygpOwotICAgIGlmICht
X2R1bXBQaXhlbHMpIHsKLSAgICAgICAgLy8gc2luZ2xlIHF1b3RlIG1hcmtzIHRoZSBwaXhlbCBk
dW1wIGhhc2gKLSAgICAgICAgUVN0cmluZyBzdHIgPSB1cmwudG9TdHJpbmcoKTsKLSAgICAgICAg
aW50IGkgPSBzdHIuaW5kZXhPZignXCcnKTsKLSAgICAgICAgaWYgKGkgPiAtMSkgewotICAgICAg
ICAgICAgbV9leHBlY3RlZEhhc2ggPSBzdHIubWlkKGkgKyAxLCBzdHIubGVuZ3RoKCkpOwotICAg
ICAgICAgICAgc3RyLnJlbW92ZShpLCBzdHIubGVuZ3RoKCkpOwotICAgICAgICAgICAgdXJsID0g
UVVybChzdHIpOwotICAgICAgICB9Ci0gICAgfQotCiAgICAgLy8gVzNDIFNWRyB0ZXN0cyBleHBl
Y3QgdG8gYmUgNDgweDM2MAogICAgIGJvb2wgaXNXM0NUZXN0ID0gdXJsLnRvU3RyaW5nKCkuY29u
dGFpbnMoInN2Zy9XM0MtU1ZHLTEuMSIpOwogICAgIGludCB3aWR0aCA9IGlzVzNDVGVzdCA/IDQ4
MCA6IG1heFZpZXdXaWR0aDsKQEAgLTQ3Nyw2ICs0NjQsMTYgQEAgdm9pZCBEdW1wUmVuZGVyVHJl
ZTo6cHJvY2Vzc0xpbmUoY29uc3QgUVN0cmluZyAmaW5wdXQpCiB7CiAgICAgUVN0cmluZyBsaW5l
ID0gaW5wdXQ7CiAKKyAgICBtX2V4cGVjdGVkSGFzaCA9IFFTdHJpbmcoKTsKKyAgICBpZiAobV9k
dW1wUGl4ZWxzKSB7CisgICAgICAgIC8vIHNpbmdsZSBxdW90ZSBtYXJrcyB0aGUgcGl4ZWwgZHVt
cCBoYXNoCisgICAgICAgIGludCBpID0gbGluZS5pbmRleE9mKCdcJycpOworICAgICAgICBpZiAo
aSA+IC0xKSB7CisgICAgICAgICAgICBtX2V4cGVjdGVkSGFzaCA9IGxpbmUubWlkKGkgKyAxLCBs
aW5lLmxlbmd0aCgpKTsKKyAgICAgICAgICAgIGxpbmUucmVtb3ZlKGksIGxpbmUubGVuZ3RoKCkp
OworICAgICAgICB9CisgICAgfQorCiAgICAgaWYgKGxpbmUuc3RhcnRzV2l0aChRTGF0aW4xU3Ry
aW5nKCJodHRwOiIpKQogICAgICAgICAgICAgfHwgbGluZS5zdGFydHNXaXRoKFFMYXRpbjFTdHJp
bmcoImh0dHBzOiIpKQogICAgICAgICAgICAgfHwgbGluZS5zdGFydHNXaXRoKFFMYXRpbjFTdHJp
bmcoImZpbGU6IikpKSB7CkBAIC03MjYsOCArNzIzLDYgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6
ZHVtcCgpCiAgICAgICAgICAgICAgICAgcXVpbnQzMiB3cml0dGVuID0gZndyaXRlKHB0ciwgMSwg
YmxvY2ssIHN0ZG91dCk7CiAgICAgICAgICAgICAgICAgcHRyICs9IHdyaXR0ZW47CiAgICAgICAg
ICAgICAgICAgbGVmdCAtPSB3cml0dGVuOwotICAgICAgICAgICAgICAgIGlmICh3cml0dGVuID09
IGJsb2NrKQotICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KICAgICAg
ICAgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48035</attachid>
            <date>2010-02-03 08:19:30 -0800</date>
            <delta_ts>2010-02-03 11:17:36 -0800</delta_ts>
            <desc>proposed fix</desc>
            <filename>DRT-pixel-test2.patch</filename>
            <type>text/plain</type>
            <size>3532</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCAyNDkyYWJkLi4wZDA0NTRjIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDIt
MDMgIENzYWJhIE9zenRyb2dvbsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIER1bXBSZW5kZXJUcmVlIGxh
Y2tzIHBpeGVsIHRlc3RzIHN1cHBvcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI3ODEzCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1w
UmVuZGVyVHJlZVF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpvcGVu
KToKKyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpwcm9jZXNzTGluZSk6CisgICAg
ICAgICAtIEhhc2ggcHJvY2Vzc2luZyBtZWNoYW5pc20gbW92ZWQgZnJvbSBEdW1wUmVuZGVyVHJl
ZTo6b3BlbiB0byBEdW1wUmVuZGVyVHJlZTo6cHJvY2Vzc0xpbmUuCisgICAgICAgIChXZWJDb3Jl
OjpEdW1wUmVuZGVyVHJlZTo6ZHVtcCk6IEZpeGVkIGFuZCByZW5hbWVkIHZhcmlhYmxlcy4KKwog
MjAxMC0wMi0wMiAgS2V2aW4gT2xsaXZpZXIgIDxrZXZpbm9AdGhlb2xsaXZpZXJzLmNvbT4KIAog
ICAgICAgICBbd3hdIEJ1aWxkIGZpeCBhZnRlciBpbnRyb2R1Y3Rpb24gb2YgcGFnZU51bWJlckZv
ckVsZW1lbnRCeUlkLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQv
RHVtcFJlbmRlclRyZWVRdC5jcHAgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1w
UmVuZGVyVHJlZVF0LmNwcAppbmRleCA5OTE2ZjI0Li5jMTZhNzg2IDEwMDY0NAotLS0gYS9XZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAorKysgYi9XZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcApAQCAtNDEyLDIz
ICs0MTIsMTAgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6cmVzZXRUb0NvbnNpc3RlbnRTdGF0ZUJl
Zm9yZVRlc3RpbmcoKQogICAgIHNldGxvY2FsZShMQ19BTEwsICIiKTsKIH0KIAotdm9pZCBEdW1w
UmVuZGVyVHJlZTo6b3Blbihjb25zdCBRVXJsJiBhdXJsKQordm9pZCBEdW1wUmVuZGVyVHJlZTo6
b3Blbihjb25zdCBRVXJsJiB1cmwpCiB7CiAgICAgcmVzZXRUb0NvbnNpc3RlbnRTdGF0ZUJlZm9y
ZVRlc3RpbmcoKTsKIAotICAgIFFVcmwgdXJsID0gYXVybDsKLSAgICBtX2V4cGVjdGVkSGFzaCA9
IFFTdHJpbmcoKTsKLSAgICBpZiAobV9kdW1wUGl4ZWxzKSB7Ci0gICAgICAgIC8vIHNpbmdsZSBx
dW90ZSBtYXJrcyB0aGUgcGl4ZWwgZHVtcCBoYXNoCi0gICAgICAgIFFTdHJpbmcgc3RyID0gdXJs
LnRvU3RyaW5nKCk7Ci0gICAgICAgIGludCBpID0gc3RyLmluZGV4T2YoJ1wnJyk7Ci0gICAgICAg
IGlmIChpID4gLTEpIHsKLSAgICAgICAgICAgIG1fZXhwZWN0ZWRIYXNoID0gc3RyLm1pZChpICsg
MSwgc3RyLmxlbmd0aCgpKTsKLSAgICAgICAgICAgIHN0ci5yZW1vdmUoaSwgc3RyLmxlbmd0aCgp
KTsKLSAgICAgICAgICAgIHVybCA9IFFVcmwoc3RyKTsKLSAgICAgICAgfQotICAgIH0KLQogICAg
IC8vIFczQyBTVkcgdGVzdHMgZXhwZWN0IHRvIGJlIDQ4MHgzNjAKICAgICBib29sIGlzVzNDVGVz
dCA9IHVybC50b1N0cmluZygpLmNvbnRhaW5zKCJzdmcvVzNDLVNWRy0xLjEiKTsKICAgICBpbnQg
d2lkdGggPSBpc1czQ1Rlc3QgPyA0ODAgOiBtYXhWaWV3V2lkdGg7CkBAIC00NzcsNiArNDY0LDE2
IEBAIHZvaWQgRHVtcFJlbmRlclRyZWU6OnByb2Nlc3NMaW5lKGNvbnN0IFFTdHJpbmcgJmlucHV0
KQogewogICAgIFFTdHJpbmcgbGluZSA9IGlucHV0OwogCisgICAgbV9leHBlY3RlZEhhc2ggPSBR
U3RyaW5nKCk7CisgICAgaWYgKG1fZHVtcFBpeGVscykgeworICAgICAgICAvLyBzaW5nbGUgcXVv
dGUgbWFya3MgdGhlIHBpeGVsIGR1bXAgaGFzaAorICAgICAgICBpbnQgaSA9IGxpbmUuaW5kZXhP
ZignXCcnKTsKKyAgICAgICAgaWYgKGkgPiAtMSkgeworICAgICAgICAgICAgbV9leHBlY3RlZEhh
c2ggPSBsaW5lLm1pZChpICsgMSwgbGluZS5sZW5ndGgoKSk7CisgICAgICAgICAgICBsaW5lLnJl
bW92ZShpLCBsaW5lLmxlbmd0aCgpKTsKKyAgICAgICAgfQorICAgIH0KKwogICAgIGlmIChsaW5l
LnN0YXJ0c1dpdGgoUUxhdGluMVN0cmluZygiaHR0cDoiKSkKICAgICAgICAgICAgIHx8IGxpbmUu
c3RhcnRzV2l0aChRTGF0aW4xU3RyaW5nKCJodHRwczoiKSkKICAgICAgICAgICAgIHx8IGxpbmUu
c3RhcnRzV2l0aChRTGF0aW4xU3RyaW5nKCJmaWxlOiIpKSkgewpAQCAtNzIwLDE0ICs3MTcsMTYg
QEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6ZHVtcCgpCiAgICAgICAgICAgICBwcmludGYoIkNvbnRl
bnQtVHlwZTogJXNcbiIsICJpbWFnZS9wbmciKTsKICAgICAgICAgICAgIHByaW50ZigiQ29udGVu
dC1MZW5ndGg6ICVsdVxuIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQgbG9uZz4oZGF0YS5sZW5ndGgo
KSkpOwogCisgICAgICAgICAgICBjb25zdCBxdWludDMyIGJ5dGVzVG9Xcml0ZUluT25lQ2h1bmsg
PSAxIDw8IDE1OworICAgICAgICAgICAgcXVpbnQzMiBkYXRhUmVtYWluaW5nVG9Xcml0ZSA9IGRh
dGEubGVuZ3RoKCk7CiAgICAgICAgICAgICBjb25zdCBjaGFyICpwdHIgPSBkYXRhLmRhdGEoKTsK
LSAgICAgICAgICAgIGZvcihxdWludDMyIGxlZnQgPSBkYXRhLmxlbmd0aCgpOyBsZWZ0OyApIHsK
LSAgICAgICAgICAgICAgICBxdWludDMyIGJsb2NrID0gcU1pbihsZWZ0LCBxdWludDMyKDEgPDwg
MTUpKTsKLSAgICAgICAgICAgICAgICBxdWludDMyIHdyaXR0ZW4gPSBmd3JpdGUocHRyLCAxLCBi
bG9jaywgc3Rkb3V0KTsKLSAgICAgICAgICAgICAgICBwdHIgKz0gd3JpdHRlbjsKLSAgICAgICAg
ICAgICAgICBsZWZ0IC09IHdyaXR0ZW47Ci0gICAgICAgICAgICAgICAgaWYgKHdyaXR0ZW4gPT0g
YmxvY2spCisgICAgICAgICAgICB3aGlsZSAoZGF0YVJlbWFpbmluZ1RvV3JpdGUpIHsKKyAgICAg
ICAgICAgICAgICBxdWludDMyIGJ5dGVzVG9Xcml0ZUluVGhpc0NodW5rID0gcU1pbihkYXRhUmVt
YWluaW5nVG9Xcml0ZSwgYnl0ZXNUb1dyaXRlSW5PbmVDaHVuayk7CisgICAgICAgICAgICAgICAg
cXVpbnQzMiBieXRlc1dyaXR0ZW4gPSBmd3JpdGUocHRyLCAxLCBieXRlc1RvV3JpdGVJblRoaXND
aHVuaywgc3Rkb3V0KTsKKyAgICAgICAgICAgICAgICBpZiAoYnl0ZXNXcml0dGVuICE9IGJ5dGVz
VG9Xcml0ZUluVGhpc0NodW5rKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
ICAgICAgICBkYXRhUmVtYWluaW5nVG9Xcml0ZSAtPSBieXRlc1dyaXR0ZW47CisgICAgICAgICAg
ICAgICAgcHRyICs9IGJ5dGVzV3JpdHRlbjsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48055</attachid>
            <date>2010-02-03 11:17:36 -0800</date>
            <delta_ts>2010-02-03 11:33:12 -0800</delta_ts>
            <desc>proposed fix</desc>
            <filename>DRT-pixel-test3.patch</filename>
            <type>text/plain</type>
            <size>3516</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCAyNDkyYWJkLi4xYzVlZTMwIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDIt
MDMgIENzYWJhIE9zenRyb2dvbsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIEZpeCBwaXhlbCB0ZXN0cyBz
dXBwb3J0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
Mjc4MTMKKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RHVtcFJlbmRlclRyZWU6Om9wZW4pOgorICAgICAgICAoV2Vi
Q29yZTo6RHVtcFJlbmRlclRyZWU6OnByb2Nlc3NMaW5lKToKKyAgICAgICAgIC0gSGFzaCBwcm9j
ZXNzaW5nIG1lY2hhbmlzbSBtb3ZlZCBmcm9tIER1bXBSZW5kZXJUcmVlOjpvcGVuIHRvIER1bXBS
ZW5kZXJUcmVlOjpwcm9jZXNzTGluZS4KKyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVl
OjpkdW1wKTogRml4ZWQgYW5kIHJlbmFtZWQgdmFyaWFibGVzLgorCiAyMDEwLTAyLTAyICBLZXZp
biBPbGxpdmllciAgPGtldmlub0B0aGVvbGxpdmllcnMuY29tPgogCiAgICAgICAgIFt3eF0gQnVp
bGQgZml4IGFmdGVyIGludHJvZHVjdGlvbiBvZiBwYWdlTnVtYmVyRm9yRWxlbWVudEJ5SWQuCmRp
ZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0
LmNwcCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3Bw
CmluZGV4IDk5MTZmMjQuLmMxNmE3ODYgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCkBAIC00MTIsMjMgKzQxMiwxMCBAQCB2b2lk
IER1bXBSZW5kZXJUcmVlOjpyZXNldFRvQ29uc2lzdGVudFN0YXRlQmVmb3JlVGVzdGluZygpCiAg
ICAgc2V0bG9jYWxlKExDX0FMTCwgIiIpOwogfQogCi12b2lkIER1bXBSZW5kZXJUcmVlOjpvcGVu
KGNvbnN0IFFVcmwmIGF1cmwpCit2b2lkIER1bXBSZW5kZXJUcmVlOjpvcGVuKGNvbnN0IFFVcmwm
IHVybCkKIHsKICAgICByZXNldFRvQ29uc2lzdGVudFN0YXRlQmVmb3JlVGVzdGluZygpOwogCi0g
ICAgUVVybCB1cmwgPSBhdXJsOwotICAgIG1fZXhwZWN0ZWRIYXNoID0gUVN0cmluZygpOwotICAg
IGlmIChtX2R1bXBQaXhlbHMpIHsKLSAgICAgICAgLy8gc2luZ2xlIHF1b3RlIG1hcmtzIHRoZSBw
aXhlbCBkdW1wIGhhc2gKLSAgICAgICAgUVN0cmluZyBzdHIgPSB1cmwudG9TdHJpbmcoKTsKLSAg
ICAgICAgaW50IGkgPSBzdHIuaW5kZXhPZignXCcnKTsKLSAgICAgICAgaWYgKGkgPiAtMSkgewot
ICAgICAgICAgICAgbV9leHBlY3RlZEhhc2ggPSBzdHIubWlkKGkgKyAxLCBzdHIubGVuZ3RoKCkp
OwotICAgICAgICAgICAgc3RyLnJlbW92ZShpLCBzdHIubGVuZ3RoKCkpOwotICAgICAgICAgICAg
dXJsID0gUVVybChzdHIpOwotICAgICAgICB9Ci0gICAgfQotCiAgICAgLy8gVzNDIFNWRyB0ZXN0
cyBleHBlY3QgdG8gYmUgNDgweDM2MAogICAgIGJvb2wgaXNXM0NUZXN0ID0gdXJsLnRvU3RyaW5n
KCkuY29udGFpbnMoInN2Zy9XM0MtU1ZHLTEuMSIpOwogICAgIGludCB3aWR0aCA9IGlzVzNDVGVz
dCA/IDQ4MCA6IG1heFZpZXdXaWR0aDsKQEAgLTQ3Nyw2ICs0NjQsMTYgQEAgdm9pZCBEdW1wUmVu
ZGVyVHJlZTo6cHJvY2Vzc0xpbmUoY29uc3QgUVN0cmluZyAmaW5wdXQpCiB7CiAgICAgUVN0cmlu
ZyBsaW5lID0gaW5wdXQ7CiAKKyAgICBtX2V4cGVjdGVkSGFzaCA9IFFTdHJpbmcoKTsKKyAgICBp
ZiAobV9kdW1wUGl4ZWxzKSB7CisgICAgICAgIC8vIHNpbmdsZSBxdW90ZSBtYXJrcyB0aGUgcGl4
ZWwgZHVtcCBoYXNoCisgICAgICAgIGludCBpID0gbGluZS5pbmRleE9mKCdcJycpOworICAgICAg
ICBpZiAoaSA+IC0xKSB7CisgICAgICAgICAgICBtX2V4cGVjdGVkSGFzaCA9IGxpbmUubWlkKGkg
KyAxLCBsaW5lLmxlbmd0aCgpKTsKKyAgICAgICAgICAgIGxpbmUucmVtb3ZlKGksIGxpbmUubGVu
Z3RoKCkpOworICAgICAgICB9CisgICAgfQorCiAgICAgaWYgKGxpbmUuc3RhcnRzV2l0aChRTGF0
aW4xU3RyaW5nKCJodHRwOiIpKQogICAgICAgICAgICAgfHwgbGluZS5zdGFydHNXaXRoKFFMYXRp
bjFTdHJpbmcoImh0dHBzOiIpKQogICAgICAgICAgICAgfHwgbGluZS5zdGFydHNXaXRoKFFMYXRp
bjFTdHJpbmcoImZpbGU6IikpKSB7CkBAIC03MjAsMTQgKzcxNywxNiBAQCB2b2lkIER1bXBSZW5k
ZXJUcmVlOjpkdW1wKCkKICAgICAgICAgICAgIHByaW50ZigiQ29udGVudC1UeXBlOiAlc1xuIiwg
ImltYWdlL3BuZyIpOwogICAgICAgICAgICAgcHJpbnRmKCJDb250ZW50LUxlbmd0aDogJWx1XG4i
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZCBsb25nPihkYXRhLmxlbmd0aCgpKSk7CiAKKyAgICAgICAg
ICAgIGNvbnN0IHF1aW50MzIgYnl0ZXNUb1dyaXRlSW5PbmVDaHVuayA9IDEgPDwgMTU7CisgICAg
ICAgICAgICBxdWludDMyIGRhdGFSZW1haW5pbmdUb1dyaXRlID0gZGF0YS5sZW5ndGgoKTsKICAg
ICAgICAgICAgIGNvbnN0IGNoYXIgKnB0ciA9IGRhdGEuZGF0YSgpOwotICAgICAgICAgICAgZm9y
KHF1aW50MzIgbGVmdCA9IGRhdGEubGVuZ3RoKCk7IGxlZnQ7ICkgewotICAgICAgICAgICAgICAg
IHF1aW50MzIgYmxvY2sgPSBxTWluKGxlZnQsIHF1aW50MzIoMSA8PCAxNSkpOwotICAgICAgICAg
ICAgICAgIHF1aW50MzIgd3JpdHRlbiA9IGZ3cml0ZShwdHIsIDEsIGJsb2NrLCBzdGRvdXQpOwot
ICAgICAgICAgICAgICAgIHB0ciArPSB3cml0dGVuOwotICAgICAgICAgICAgICAgIGxlZnQgLT0g
d3JpdHRlbjsKLSAgICAgICAgICAgICAgICBpZiAod3JpdHRlbiA9PSBibG9jaykKKyAgICAgICAg
ICAgIHdoaWxlIChkYXRhUmVtYWluaW5nVG9Xcml0ZSkgeworICAgICAgICAgICAgICAgIHF1aW50
MzIgYnl0ZXNUb1dyaXRlSW5UaGlzQ2h1bmsgPSBxTWluKGRhdGFSZW1haW5pbmdUb1dyaXRlLCBi
eXRlc1RvV3JpdGVJbk9uZUNodW5rKTsKKyAgICAgICAgICAgICAgICBxdWludDMyIGJ5dGVzV3Jp
dHRlbiA9IGZ3cml0ZShwdHIsIDEsIGJ5dGVzVG9Xcml0ZUluVGhpc0NodW5rLCBzdGRvdXQpOwor
ICAgICAgICAgICAgICAgIGlmIChieXRlc1dyaXR0ZW4gIT0gYnl0ZXNUb1dyaXRlSW5UaGlzQ2h1
bmspCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGRhdGFSZW1h
aW5pbmdUb1dyaXRlIC09IGJ5dGVzV3JpdHRlbjsKKyAgICAgICAgICAgICAgICBwdHIgKz0gYnl0
ZXNXcml0dGVuOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAK
</data>
<flag name="review"
          id="30670"
          type_id="1"
          status="+"
          setter="ariya.hidayat"
    />
          </attachment>
      

    </bug>

</bugzilla>