<?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>22186</bug_id>
          
          <creation_ts>2008-11-11 13:54:09 -0800</creation_ts>
          <short_desc>[QT] lacks putImageData support in Canvas</short_desc>
          <delta_ts>2009-03-02 12:32: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>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dirk Schulze">krit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>98339</commentid>
    <comment_count>0</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2008-11-11 13:54:09 -0800</bug_when>
    <thetext>QtWebKit lacks getImageDatat / putImageData support for Canvas.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>98340</commentid>
    <comment_count>1</comment_count>
      <attachid>25053</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2008-11-11 14:02:31 -0800</bug_when>
    <thetext>Created attachment 25053
getImageData support

This adds getImageData-support to Qt. It fails when the alpha is lower than 255. Don&apos;t know if it is a problem of the calculation, this bug: https://bugs.webkit.org/show_bug.cgi?id=20079 or if the alpha-value is allways 255 from translating a QPixmap to a QImage.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108110</commentid>
    <comment_count>2</comment_count>
      <attachid>27277</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-02-03 06:18:58 -0800</bug_when>
    <thetext>Created attachment 27277
getImageData support

add getImageData support for qt.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108144</commentid>
    <comment_count>3</comment_count>
      <attachid>27284</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-02-03 12:56:05 -0800</bug_when>
    <thetext>Created attachment 27284
getImageData support

use qt to convert to QImage::Format_ARGB32 instead of premultiplied colors. Added a check, if the default qimage format (premultiplied colors) changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108146</commentid>
    <comment_count>4</comment_count>
      <attachid>27284</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2009-02-03 13:04:10 -0800</bug_when>
    <thetext>Comment on attachment 27284
getImageData support

r=oliver+sam</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108151</commentid>
    <comment_count>5</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-02-03 13:28:58 -0800</bug_when>
    <thetext>landed getImageData support in r40546.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108197</commentid>
    <comment_count>6</comment_count>
      <attachid>27295</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-02-03 15:48:59 -0800</bug_when>
    <thetext>Created attachment 27295
follow up of getImageData

follow up of the getImageData patch above. To call toImage once speeds up getImageData.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108249</commentid>
    <comment_count>7</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-02-04 01:11:29 -0800</bug_when>
    <thetext>landed follow up in r40559</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>109511</commentid>
    <comment_count>8</comment_count>
    <who name="Pam Greene (IRC:pamg)">pam</who>
    <bug_when>2009-02-12 10:59:51 -0800</bug_when>
    <thetext>Bug gardening: landed, so fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>109524</commentid>
    <comment_count>9</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-02-12 11:41:54 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; Bug gardening: landed, so fixed.
No. Just getImageData was landed. putImageData is missing. I&apos;ll upload a patch soon and rename the summary</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>111677</commentid>
    <comment_count>10</comment_count>
      <attachid>28135</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-03-01 00:42:14 -0800</bug_when>
    <thetext>Created attachment 28135
putImageData support for Qt

putImageData support. I&apos;m not sure if I have to premultiply the Image before I copy the image to the pixmap. I do it for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>111810</commentid>
    <comment_count>11</comment_count>
      <attachid>28167</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-03-02 04:37:59 -0800</bug_when>
    <thetext>Created attachment 28167
putImageData support for Qt

make putImageData a bit faster.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>111811</commentid>
    <comment_count>12</comment_count>
      <attachid>28168</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-03-02 05:56:46 -0800</bug_when>
    <thetext>Created attachment 28168
putImageData support for Qt

more speed-up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>111813</commentid>
    <comment_count>13</comment_count>
      <attachid>28168</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-03-02 06:09:42 -0800</bug_when>
    <thetext>Comment on attachment 28168
putImageData support for Qt

&gt; + [QT] lacks putImageData support in Canvas

Qt please.


&gt; +    unsigned char* srcRows = source-&gt;data()-&gt;data()-&gt;data() + originy * srcBytesPerRow + originx * 4;
&gt; +    for (int y = 0; y &lt; numRows; ++y) {
&gt; +        quint32* scanLine = reinterpret_cast&lt;quint32*&gt;(image.scanLine(y + desty));
&gt; +        for (int x = 0; x &lt; numColumns; x++) {
&gt; +            int basex = x * 4;
&gt; +
&gt; +            scanLine[x + destx] = reinterpret_cast&lt;quint32*&gt;(srcRows + basex)[0];
&gt; +        }
&gt; +        srcRows += srcBytesPerRow;
&gt; +    }
&gt; +    m_data.m_pixmap = QPixmap::fromImage(image);

weird spacing here... extra line in the for/for... but not at the end of the loops..


&gt; +    if (isPainting)
&gt; +        m_data.m_painter-&gt;begin(&amp;m_data.m_pixmap);
&gt;  }

and the naming is really weird here..:
   endy,endx vs. endY, endX
   srcRows vs. srcRow.. but all this is coming from the CG variant so I will put it back my complains... just change the spacing and QT... thanks for removing the last notImplemented from there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>111873</commentid>
    <comment_count>14</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-03-02 12:32:23 -0800</bug_when>
    <thetext>landed in 41355.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25053</attachid>
            <date>2008-11-11 14:02:31 -0800</date>
            <delta_ts>2009-02-03 06:18:58 -0800</delta_ts>
            <desc>getImageData support</desc>
            <filename>qt.patch</filename>
            <type>text/plain</type>
            <size>2894</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzODMxNCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTIgQEAKKzIwMDgtMTEtMTEgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBnZXRJ
bWFnZURhdGEoKSBzdXBwb3J0IGZvciBRdFdlYktpdC4KKworICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL3F0L0ltYWdlQnVmZmVyUXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VCdWZm
ZXI6OmdldEltYWdlRGF0YSk6CisKIDIwMDgtMTEtMTEgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBw
bGUuY29tPgogCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjE4MgpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZUJ1ZmZlclF0
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlQnVm
ZmVyUXQuY3BwCShyZXZpc2lvbiAzODI3NSkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
cXQvSW1hZ2VCdWZmZXJRdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM1LDYgKzM1LDggQEAKICNp
bmNsdWRlICJTdGlsbEltYWdlUXQuaCIKIAogI2luY2x1ZGUgPFFCdWZmZXI+CisjaW5jbHVkZSA8
UUNvbG9yPgorI2luY2x1ZGUgPFFJbWFnZT4KICNpbmNsdWRlIDxRSW1hZ2VXcml0ZXI+CiAjaW5j
bHVkZSA8UVBhaW50ZXI+CiAjaW5jbHVkZSA8UVBpeG1hcD4KQEAgLTc5LDEwICs4MSw1NCBAQCBJ
bWFnZSogSW1hZ2VCdWZmZXI6OmltYWdlKCkgY29uc3QKICAgICByZXR1cm4gbV9pbWFnZS5nZXQo
KTsKIH0KIAotUGFzc1JlZlB0cjxJbWFnZURhdGE+IEltYWdlQnVmZmVyOjpnZXRJbWFnZURhdGEo
Y29uc3QgSW50UmVjdCYpIGNvbnN0CitQYXNzUmVmUHRyPEltYWdlRGF0YT4gSW1hZ2VCdWZmZXI6
OmdldEltYWdlRGF0YShjb25zdCBJbnRSZWN0JiByZWN0KSBjb25zdAogewotICAgIG5vdEltcGxl
bWVudGVkKCk7Ci0gICAgcmV0dXJuIDA7CisgICAgUGFzc1JlZlB0cjxJbWFnZURhdGE+IHJlc3Vs
dCA9IEltYWdlRGF0YTo6Y3JlYXRlKHJlY3Qud2lkdGgoKSwgcmVjdC5oZWlnaHQoKSk7CisgICAg
dW5zaWduZWQgY2hhciogZGF0YSA9IHJlc3VsdC0+ZGF0YSgpLT5kYXRhKCkuZGF0YSgpOworCisg
ICAgaWYgKHJlY3QueCgpIDwgMCB8fCByZWN0LnkoKSA8IDAgfHwgKHJlY3QueCgpICsgcmVjdC53
aWR0aCgpKSA+IG1fc2l6ZS53aWR0aCgpIHx8IChyZWN0LnkoKSArIHJlY3QuaGVpZ2h0KCkpID4g
bV9zaXplLmhlaWdodCgpKQorICAgICAgICBtZW1zZXQoZGF0YSwgMCwgcmVzdWx0LT5kYXRhKCkt
Pmxlbmd0aCgpKTsKKworICAgIGludCBvcmlnaW54ID0gcmVjdC54KCk7CisgICAgaW50IGRlc3R4
ID0gMDsKKyAgICBpZiAob3JpZ2lueCA8IDApIHsKKyAgICAgICAgZGVzdHggPSAtb3JpZ2lueDsK
KyAgICAgICAgb3JpZ2lueCA9IDA7CisgICAgfQorICAgIGludCBlbmR4ID0gcmVjdC54KCkgKyBy
ZWN0LndpZHRoKCk7CisgICAgaWYgKGVuZHggPiBtX3NpemUud2lkdGgoKSkKKyAgICAgICAgZW5k
eCA9IG1fc2l6ZS53aWR0aCgpOworICAgIGludCBudW1Db2x1bW5zID0gZW5keCAtIG9yaWdpbng7
CisKKyAgICBpbnQgb3JpZ2lueSA9IHJlY3QueSgpOworICAgIGludCBkZXN0eSA9IDA7CisgICAg
aWYgKG9yaWdpbnkgPCAwKSB7CisgICAgICAgIGRlc3R5ID0gLW9yaWdpbnk7CisgICAgICAgIG9y
aWdpbnkgPSAwOworICAgIH0KKyAgICBpbnQgZW5keSA9IHJlY3QueSgpICsgcmVjdC5oZWlnaHQo
KTsKKyAgICBpZiAoZW5keSA+IG1fc2l6ZS5oZWlnaHQoKSkKKyAgICAgICAgZW5keSA9IG1fc2l6
ZS5oZWlnaHQoKTsKKyAgICBpbnQgbnVtUm93cyA9IGVuZHkgLSBvcmlnaW55OworCisgICAgUUlt
YWdlIGltYWdlID0gbV9kYXRhLm1fcGl4bWFwLnRvSW1hZ2UoKTsKKworICAgIHVuc2lnbmVkIGRl
c3RCeXRlc1BlclJvdyA9IDQgKiByZWN0LndpZHRoKCk7CisgICAgdW5zaWduZWQgY2hhciogZGVz
dFJvd3MgPSBkYXRhICsgZGVzdHkgKiBkZXN0Qnl0ZXNQZXJSb3cgKyBkZXN0eCAqIDQ7CisgICAg
Zm9yIChpbnQgeSA9IDA7IHkgPCBudW1Sb3dzOyArK3kpIHsKKyAgICAgICAgZm9yIChpbnQgeCA9
IDA7IHggPCBudW1Db2x1bW5zOyB4KyspIHsKKyAgICAgICAgICAgIFFSZ2IgdmFsdWUgPSBpbWFn
ZS5waXhlbCh4ICsgb3JpZ2lueCwgeSArIG9yaWdpbnkpOworICAgICAgICAgICAgaW50IGJhc2V4
ID0geCAqIDQ7CisgICAgICAgICAgICBpbnQgYWxwaGEgPSBxQWxwaGEodmFsdWUpOworICAgICAg
ICAgICAgZGVzdFJvd3NbYmFzZXhdID0gKHFSZWQodmFsdWUpICogMjU1KSAvIGFscGhhOworICAg
ICAgICAgICAgZGVzdFJvd3NbYmFzZXggKyAxXSA9IChxR3JlZW4odmFsdWUpICogMjU1KSAvIGFs
cGhhOworICAgICAgICAgICAgZGVzdFJvd3NbYmFzZXggKyAyXSA9IChxQmx1ZSh2YWx1ZSkgKiAy
NTUpIC8gYWxwaGE7CisgICAgICAgICAgICBkZXN0Um93c1tiYXNleCArIDNdID0gYWxwaGE7Cisg
ICAgICAgIH0KKyAgICAgICAgZGVzdFJvd3MgKz0gZGVzdEJ5dGVzUGVyUm93OworICAgIH0KKwor
ICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIHZvaWQgSW1hZ2VCdWZmZXI6OnB1dEltYWdlRGF0YShJ
bWFnZURhdGEqLCBjb25zdCBJbnRSZWN0JiwgY29uc3QgSW50UG9pbnQmKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>27277</attachid>
            <date>2009-02-03 06:18:58 -0800</date>
            <delta_ts>2009-02-03 12:56:05 -0800</delta_ts>
            <desc>getImageData support</desc>
            <filename>qt-getImageData.patch</filename>
            <type>text/plain</type>
            <size>3299</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0MDUzNCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMDktMDItMDMgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRl
ZCBnZXRJbWFnZURhdGEoKSBzdXBwb3J0IGZvciBRdFdlYktpdC4KKworICAgICAgICBbUVRdIGxh
Y2tzIGdldEltYWdlRGF0YSAvIHB1dEltYWdlRGF0YSBzdXBwb3J0IGluIENhbnZhcworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxODYKKworICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlQnVmZmVyUXQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SW1hZ2VCdWZmZXI6OmdldEltYWdlRGF0YSk6CisKIDIwMDktMDItMDMgIERtaXRyeSBU
aXRvdiAgPGRpbWljaEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5
IFByb3NrdXJ5YWtvdi4KSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VC
dWZmZXJRdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9J
bWFnZUJ1ZmZlclF0LmNwcAkocmV2aXNpb24gNDA1MjkpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL3F0L0ltYWdlQnVmZmVyUXQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw2ICszNSw4
IEBACiAjaW5jbHVkZSAiU3RpbGxJbWFnZVF0LmgiCiAKICNpbmNsdWRlIDxRQnVmZmVyPgorI2lu
Y2x1ZGUgPFFDb2xvcj4KKyNpbmNsdWRlIDxRSW1hZ2U+CiAjaW5jbHVkZSA8UUltYWdlV3JpdGVy
PgogI2luY2x1ZGUgPFFQYWludGVyPgogI2luY2x1ZGUgPFFQaXhtYXA+CkBAIC03OSwxMCArODEs
NjEgQEAgSW1hZ2UqIEltYWdlQnVmZmVyOjppbWFnZSgpIGNvbnN0CiAgICAgcmV0dXJuIG1faW1h
Z2UuZ2V0KCk7CiB9CiAKLVBhc3NSZWZQdHI8SW1hZ2VEYXRhPiBJbWFnZUJ1ZmZlcjo6Z2V0SW1h
Z2VEYXRhKGNvbnN0IEludFJlY3QmKSBjb25zdAorUGFzc1JlZlB0cjxJbWFnZURhdGE+IEltYWdl
QnVmZmVyOjpnZXRJbWFnZURhdGEoY29uc3QgSW50UmVjdCYgcmVjdCkgY29uc3QKIHsKLSAgICBu
b3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVybiAwOworICAgIFBhc3NSZWZQdHI8SW1hZ2VEYXRh
PiByZXN1bHQgPSBJbWFnZURhdGE6OmNyZWF0ZShyZWN0LndpZHRoKCksIHJlY3QuaGVpZ2h0KCkp
OworICAgIHVuc2lnbmVkIGNoYXIqIGRhdGEgPSByZXN1bHQtPmRhdGEoKS0+ZGF0YSgpLT5kYXRh
KCk7CisKKyAgICBpZiAocmVjdC54KCkgPCAwIHx8IHJlY3QueSgpIDwgMCB8fCAocmVjdC54KCkg
KyByZWN0LndpZHRoKCkpID4gbV9zaXplLndpZHRoKCkgfHwgKHJlY3QueSgpICsgcmVjdC5oZWln
aHQoKSkgPiBtX3NpemUuaGVpZ2h0KCkpCisgICAgICAgIG1lbXNldChkYXRhLCAwLCByZXN1bHQt
PmRhdGEoKS0+bGVuZ3RoKCkpOworCisgICAgaW50IG9yaWdpbnggPSByZWN0LngoKTsKKyAgICBp
bnQgZGVzdHggPSAwOworICAgIGlmIChvcmlnaW54IDwgMCkgeworICAgICAgICBkZXN0eCA9IC1v
cmlnaW54OworICAgICAgICBvcmlnaW54ID0gMDsKKyAgICB9CisgICAgaW50IGVuZHggPSByZWN0
LngoKSArIHJlY3Qud2lkdGgoKTsKKyAgICBpZiAoZW5keCA+IG1fc2l6ZS53aWR0aCgpKQorICAg
ICAgICBlbmR4ID0gbV9zaXplLndpZHRoKCk7CisgICAgaW50IG51bUNvbHVtbnMgPSBlbmR4IC0g
b3JpZ2lueDsKKworICAgIGludCBvcmlnaW55ID0gcmVjdC55KCk7CisgICAgaW50IGRlc3R5ID0g
MDsKKyAgICBpZiAob3JpZ2lueSA8IDApIHsKKyAgICAgICAgZGVzdHkgPSAtb3JpZ2lueTsKKyAg
ICAgICAgb3JpZ2lueSA9IDA7CisgICAgfQorICAgIGludCBlbmR5ID0gcmVjdC55KCkgKyByZWN0
LmhlaWdodCgpOworICAgIGlmIChlbmR5ID4gbV9zaXplLmhlaWdodCgpKQorICAgICAgICBlbmR5
ID0gbV9zaXplLmhlaWdodCgpOworICAgIGludCBudW1Sb3dzID0gZW5keSAtIG9yaWdpbnk7CisK
KyAgICBRSW1hZ2UgaW1hZ2UgPSBtX2RhdGEubV9waXhtYXAudG9JbWFnZSgpOworICAgIEFTU0VS
VChpbWFnZSk7CisKKyAgICB1bnNpZ25lZCBkZXN0Qnl0ZXNQZXJSb3cgPSA0ICogcmVjdC53aWR0
aCgpOworICAgIHVuc2lnbmVkIGNoYXIqIGRlc3RSb3dzID0gZGF0YSArIGRlc3R5ICogZGVzdEJ5
dGVzUGVyUm93ICsgZGVzdHggKiA0OworICAgIGZvciAoaW50IHkgPSAwOyB5IDwgbnVtUm93czsg
Kyt5KSB7CisgICAgICAgIGZvciAoaW50IHggPSAwOyB4IDwgbnVtQ29sdW1uczsgeCsrKSB7Cisg
ICAgICAgICAgICBRUmdiIHZhbHVlID0gaW1hZ2UucGl4ZWwoeCArIG9yaWdpbngsIHkgKyBvcmln
aW55KTsKKyAgICAgICAgICAgIGludCBiYXNleCA9IHggKiA0OworICAgICAgICAgICAgaWYgKHVu
c2lnbmVkIGludCBhbHBoYSA9IHFBbHBoYSh2YWx1ZSkpIHsKKyAgICAgICAgICAgICAgICBkZXN0
Um93c1tiYXNleF0gPSBxUmVkKHZhbHVlKSAqIDI1NSAvIGFscGhhOworICAgICAgICAgICAgICAg
IGRlc3RSb3dzW2Jhc2V4ICsgMV0gPSBxR3JlZW4odmFsdWUpICogMjU1IC8gYWxwaGE7CisgICAg
ICAgICAgICAgICAgZGVzdFJvd3NbYmFzZXggKyAyXSA9IHFCbHVlKHZhbHVlKSAqIDI1NSAvIGFs
cGhhOworICAgICAgICAgICAgICAgIGRlc3RSb3dzW2Jhc2V4ICsgM10gPSBhbHBoYTsKKyAgICAg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgZGVzdFJvd3NbYmFzZXhdID0gcVJlZCh2
YWx1ZSk7CisgICAgICAgICAgICAgICAgZGVzdFJvd3NbYmFzZXggKyAxXSA9IHFHcmVlbih2YWx1
ZSk7CisgICAgICAgICAgICAgICAgZGVzdFJvd3NbYmFzZXggKyAyXSA9IHFCbHVlKHZhbHVlKTsK
KyAgICAgICAgICAgICAgICBkZXN0Um93c1tiYXNleCArIDNdID0gYWxwaGE7CisgICAgICAgICAg
ICB9CisgICAgICAgIH0KKyAgICAgICAgZGVzdFJvd3MgKz0gZGVzdEJ5dGVzUGVyUm93OworICAg
IH0KKworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIHZvaWQgSW1hZ2VCdWZmZXI6OnB1dEltYWdl
RGF0YShJbWFnZURhdGEqLCBjb25zdCBJbnRSZWN0JiwgY29uc3QgSW50UG9pbnQmKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>27284</attachid>
            <date>2009-02-03 12:56:05 -0800</date>
            <delta_ts>2009-02-03 13:04:10 -0800</delta_ts>
            <desc>getImageData support</desc>
            <filename>qt-getImageData.patch</filename>
            <type>text/plain</type>
            <size>3130</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0MDU0MykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMDktMDItMDMgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRl
ZCBnZXRJbWFnZURhdGEoKSBzdXBwb3J0IGZvciBRdFdlYktpdC4KKworICAgICAgICBbUVRdIGxh
Y2tzIGdldEltYWdlRGF0YSAvIHB1dEltYWdlRGF0YSBzdXBwb3J0IGluIENhbnZhcworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxODYKKworICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlQnVmZmVyUXQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SW1hZ2VCdWZmZXI6OmdldEltYWdlRGF0YSk6CisKIDIwMDktMDItMDMgIFNpbW9uIEZy
YXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGF2
ZSBIeWF0dApJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZUJ1ZmZlclF0
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlQnVm
ZmVyUXQuY3BwCShyZXZpc2lvbiA0MDU0MykKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
cXQvSW1hZ2VCdWZmZXJRdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM1LDYgKzM1LDggQEAKICNp
bmNsdWRlICJTdGlsbEltYWdlUXQuaCIKIAogI2luY2x1ZGUgPFFCdWZmZXI+CisjaW5jbHVkZSA8
UUNvbG9yPgorI2luY2x1ZGUgPFFJbWFnZT4KICNpbmNsdWRlIDxRSW1hZ2VXcml0ZXI+CiAjaW5j
bHVkZSA8UVBhaW50ZXI+CiAjaW5jbHVkZSA8UVBpeG1hcD4KQEAgLTc5LDEwICs4MSw1OSBAQCBJ
bWFnZSogSW1hZ2VCdWZmZXI6OmltYWdlKCkgY29uc3QKICAgICByZXR1cm4gbV9pbWFnZS5nZXQo
KTsKIH0KIAotUGFzc1JlZlB0cjxJbWFnZURhdGE+IEltYWdlQnVmZmVyOjpnZXRJbWFnZURhdGEo
Y29uc3QgSW50UmVjdCYpIGNvbnN0CitQYXNzUmVmUHRyPEltYWdlRGF0YT4gSW1hZ2VCdWZmZXI6
OmdldEltYWdlRGF0YShjb25zdCBJbnRSZWN0JiByZWN0KSBjb25zdAogewotICAgIG5vdEltcGxl
bWVudGVkKCk7Ci0gICAgcmV0dXJuIDA7CisgICAgUGFzc1JlZlB0cjxJbWFnZURhdGE+IHJlc3Vs
dCA9IEltYWdlRGF0YTo6Y3JlYXRlKHJlY3Qud2lkdGgoKSwgcmVjdC5oZWlnaHQoKSk7CisgICAg
dW5zaWduZWQgY2hhciogZGF0YSA9IHJlc3VsdC0+ZGF0YSgpLT5kYXRhKCktPmRhdGEoKTsKKwor
ICAgIGlmIChyZWN0LngoKSA8IDAgfHwgcmVjdC55KCkgPCAwIHx8IChyZWN0LngoKSArIHJlY3Qu
d2lkdGgoKSkgPiBtX3NpemUud2lkdGgoKSB8fCAocmVjdC55KCkgKyByZWN0LmhlaWdodCgpKSA+
IG1fc2l6ZS5oZWlnaHQoKSkKKyAgICAgICAgbWVtc2V0KGRhdGEsIDAsIHJlc3VsdC0+ZGF0YSgp
LT5sZW5ndGgoKSk7CisKKyAgICBpbnQgb3JpZ2lueCA9IHJlY3QueCgpOworICAgIGludCBkZXN0
eCA9IDA7CisgICAgaWYgKG9yaWdpbnggPCAwKSB7CisgICAgICAgIGRlc3R4ID0gLW9yaWdpbng7
CisgICAgICAgIG9yaWdpbnggPSAwOworICAgIH0KKyAgICBpbnQgZW5keCA9IHJlY3QueCgpICsg
cmVjdC53aWR0aCgpOworICAgIGlmIChlbmR4ID4gbV9zaXplLndpZHRoKCkpCisgICAgICAgIGVu
ZHggPSBtX3NpemUud2lkdGgoKTsKKyAgICBpbnQgbnVtQ29sdW1ucyA9IGVuZHggLSBvcmlnaW54
OworCisgICAgaW50IG9yaWdpbnkgPSByZWN0LnkoKTsKKyAgICBpbnQgZGVzdHkgPSAwOworICAg
IGlmIChvcmlnaW55IDwgMCkgeworICAgICAgICBkZXN0eSA9IC1vcmlnaW55OworICAgICAgICBv
cmlnaW55ID0gMDsKKyAgICB9CisgICAgaW50IGVuZHkgPSByZWN0LnkoKSArIHJlY3QuaGVpZ2h0
KCk7CisgICAgaWYgKGVuZHkgPiBtX3NpemUuaGVpZ2h0KCkpCisgICAgICAgIGVuZHkgPSBtX3Np
emUuaGVpZ2h0KCk7CisgICAgaW50IG51bVJvd3MgPSBlbmR5IC0gb3JpZ2lueTsKKworICAgIFFJ
bWFnZSBpbWFnZTsKKyAgICBpZiAobV9kYXRhLm1fcGl4bWFwLnRvSW1hZ2UoKS5mb3JtYXQoKSAh
PSBRSW1hZ2U6OkZvcm1hdF9BUkdCMzIpCisgICAgICAgIGltYWdlID0gbV9kYXRhLm1fcGl4bWFw
LnRvSW1hZ2UoKS5jb252ZXJ0VG9Gb3JtYXQoUUltYWdlOjpGb3JtYXRfQVJHQjMyKTsKKyAgICBl
bHNlCisgICAgICAgIGltYWdlID0gbV9kYXRhLm1fcGl4bWFwLnRvSW1hZ2UoKTsKKyAgICBBU1NF
UlQoaW1hZ2UpOworCisgICAgdW5zaWduZWQgZGVzdEJ5dGVzUGVyUm93ID0gNCAqIHJlY3Qud2lk
dGgoKTsKKyAgICB1bnNpZ25lZCBjaGFyKiBkZXN0Um93cyA9IGRhdGEgKyBkZXN0eSAqIGRlc3RC
eXRlc1BlclJvdyArIGRlc3R4ICogNDsKKyAgICBmb3IgKGludCB5ID0gMDsgeSA8IG51bVJvd3M7
ICsreSkgeworICAgICAgICBmb3IgKGludCB4ID0gMDsgeCA8IG51bUNvbHVtbnM7IHgrKykgewor
ICAgICAgICAgICAgUVJnYiB2YWx1ZSA9IGltYWdlLnBpeGVsKHggKyBvcmlnaW54LCB5ICsgb3Jp
Z2lueSk7CisgICAgICAgICAgICBpbnQgYmFzZXggPSB4ICogNDsKKworICAgICAgICAgICAgZGVz
dFJvd3NbYmFzZXhdID0gcVJlZCh2YWx1ZSk7CisgICAgICAgICAgICBkZXN0Um93c1tiYXNleCAr
IDFdID0gcUdyZWVuKHZhbHVlKTsKKyAgICAgICAgICAgIGRlc3RSb3dzW2Jhc2V4ICsgMl0gPSBx
Qmx1ZSh2YWx1ZSk7CisgICAgICAgICAgICBkZXN0Um93c1tiYXNleCArIDNdID0gcUFscGhhKHZh
bHVlKTsKKyAgICAgICAgfQorICAgICAgICBkZXN0Um93cyArPSBkZXN0Qnl0ZXNQZXJSb3c7Cisg
ICAgfQorCisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogdm9pZCBJbWFnZUJ1ZmZlcjo6cHV0SW1h
Z2VEYXRhKEltYWdlRGF0YSosIGNvbnN0IEludFJlY3QmLCBjb25zdCBJbnRQb2ludCYpCg==
</data>
<flag name="review"
          id="13154"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>27295</attachid>
            <date>2009-02-03 15:48:59 -0800</date>
            <delta_ts>2009-02-03 16:33:30 -0800</delta_ts>
            <desc>follow up of getImageData</desc>
            <filename>qt-getImageData.patch</filename>
            <type>text/plain</type>
            <size>1523</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0MDU0NykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTIgQEAKKzIwMDktMDItMDMgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlz
IGlzIGEgZm9sbG93IHVwIG9mIHI0MDU0Ni4gQ2FsbCB0b0ltYWdlKCkgb25jZSBzcGVlZHMgdXAg
SW1hZ2VCdWZmZXI6OmdldEltYWdlRGF0YSgpCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9xdC9JbWFnZUJ1ZmZlclF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlQnVmZmVyOjpn
ZXRJbWFnZURhdGEpOgorCiAyMDA5LTAyLTAzICBEYXZpZCBIeWF0dCAgPGh5YXR0QGFwcGxlLmNv
bT4KIAogICAgICAgICBSZW5hbWUgYWRkTGluZUJveFJlY3RzIHRvIGFic29sdXRlUmVjdHNGb3JS
YW5nZSwgYW5kIGRvIHRoZSBzYW1lIHRoaW5nIGZvciB0aGUgY29ycmVzcG9uZGluZyBxdWFkcyBt
ZXRob2RzLiAgTW92ZSB0aGUgUmVuZGVyQ29udGFpbmVyIGltcGxlbWVudGF0aW9ucwpJbmRleDog
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZUJ1ZmZlclF0LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlQnVmZmVyUXQuY3BwCShyZXZp
c2lvbiA0MDU0NikKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VCdWZmZXJR
dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExMSwxMSArMTExLDkgQEAgUGFzc1JlZlB0cjxJbWFn
ZURhdGE+IEltYWdlQnVmZmVyOjpnZXRJbQogICAgICAgICBlbmR5ID0gbV9zaXplLmhlaWdodCgp
OwogICAgIGludCBudW1Sb3dzID0gZW5keSAtIG9yaWdpbnk7CiAKLSAgICBRSW1hZ2UgaW1hZ2U7
Ci0gICAgaWYgKG1fZGF0YS5tX3BpeG1hcC50b0ltYWdlKCkuZm9ybWF0KCkgIT0gUUltYWdlOjpG
b3JtYXRfQVJHQjMyKQotICAgICAgICBpbWFnZSA9IG1fZGF0YS5tX3BpeG1hcC50b0ltYWdlKCku
Y29udmVydFRvRm9ybWF0KFFJbWFnZTo6Rm9ybWF0X0FSR0IzMik7Ci0gICAgZWxzZQotICAgICAg
ICBpbWFnZSA9IG1fZGF0YS5tX3BpeG1hcC50b0ltYWdlKCk7CisgICAgUUltYWdlIGltYWdlID0g
bV9kYXRhLm1fcGl4bWFwLnRvSW1hZ2UoKTsKKyAgICBpZiAoaW1hZ2UuZm9ybWF0KCkgIT0gUUlt
YWdlOjpGb3JtYXRfQVJHQjMyKQorICAgICAgICBpbWFnZSA9IGltYWdlLmNvbnZlcnRUb0Zvcm1h
dChRSW1hZ2U6OkZvcm1hdF9BUkdCMzIpOwogICAgIEFTU0VSVChpbWFnZSk7CiAKICAgICB1bnNp
Z25lZCBkZXN0Qnl0ZXNQZXJSb3cgPSA0ICogcmVjdC53aWR0aCgpOwo=
</data>
<flag name="review"
          id="13165"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>28135</attachid>
            <date>2009-03-01 00:42:14 -0800</date>
            <delta_ts>2009-03-02 04:37:59 -0800</delta_ts>
            <desc>putImageData support for Qt</desc>
            <filename>qt-putImageData.patch</filename>
            <type>text/plain</type>
            <size>3583</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0MTMyNikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMDktMDMtMDEgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRl
ZCBwdXRJbWFnZURhdGEgdG8gUXQuCisKKyAgICAgICAgW1FUXSBsYWNrcyBwdXRJbWFnZURhdGEg
c3VwcG9ydCBpbiBDYW52YXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIyMTg2CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZUJ1
ZmZlclF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlQnVmZmVyOjpwdXRJbWFnZURhdGEp
OgorCiAyMDA5LTAyLTI4ICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gRmlzaGVyLgpJbmRleDogV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9xdC9JbWFnZUJ1ZmZlclF0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlQnVmZmVyUXQuY3BwCShyZXZpc2lvbiA0MTI5MykK
KysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VCdWZmZXJRdC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTEsNiArMSw3IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDA2IE5pa29s
YXMgWmltbWVybWFubiA8emltbWVybWFubkBrZGUub3JnPgogICogQ29weXJpZ2h0IChDKSAyMDA4
IEhvbGdlciBIYW5zIFBldGVyIEZyZXl0aGVyCisgKiBDb3B5cmlnaHQgKEMpIDIwMDkgRGlyayBT
Y2h1bHplIDxrcml0QHdlYmtpdC5vcmc+CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
QEAgLTMxLDcgKzMyLDYgQEAKICNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQuaCIKICNpbmNsdWRl
ICJJbWFnZURhdGEuaCIKICNpbmNsdWRlICJNSU1FVHlwZVJlZ2lzdHJ5LmgiCi0jaW5jbHVkZSAi
Tm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJTdGlsbEltYWdlUXQuaCIKIAogI2luY2x1ZGUg
PFFCdWZmZXI+CkBAIC0xMzQsOSArMTM0LDYzIEBAIFBhc3NSZWZQdHI8SW1hZ2VEYXRhPiBJbWFn
ZUJ1ZmZlcjo6Z2V0SW0KICAgICByZXR1cm4gcmVzdWx0OwogfQogCi12b2lkIEltYWdlQnVmZmVy
OjpwdXRJbWFnZURhdGEoSW1hZ2VEYXRhKiwgY29uc3QgSW50UmVjdCYsIGNvbnN0IEludFBvaW50
JikKK3ZvaWQgSW1hZ2VCdWZmZXI6OnB1dEltYWdlRGF0YShJbWFnZURhdGEqIHNvdXJjZSwgY29u
c3QgSW50UmVjdCYgc291cmNlUmVjdCwgY29uc3QgSW50UG9pbnQmIGRlc3RQb2ludCkKIHsKLSAg
ICBub3RJbXBsZW1lbnRlZCgpOworICAgIEFTU0VSVChzb3VyY2VSZWN0LndpZHRoKCkgPiAwKTsK
KyAgICBBU1NFUlQoc291cmNlUmVjdC5oZWlnaHQoKSA+IDApOworCisgICAgaW50IG9yaWdpbngg
PSBzb3VyY2VSZWN0LngoKTsKKyAgICBpbnQgZGVzdHggPSBkZXN0UG9pbnQueCgpICsgc291cmNl
UmVjdC54KCk7CisgICAgQVNTRVJUKGRlc3R4ID49IDApOworICAgIEFTU0VSVChkZXN0eCA8IG1f
c2l6ZS53aWR0aCgpKTsKKyAgICBBU1NFUlQob3JpZ2lueCA+PSAwKTsKKyAgICBBU1NFUlQob3Jp
Z2lueCA8PSBzb3VyY2VSZWN0LnJpZ2h0KCkpOworCisgICAgaW50IGVuZHggPSBkZXN0UG9pbnQu
eCgpICsgc291cmNlUmVjdC5yaWdodCgpOworICAgIEFTU0VSVChlbmR4IDw9IG1fc2l6ZS53aWR0
aCgpKTsKKworICAgIGludCBudW1Db2x1bW5zID0gZW5keCAtIGRlc3R4OworCisgICAgaW50IG9y
aWdpbnkgPSBzb3VyY2VSZWN0LnkoKTsKKyAgICBpbnQgZGVzdHkgPSBkZXN0UG9pbnQueSgpICsg
c291cmNlUmVjdC55KCk7CisgICAgQVNTRVJUKGRlc3R5ID49IDApOworICAgIEFTU0VSVChkZXN0
eSA8IG1fc2l6ZS5oZWlnaHQoKSk7CisgICAgQVNTRVJUKG9yaWdpbnkgPj0gMCk7CisgICAgQVNT
RVJUKG9yaWdpbnkgPD0gc291cmNlUmVjdC5ib3R0b20oKSk7CisKKyAgICBpbnQgZW5keSA9IGRl
c3RQb2ludC55KCkgKyBzb3VyY2VSZWN0LmJvdHRvbSgpOworICAgIEFTU0VSVChlbmR5IDw9IG1f
c2l6ZS5oZWlnaHQoKSk7CisgICAgaW50IG51bVJvd3MgPSBlbmR5IC0gZGVzdHk7CisKKyAgICB1
bnNpZ25lZCBzcmNCeXRlc1BlclJvdyA9IDQgKiBzb3VyY2UtPndpZHRoKCk7CisKKyAgICBib29s
IGlzUGFpbnRpbmcgPSBtX2RhdGEubV9wYWludGVyLT5pc0FjdGl2ZSgpOworICAgIGlmIChpc1Bh
aW50aW5nKQorICAgICAgICBtX2RhdGEubV9wYWludGVyLT5lbmQoKTsKKyAgICBRSW1hZ2UgaW1h
Z2UgPSBtX2RhdGEubV9waXhtYXAudG9JbWFnZSgpOworICAgIGlmIChpbWFnZS5mb3JtYXQoKSAh
PSBRSW1hZ2U6OkZvcm1hdF9BUkdCMzIpCisgICAgICAgIGltYWdlID0gaW1hZ2UuY29udmVydFRv
Rm9ybWF0KFFJbWFnZTo6Rm9ybWF0X0FSR0IzMik7CisgICAgQVNTRVJUKGltYWdlKTsKKworICAg
IHVuc2lnbmVkIGNoYXIqIHNyY1Jvd3MgPSBzb3VyY2UtPmRhdGEoKS0+ZGF0YSgpLT5kYXRhKCkg
KyBvcmlnaW55ICogc3JjQnl0ZXNQZXJSb3cgKyBvcmlnaW54ICogNDsKKyAgICBmb3IgKGludCB5
ID0gMDsgeSA8IG51bVJvd3M7ICsreSkgeworICAgICAgICBmb3IgKGludCB4ID0gMDsgeCA8IG51
bUNvbHVtbnM7IHgrKykgeworICAgICAgICAgICAgaW50IGJhc2V4ID0geCAqIDQ7CisgICAgICAg
ICAgICBRUmdiIHZhbHVlID0gcVJnYmEoCisgICAgICAgICAgICAgICAgc3JjUm93c1tiYXNleF0s
CisgICAgICAgICAgICAgICAgc3JjUm93c1tiYXNleCArIDFdLAorICAgICAgICAgICAgICAgIHNy
Y1Jvd3NbYmFzZXggKyAyXSwKKyAgICAgICAgICAgICAgICBzcmNSb3dzW2Jhc2V4ICsgM10pOwor
CisgICAgICAgICAgICBpbWFnZS5zZXRQaXhlbCh4ICsgZGVzdHgsIHkgKyBkZXN0eSwgdmFsdWUp
OworICAgICAgICB9CisgICAgICAgIHNyY1Jvd3MgKz0gc3JjQnl0ZXNQZXJSb3c7CisgICAgfQor
ICAgIGltYWdlID0gaW1hZ2UuY29udmVydFRvRm9ybWF0KFFJbWFnZTo6Rm9ybWF0X0FSR0IzMl9Q
cmVtdWx0aXBsaWVkKTsKKyAgICBtX2RhdGEubV9waXhtYXAgPSBRUGl4bWFwOjpmcm9tSW1hZ2Uo
aW1hZ2UpOworCisgICAgaWYgKGlzUGFpbnRpbmcpCisgICAgICAgIG1fZGF0YS5tX3BhaW50ZXIt
PmJlZ2luKCZtX2RhdGEubV9waXhtYXApOwogfQogCiAvLyBXZSBnZXQgYSBtaW1lVHlwZSBoZXJl
IGJ1dCBRSW1hZ2VXcml0ZXIgZG9lcyBub3Qgc3VwcG9ydCBtaW1ldHlwZXMgYnV0Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>28167</attachid>
            <date>2009-03-02 04:37:59 -0800</date>
            <delta_ts>2009-03-02 05:56:46 -0800</delta_ts>
            <desc>putImageData support for Qt</desc>
            <filename>qt-putImageData.patch</filename>
            <type>text/plain</type>
            <size>3383</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0MTMyNikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMDktMDMtMDIgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRl
ZCBwdXRJbWFnZURhdGEgdG8gUXQuCisKKyAgICAgICAgW1FUXSBsYWNrcyBwdXRJbWFnZURhdGEg
c3VwcG9ydCBpbiBDYW52YXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIyMTg2CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZUJ1
ZmZlclF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlQnVmZmVyOjpwdXRJbWFnZURhdGEp
OgorCiAyMDA5LTAyLTI4ICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gRmlzaGVyLgpJbmRleDogV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9xdC9JbWFnZUJ1ZmZlclF0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlQnVmZmVyUXQuY3BwCShyZXZpc2lvbiA0MTI5MykK
KysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VCdWZmZXJRdC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTEsNiArMSw3IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDA2IE5pa29s
YXMgWmltbWVybWFubiA8emltbWVybWFubkBrZGUub3JnPgogICogQ29weXJpZ2h0IChDKSAyMDA4
IEhvbGdlciBIYW5zIFBldGVyIEZyZXl0aGVyCisgKiBDb3B5cmlnaHQgKEMpIDIwMDkgRGlyayBT
Y2h1bHplIDxrcml0QHdlYmtpdC5vcmc+CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
QEAgLTMxLDcgKzMyLDYgQEAKICNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQuaCIKICNpbmNsdWRl
ICJJbWFnZURhdGEuaCIKICNpbmNsdWRlICJNSU1FVHlwZVJlZ2lzdHJ5LmgiCi0jaW5jbHVkZSAi
Tm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJTdGlsbEltYWdlUXQuaCIKIAogI2luY2x1ZGUg
PFFCdWZmZXI+CkBAIC0xMzQsOSArMTM0LDU3IEBAIFBhc3NSZWZQdHI8SW1hZ2VEYXRhPiBJbWFn
ZUJ1ZmZlcjo6Z2V0SW0KICAgICByZXR1cm4gcmVzdWx0OwogfQogCi12b2lkIEltYWdlQnVmZmVy
OjpwdXRJbWFnZURhdGEoSW1hZ2VEYXRhKiwgY29uc3QgSW50UmVjdCYsIGNvbnN0IEludFBvaW50
JikKK3ZvaWQgSW1hZ2VCdWZmZXI6OnB1dEltYWdlRGF0YShJbWFnZURhdGEqIHNvdXJjZSwgY29u
c3QgSW50UmVjdCYgc291cmNlUmVjdCwgY29uc3QgSW50UG9pbnQmIGRlc3RQb2ludCkKIHsKLSAg
ICBub3RJbXBsZW1lbnRlZCgpOworICAgIEFTU0VSVChzb3VyY2VSZWN0LndpZHRoKCkgPiAwKTsK
KyAgICBBU1NFUlQoc291cmNlUmVjdC5oZWlnaHQoKSA+IDApOworCisgICAgaW50IG9yaWdpbngg
PSBzb3VyY2VSZWN0LngoKTsKKyAgICBpbnQgZGVzdHggPSBkZXN0UG9pbnQueCgpICsgc291cmNl
UmVjdC54KCk7CisgICAgQVNTRVJUKGRlc3R4ID49IDApOworICAgIEFTU0VSVChkZXN0eCA8IG1f
c2l6ZS53aWR0aCgpKTsKKyAgICBBU1NFUlQob3JpZ2lueCA+PSAwKTsKKyAgICBBU1NFUlQob3Jp
Z2lueCA8PSBzb3VyY2VSZWN0LnJpZ2h0KCkpOworCisgICAgaW50IGVuZHggPSBkZXN0UG9pbnQu
eCgpICsgc291cmNlUmVjdC5yaWdodCgpOworICAgIEFTU0VSVChlbmR4IDw9IG1fc2l6ZS53aWR0
aCgpKTsKKworICAgIGludCBudW1Db2x1bW5zID0gZW5keCAtIGRlc3R4OworCisgICAgaW50IG9y
aWdpbnkgPSBzb3VyY2VSZWN0LnkoKTsKKyAgICBpbnQgZGVzdHkgPSBkZXN0UG9pbnQueSgpICsg
c291cmNlUmVjdC55KCk7CisgICAgQVNTRVJUKGRlc3R5ID49IDApOworICAgIEFTU0VSVChkZXN0
eSA8IG1fc2l6ZS5oZWlnaHQoKSk7CisgICAgQVNTRVJUKG9yaWdpbnkgPj0gMCk7CisgICAgQVNT
RVJUKG9yaWdpbnkgPD0gc291cmNlUmVjdC5ib3R0b20oKSk7CisKKyAgICBpbnQgZW5keSA9IGRl
c3RQb2ludC55KCkgKyBzb3VyY2VSZWN0LmJvdHRvbSgpOworICAgIEFTU0VSVChlbmR5IDw9IG1f
c2l6ZS5oZWlnaHQoKSk7CisgICAgaW50IG51bVJvd3MgPSBlbmR5IC0gZGVzdHk7CisKKyAgICB1
bnNpZ25lZCBzcmNCeXRlc1BlclJvdyA9IDQgKiBzb3VyY2UtPndpZHRoKCk7CisKKyAgICBib29s
IGlzUGFpbnRpbmcgPSBtX2RhdGEubV9wYWludGVyLT5pc0FjdGl2ZSgpOworICAgIGlmIChpc1Bh
aW50aW5nKQorICAgICAgICBtX2RhdGEubV9wYWludGVyLT5lbmQoKTsKKworICAgIFFJbWFnZSBp
bWFnZSA9IG1fZGF0YS5tX3BpeG1hcC50b0ltYWdlKCkuY29udmVydFRvRm9ybWF0KFFJbWFnZTo6
Rm9ybWF0X0FSR0IzMik7CisgICAgQVNTRVJUKGltYWdlKTsKKworICAgIHVuc2lnbmVkIGNoYXIq
IHNyY1Jvd3MgPSBzb3VyY2UtPmRhdGEoKS0+ZGF0YSgpLT5kYXRhKCkgKyBvcmlnaW55ICogc3Jj
Qnl0ZXNQZXJSb3cgKyBvcmlnaW54ICogNDsKKyAgICBmb3IgKGludCB5ID0gMDsgeSA8IG51bVJv
d3M7ICsreSkgeworICAgICAgICBmb3IgKGludCB4ID0gMDsgeCA8IG51bUNvbHVtbnM7IHgrKykg
eworICAgICAgICAgICAgaW50IGJhc2V4ID0geCAqIDQ7CisKKyAgICAgICAgICAgIHF1aW50MzIq
IHNjYW5MaW5lID0gcmVpbnRlcnByZXRfY2FzdDxxdWludDMyKj4oaW1hZ2Uuc2NhbkxpbmUoeSAr
IGRlc3R5KSArIGJhc2V4ICsgZGVzdHggKiA0KTsKKyAgICAgICAgICAgICpzY2FuTGluZSA9IHJl
aW50ZXJwcmV0X2Nhc3Q8cXVpbnQzMio+KHNyY1Jvd3MgKyBiYXNleClbMF07CisgICAgICAgIH0K
KyAgICAgICAgc3JjUm93cyArPSBzcmNCeXRlc1BlclJvdzsKKyAgICB9CisgICAgbV9kYXRhLm1f
cGl4bWFwID0gUVBpeG1hcDo6ZnJvbUltYWdlKGltYWdlKTsKKworICAgIGlmIChpc1BhaW50aW5n
KQorICAgICAgICBtX2RhdGEubV9wYWludGVyLT5iZWdpbigmbV9kYXRhLm1fcGl4bWFwKTsKIH0K
IAogLy8gV2UgZ2V0IGEgbWltZVR5cGUgaGVyZSBidXQgUUltYWdlV3JpdGVyIGRvZXMgbm90IHN1
cHBvcnQgbWltZXR5cGVzIGJ1dAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>28168</attachid>
            <date>2009-03-02 05:56:46 -0800</date>
            <delta_ts>2009-03-02 06:09:42 -0800</delta_ts>
            <desc>putImageData support for Qt</desc>
            <filename>qt-putImageData.patch</filename>
            <type>text/plain</type>
            <size>3861</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0MTMyNikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMDktMDMtMDIgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKSwgcnViYmVyLXN0YW1wZWQg
YnkgQXJpeWEgSGlkYXlhdC4KKworICAgICAgICBBZGRlZCBwdXRJbWFnZURhdGEgdG8gUXQuCisK
KyAgICAgICAgW1FUXSBsYWNrcyBwdXRJbWFnZURhdGEgc3VwcG9ydCBpbiBDYW52YXMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTg2CisKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZUJ1ZmZlclF0LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkltYWdlQnVmZmVyOjpwdXRJbWFnZURhdGEpOgorCiAyMDA5LTAyLTI4ICBEaW1pdHJp
IEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
RGFyaW4gRmlzaGVyLgpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZUJ1
ZmZlclF0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0lt
YWdlQnVmZmVyUXQuY3BwCShyZXZpc2lvbiA0MTI5MykKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvcXQvSW1hZ2VCdWZmZXJRdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEsNiArMSw3IEBA
CiAvKgogICogQ29weXJpZ2h0IChDKSAyMDA2IE5pa29sYXMgWmltbWVybWFubiA8emltbWVybWFu
bkBrZGUub3JnPgogICogQ29weXJpZ2h0IChDKSAyMDA4IEhvbGdlciBIYW5zIFBldGVyIEZyZXl0
aGVyCisgKiBDb3B5cmlnaHQgKEMpIDIwMDkgRGlyayBTY2h1bHplIDxrcml0QHdlYmtpdC5vcmc+
CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTMxLDcgKzMyLDYgQEAKICNpbmNs
dWRlICJHcmFwaGljc0NvbnRleHQuaCIKICNpbmNsdWRlICJJbWFnZURhdGEuaCIKICNpbmNsdWRl
ICJNSU1FVHlwZVJlZ2lzdHJ5LmgiCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNs
dWRlICJTdGlsbEltYWdlUXQuaCIKIAogI2luY2x1ZGUgPFFCdWZmZXI+CkBAIC0xMTEsOSArMTEx
LDcgQEAgUGFzc1JlZlB0cjxJbWFnZURhdGE+IEltYWdlQnVmZmVyOjpnZXRJbQogICAgICAgICBl
bmR5ID0gbV9zaXplLmhlaWdodCgpOwogICAgIGludCBudW1Sb3dzID0gZW5keSAtIG9yaWdpbnk7
CiAKLSAgICBRSW1hZ2UgaW1hZ2UgPSBtX2RhdGEubV9waXhtYXAudG9JbWFnZSgpOwotICAgIGlm
IChpbWFnZS5mb3JtYXQoKSAhPSBRSW1hZ2U6OkZvcm1hdF9BUkdCMzIpCi0gICAgICAgIGltYWdl
ID0gaW1hZ2UuY29udmVydFRvRm9ybWF0KFFJbWFnZTo6Rm9ybWF0X0FSR0IzMik7CisgICAgUUlt
YWdlIGltYWdlID0gbV9kYXRhLm1fcGl4bWFwLnRvSW1hZ2UoKS5jb252ZXJ0VG9Gb3JtYXQoUUlt
YWdlOjpGb3JtYXRfQVJHQjMyKTsKICAgICBBU1NFUlQoIWltYWdlLmlzTnVsbCgpKTsKIAogICAg
IHVuc2lnbmVkIGRlc3RCeXRlc1BlclJvdyA9IDQgKiByZWN0LndpZHRoKCk7CkBAIC0xMzQsOSAr
MTMyLDU3IEBAIFBhc3NSZWZQdHI8SW1hZ2VEYXRhPiBJbWFnZUJ1ZmZlcjo6Z2V0SW0KICAgICBy
ZXR1cm4gcmVzdWx0OwogfQogCi12b2lkIEltYWdlQnVmZmVyOjpwdXRJbWFnZURhdGEoSW1hZ2VE
YXRhKiwgY29uc3QgSW50UmVjdCYsIGNvbnN0IEludFBvaW50JikKK3ZvaWQgSW1hZ2VCdWZmZXI6
OnB1dEltYWdlRGF0YShJbWFnZURhdGEqIHNvdXJjZSwgY29uc3QgSW50UmVjdCYgc291cmNlUmVj
dCwgY29uc3QgSW50UG9pbnQmIGRlc3RQb2ludCkKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwor
ICAgIEFTU0VSVChzb3VyY2VSZWN0LndpZHRoKCkgPiAwKTsKKyAgICBBU1NFUlQoc291cmNlUmVj
dC5oZWlnaHQoKSA+IDApOworCisgICAgaW50IG9yaWdpbnggPSBzb3VyY2VSZWN0LngoKTsKKyAg
ICBpbnQgZGVzdHggPSBkZXN0UG9pbnQueCgpICsgc291cmNlUmVjdC54KCk7CisgICAgQVNTRVJU
KGRlc3R4ID49IDApOworICAgIEFTU0VSVChkZXN0eCA8IG1fc2l6ZS53aWR0aCgpKTsKKyAgICBB
U1NFUlQob3JpZ2lueCA+PSAwKTsKKyAgICBBU1NFUlQob3JpZ2lueCA8PSBzb3VyY2VSZWN0LnJp
Z2h0KCkpOworCisgICAgaW50IGVuZHggPSBkZXN0UG9pbnQueCgpICsgc291cmNlUmVjdC5yaWdo
dCgpOworICAgIEFTU0VSVChlbmR4IDw9IG1fc2l6ZS53aWR0aCgpKTsKKworICAgIGludCBudW1D
b2x1bW5zID0gZW5keCAtIGRlc3R4OworCisgICAgaW50IG9yaWdpbnkgPSBzb3VyY2VSZWN0Lnko
KTsKKyAgICBpbnQgZGVzdHkgPSBkZXN0UG9pbnQueSgpICsgc291cmNlUmVjdC55KCk7CisgICAg
QVNTRVJUKGRlc3R5ID49IDApOworICAgIEFTU0VSVChkZXN0eSA8IG1fc2l6ZS5oZWlnaHQoKSk7
CisgICAgQVNTRVJUKG9yaWdpbnkgPj0gMCk7CisgICAgQVNTRVJUKG9yaWdpbnkgPD0gc291cmNl
UmVjdC5ib3R0b20oKSk7CisKKyAgICBpbnQgZW5keSA9IGRlc3RQb2ludC55KCkgKyBzb3VyY2VS
ZWN0LmJvdHRvbSgpOworICAgIEFTU0VSVChlbmR5IDw9IG1fc2l6ZS5oZWlnaHQoKSk7CisgICAg
aW50IG51bVJvd3MgPSBlbmR5IC0gZGVzdHk7CisKKyAgICB1bnNpZ25lZCBzcmNCeXRlc1BlclJv
dyA9IDQgKiBzb3VyY2UtPndpZHRoKCk7CisKKyAgICBib29sIGlzUGFpbnRpbmcgPSBtX2RhdGEu
bV9wYWludGVyLT5pc0FjdGl2ZSgpOworICAgIGlmIChpc1BhaW50aW5nKQorICAgICAgICBtX2Rh
dGEubV9wYWludGVyLT5lbmQoKTsKKworICAgIFFJbWFnZSBpbWFnZSA9IG1fZGF0YS5tX3BpeG1h
cC50b0ltYWdlKCkuY29udmVydFRvRm9ybWF0KFFJbWFnZTo6Rm9ybWF0X0FSR0IzMik7CisgICAg
QVNTRVJUKGltYWdlKTsKKworICAgIHVuc2lnbmVkIGNoYXIqIHNyY1Jvd3MgPSBzb3VyY2UtPmRh
dGEoKS0+ZGF0YSgpLT5kYXRhKCkgKyBvcmlnaW55ICogc3JjQnl0ZXNQZXJSb3cgKyBvcmlnaW54
ICogNDsKKyAgICBmb3IgKGludCB5ID0gMDsgeSA8IG51bVJvd3M7ICsreSkgeworICAgICAgICBx
dWludDMyKiBzY2FuTGluZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8cXVpbnQzMio+KGltYWdlLnNjYW5M
aW5lKHkgKyBkZXN0eSkpOworICAgICAgICBmb3IgKGludCB4ID0gMDsgeCA8IG51bUNvbHVtbnM7
IHgrKykgeworICAgICAgICAgICAgaW50IGJhc2V4ID0geCAqIDQ7CisKKyAgICAgICAgICAgIHNj
YW5MaW5lW3ggKyBkZXN0eF0gPSByZWludGVycHJldF9jYXN0PHF1aW50MzIqPihzcmNSb3dzICsg
YmFzZXgpWzBdOworICAgICAgICB9CisgICAgICAgIHNyY1Jvd3MgKz0gc3JjQnl0ZXNQZXJSb3c7
CisgICAgfQorICAgIG1fZGF0YS5tX3BpeG1hcCA9IFFQaXhtYXA6OmZyb21JbWFnZShpbWFnZSk7
CisKKyAgICBpZiAoaXNQYWludGluZykKKyAgICAgICAgbV9kYXRhLm1fcGFpbnRlci0+YmVnaW4o
Jm1fZGF0YS5tX3BpeG1hcCk7CiB9CiAKIC8vIFdlIGdldCBhIG1pbWVUeXBlIGhlcmUgYnV0IFFJ
bWFnZVdyaXRlciBkb2VzIG5vdCBzdXBwb3J0IG1pbWV0eXBlcyBidXQK
</data>
<flag name="review"
          id="13762"
          type_id="1"
          status="+"
          setter="zecke"
    />
          </attachment>
      

    </bug>

</bugzilla>