<?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>16508</bug_id>
          
          <creation_ts>2007-12-18 16:07:13 -0800</creation_ts>
          <short_desc>Regression: Transparency mis-decoded in interlaced GIFs</short_desc>
          <delta_ts>2007-12-20 19:56:24 -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>Images</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Peter Kasting">pkasting</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>sandshrew</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>64676</commentid>
    <comment_count>0</comment_count>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2007-12-18 16:07:13 -0800</bug_when>
    <thetext>GIFImageDecoder.cpp (not used by Safari, but used by various other WebKit ports) has a bug I introduced several weeks ago which causes it to mis-decode transparent sections of interlaced GIFs, by not overwriting earlier rows&apos; opaque pixels with later rows&apos; transparent ones.

It&apos;s not too tricky to fix this.  Patch coming shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64683</commentid>
    <comment_count>1</comment_count>
      <attachid>17978</attachid>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2007-12-18 18:16:53 -0800</bug_when>
    <thetext>Created attachment 17978
patch v1

Sometimes we need to overwrite our buffer with transparent pixels, and sometimes we need to not do it.  This lets the GIFImageReader code tell us which one is the case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64685</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2007-12-18 18:39:43 -0800</bug_when>
    <thetext>*** Bug 16504 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64732</commentid>
    <comment_count>3</comment_count>
      <attachid>17978</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-12-19 09:19:40 -0800</bug_when>
    <thetext>Comment on attachment 17978
patch v1

I did notice this regression. Patch looks sane, but haven&apos;t had the opportunity to review it closely yet and it does break the GTK+ build at least:

g++ -c -pipe -D_REENTRANT -I/usr/include -Wall -W -Wcast-align -Wchar-subscripts -Wformat-security -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings -Wno-format-y2k -Wno-unused-parameter -Wundef -fno-exceptions -fno-rtti -Wreturn-type -fno-strict-aliasing -O2 -I/usr/include/cairo -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/cairo -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/libxml2 -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -DQT_SHARED -DBUILDING_CAIRO__=1 -DBUILDING_GTK__=1 -DUSE_SYSTEM_MALLOC -DNDEBUG -DHAVE_STDINT_H -DBUILD_WEBKIT -DENABLE_DATABASE=1 -DENABLE_ICONDATABASE=1 -DENABLE_XPATH=1 -DENABLE_XSLT=1 -DENABLE_SVG=0 -DENABLE_VIDEO=0 -DWTF_CHANGES=1 -DBUILDING_GTK__ -I/usr/share/qt4/mkspecs/linux-g++ -I../../../WebCore -I../../../../WebKit -I../../../WebCore/platform/gtk -I../../../WebCore/platform/network/curl -I../../../WebCore/platform/graphics/cairo -I/home/alp/Projects/webkit/ngit/WebKit/WebCore/loader/gtk -I../../../WebCore/page/gtk -I../../../WebKit/gtk/WebView -I../../../WebKit/gtk/WebCoreSupport -I../../../JavaScriptCore -I../../../JavaScriptCore/kjs -I../../../JavaScriptCore/bindings -I../../../JavaScriptCore/bindings/c -I../../../JavaScriptCore/wtf -I../../../JavaScriptCore/ForwardingHeaders -I../../../WebCore -I../../../WebCore/ForwardingHeaders -I../../../WebCore/platform -I../../../WebCore/platform/network -I../../../WebCore/platform/graphics -I../../../WebCore/loader -I../../../WebCore/page -I../../../WebCore/css -I../../../WebCore/dom -I../../../WebCore/bridge -I../../../WebCore/editing -I../../../WebCore/rendering -I../../../WebCore/history -I../../../WebCore/xml -I../../../WebCore/html -Itmp -Itmp -I../../../JavaScriptCore -I../../../JavaScriptCore/kjs -I../../../JavaScriptCore/bindings -I../../../JavaScriptCore/bindings/c -I../../../JavaScriptCore/wtf -I../../../JavaScriptCore/pcre -I../JavaScriptCore/kjs/tmp -I../../../WebCore/platform/gtk -I../../../WebCore/platform/graphics/gtk -I../../../WebCore/platform/graphics/cairo -I../../../WebCore/svg/graphics/cairo -I../../../WebCore/platform/network/curl -I../../../WebCore/platform/image-decoders -I../../../WebCore/platform/image-decoders/bmp -I../../../WebCore/platform/image-decoders/gif -I../../../WebCore/platform/image-decoders/ico -I../../../WebCore/platform/image-decoders/jpeg -I../../../WebCore/platform/image-decoders/png -I../../../WebCore/platform/image-decoders/xbm -I/home/alp/Projects/webkit/ngit/WebKit/WebCore/loader/gtk -I../../../WebCore/page/gtk -I../../../WebKit/gtk/WebCoreSupport -I../../../WebKit/gtk/WebView -I../../../WebCore -I../../../WebCore/ForwardingHeaders -I../../../../WebKit -I../../../JavaScriptCore/kjs -I../../../JavaScriptCore/bindings -I../../../JavaScriptCore/wtf -I../../../WebCore/platform -I../../../WebCore/platform/network -I../../../WebCore/platform/graphics -I../../../WebCore/svg/graphics -I../../../WebCore/svg/graphics/filters -I../../../WebCore/platform/sql -I../../../WebCore/platform/text -I../../../WebCore/storage -I../../../WebCore/loader -I../../../WebCore/loader/icon -I../../../WebCore/css -I../../../WebCore/dom -I../../../WebCore/page -I../../../WebCore/bridge -I../../../WebCore/editing -I../../../WebCore/rendering -I../../../WebCore/history -I../../../WebCore/xml -I../../../WebCore/html -I../../../WebCore/bindings/js -I../../../WebCore/svg -I../../../WebCore/platform/image-decoders -I/usr/X11R6/include -I../../../WebCore -I. -o tmp/GIFImageDecoder.o ../../../WebCore/platform/image-decoders/gif/GIFImageDecoder.cpp
../../../WebCore/platform/image-decoders/gif/GIFImageDecoder.cpp: In member function ‘virtual WebCore::RGBA32Buffer* WebCore::GIFImageDecoder::frameBufferAtIndex(size_t)’:
../../../WebCore/platform/image-decoders/gif/GIFImageDecoder.cpp:161: warning: comparison between signed and unsigned integer expressions
../../../WebCore/platform/image-decoders/gif/GIFImageDecoder.cpp: In member function ‘void WebCore::GIFImageDecoder::haveDecodedRow(unsigned int, unsigned char*, unsigned char*, unsigned int, unsigned int, bool)’:
../../../WebCore/platform/image-decoders/gif/GIFImageDecoder.cpp:329: error: no matching function for call to ‘WebCore::RGBA32Buffer::setRGBA(unsigned int*&amp;, int, int, int, int)’
../../../WebCore/platform/image-decoders/ImageDecoder.h:73: note: candidates are: static void WebCore::RGBA32Buffer::setRGBA(unsigned int&amp;, unsigned int, unsigned int, unsigned int, unsigned int)
make: *** [tmp/GIFImageDecoder.o] Error 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64856</commentid>
    <comment_count>4</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-12-20 13:25:21 -0800</bug_when>
    <thetext>*** Bug 16340 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64862</commentid>
    <comment_count>5</comment_count>
      <attachid>18015</attachid>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2007-12-20 13:54:29 -0800</bug_when>
    <thetext>Created attachment 18015
patch v2

Fix stupid typo in patch v1.  I left off a *.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64910</commentid>
    <comment_count>6</comment_count>
      <attachid>18015</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-12-20 19:55:35 -0800</bug_when>
    <thetext>Comment on attachment 18015
patch v2

r=me

Thanks Peter!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64911</commentid>
    <comment_count>7</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-12-20 19:56:24 -0800</bug_when>
    <thetext>Landed in r28925.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17978</attachid>
            <date>2007-12-18 18:16:53 -0800</date>
            <delta_ts>2007-12-20 13:54:29 -0800</delta_ts>
            <desc>patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>4290</size>
            <attacher name="Peter Kasting">pkasting</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyODg0NSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMDctMTItMTggIFBldGVyIEthc3RpbmcgIDx6ZXJvZHB4QGdtYWls
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBo
dHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjUwOAorICAgICAgICBGaXgg
cmVncmVzc2lvbiBpbiBHSUZJbWFnZURlY29kZXIuY3BwOiAiSGFlYmVybGkgaGFjayIgbGVkIHRv
IHdyb25nbHkKKyAgICAgICAgZGVjb2RlZCB0cmFuc3BhcmVudCBhcmVhcy4KKworICAgICAgICAq
IHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZURlY29kZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6R0lGSW1hZ2VEZWNvZGVyOjpoYXZlRGVjb2RlZFJvdyk6CisgICAgICAgICog
cGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5oOgorICAgICAgICAq
IHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZVJlYWRlci5jcHA6CisgICAgICAg
IChHSUZJbWFnZVJlYWRlcjo6b3V0cHV0X3Jvdyk6CisKIDIwMDctMTItMTggIFN0ZXZlIEZhbGtl
bmJ1cmcgIDxzZmFsa2VuQGFwcGxlLmNvbT4KIAogICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTY0
OTkxMT4gUkVHUkVTU0lPTiAoMzA0LTMwNkE5KTogVHlwaW5nICdwJyBpbiBwb3B1cCBtZW51IGZv
ciB0eXBlLXRvLXNlbGVjdCBicmluZ3MgdXAgU2FmYXJpIEhlbHAKSW5kZXg6IFdlYkNvcmUvcGxh
dGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1hZ2VEZWNvZGVyLmNw
cAkocmV2aXNpb24gMjg4NDMpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dp
Zi9HSUZJbWFnZURlY29kZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNzgsNyArMjc4LDggQEAg
dm9pZCBHSUZJbWFnZURlY29kZXI6OmhhdmVEZWNvZGVkUm93KHVucwogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIqIHJvd0J1ZmZlciwgICAvLyBQb2lu
dGVyIHRvIHNpbmdsZSBzY2FubGluZSB0ZW1wb3JhcnkgYnVmZmVyCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciogcm93RW5kLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIHJvd051bWJlciwgIC8vIFRoZSByb3cg
aW5kZXgKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCByZXBl
YXRDb3VudCkgLy8gSG93IG1hbnkgdGltZXMgdG8gcmVwZWF0IHRoZSByb3cKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCByZXBlYXRDb3VudCwgIC8vIEhvdyBt
YW55IHRpbWVzIHRvIHJlcGVhdCB0aGUgcm93CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYm9vbCB3cml0ZVRyYW5zcGFyZW50UGl4ZWxzKQogewogICAgIC8vIEluaXRpYWxp
emUgdGhlIGZyYW1lIGlmIG5lY2Vzc2FyeS4KICAgICBSR0JBMzJCdWZmZXImIGJ1ZmZlciA9IG1f
ZnJhbWVCdWZmZXJDYWNoZVtmcmFtZUluZGV4XTsKQEAgLTMxNyw2ICszMTgsMTUgQEAgdm9pZCBH
SUZJbWFnZURlY29kZXI6OmhhdmVEZWNvZGVkUm93KHVucwogICAgICAgICAgICAgUkdCQTMyQnVm
ZmVyOjpzZXRSR0JBKCpjdXJyRHN0LCByZWQsIGdyZWVuLCBibHVlLCAyNTUpOwogICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICAgbV9jdXJyZW50QnVmZmVyU2F3QWxwaGEgPSB0cnVlOworICAg
ICAgICAgICAgLy8gV2UgbWF5IG9yIG1heSBub3QgbmVlZCB0byB3cml0ZSB0cmFuc3BhcmVudCBw
aXhlbHMgdG8gdGhlIGJ1ZmZlci4KKyAgICAgICAgICAgIC8vIElmIHdlJ3JlIGNvbXBvc2l0aW5n
IGFnYWluc3QgYSBwcmV2aW91cyBpbWFnZSwgaXQncyB3cm9uZywgYW5kIGlmCisgICAgICAgICAg
ICAvLyB3ZSdyZSB3cml0aW5nIGF0b3AgYSBjbGVhcmVkLCBmdWxseSB0cmFuc3BhcmVudCBidWZm
ZXIsIGl0J3MKKyAgICAgICAgICAgIC8vIHVubmVjZXNzYXJ5OyBidXQgaWYgd2UncmUgZGVjb2Rp
bmcgYW4gaW50ZXJsYWNlZCBnaWYgYW5kCisgICAgICAgICAgICAvLyBkaXNwbGF5aW5nIGl0ICJI
YWViZXJsaSItc3R5bGUsIHdlIG11c3Qgd3JpdGUgdGhlc2UgZm9yIHBhc3NlcworICAgICAgICAg
ICAgLy8gYmV5b25kIHRoZSBmaXJzdCwgb3IgdGhlIGluaXRpYWwgcGFzc2VzIHdpbGwgInNob3cg
dGhyb3VnaCIgdGhlCisgICAgICAgICAgICAvLyBsYXRlciBvbmVzLgorICAgICAgICAgICAgaWYg
KHdyaXRlVHJhbnNwYXJlbnRQaXhlbHMpCisgICAgICAgICAgICAgICAgUkdCQTMyQnVmZmVyOjpz
ZXRSR0JBKGN1cnJEc3QsIDAsIDAsIDAsIDApOwogICAgICAgICB9CiAgICAgICAgIGN1cnJEc3Qr
KzsKICAgICAgICAgY3VycmVudFJvd0J5dGUrKzsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vaW1h
Z2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
cGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5oCShyZXZpc2lvbiAy
ODg0MykKKysrIFdlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVj
b2Rlci5oCSh3b3JraW5nIGNvcHkpCkBAIC02NCw3ICs2NCw3IEBAIHB1YmxpYzoKICAgICB2b2lk
IHNpemVOb3dBdmFpbGFibGUodW5zaWduZWQgd2lkdGgsIHVuc2lnbmVkIGhlaWdodCk7CiAgICAg
dm9pZCBkZWNvZGluZ0hhbHRlZCh1bnNpZ25lZCBieXRlc0xlZnQpOwogICAgIHZvaWQgaGF2ZURl
Y29kZWRSb3codW5zaWduZWQgZnJhbWVJbmRleCwgdW5zaWduZWQgY2hhciogcm93QnVmZmVyLCB1
bnNpZ25lZCBjaGFyKiByb3dFbmQsIHVuc2lnbmVkIHJvd051bWJlciwgCi0gICAgICAgICAgICAg
ICAgICAgICAgICB1bnNpZ25lZCByZXBlYXRDb3VudCk7CisgICAgICAgICAgICAgICAgICAgICAg
ICB1bnNpZ25lZCByZXBlYXRDb3VudCwgYm9vbCB3cml0ZVRyYW5zcGFyZW50UGl4ZWxzKTsKICAg
ICB2b2lkIGZyYW1lQ29tcGxldGUodW5zaWduZWQgZnJhbWVJbmRleCwgdW5zaWduZWQgZnJhbWVE
dXJhdGlvbiwgUkdCQTMyQnVmZmVyOjpGcmFtZURpc3Bvc2FsTWV0aG9kIGRpc3Bvc2FsTWV0aG9k
KTsKICAgICB2b2lkIGdpZkNvbXBsZXRlKCk7CiAKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vaW1h
Z2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlUmVhZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZVJlYWRlci5jcHAJKHJldmlzaW9u
IDI4ODQzKQorKysgV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1hZ2VS
ZWFkZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNjEsNyArMTYxLDggQEAgdm9pZCBHSUZJbWFn
ZVJlYWRlcjo6b3V0cHV0X3JvdygpCiAgIC8vIENBTExCQUNLOiBMZXQgdGhlIGNsaWVudCBrbm93
IHdlIGhhdmUgZGVjb2RlZCBhIHJvdy4KICAgaWYgKGNsaWVudHB0ciAmJiBmcmFtZV9yZWFkZXIp
CiAgICAgY2xpZW50cHRyLT5oYXZlRGVjb2RlZFJvdyhpbWFnZXNfY291bnQgLSAxLCBmcmFtZV9y
ZWFkZXItPnJvd2J1ZiwgZnJhbWVfcmVhZGVyLT5yb3dlbmQsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBkcm93X3N0YXJ0LCBkcm93X2VuZCAtIGRyb3dfc3RhcnQgKyAxKTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGRyb3dfc3RhcnQsIGRyb3dfZW5kIC0gZHJvd19zdGFy
dCArIDEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncy0+cHJvZ3Jlc3NpdmVfZGlz
cGxheSAmJiBncy0+aW50ZXJsYWNlZCAmJiBncy0+aXBhc3MgPiAxKTsKIAogICBncy0+cm93cCA9
IGdzLT5yb3didWY7CiAK
</data>
<flag name="review"
          id="7801"
          type_id="1"
          status="-"
          setter="alp"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18015</attachid>
            <date>2007-12-20 13:54:29 -0800</date>
            <delta_ts>2007-12-20 19:55:35 -0800</delta_ts>
            <desc>patch v2</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>4291</size>
            <attacher name="Peter Kasting">pkasting</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyODg0NSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMDctMTItMTggIFBldGVyIEthc3RpbmcgIDx6ZXJvZHB4QGdtYWls
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBo
dHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjUwOAorICAgICAgICBGaXgg
cmVncmVzc2lvbiBpbiBHSUZJbWFnZURlY29kZXIuY3BwOiAiSGFlYmVybGkgaGFjayIgbGVkIHRv
IHdyb25nbHkKKyAgICAgICAgZGVjb2RlZCB0cmFuc3BhcmVudCBhcmVhcy4KKworICAgICAgICAq
IHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZURlY29kZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6R0lGSW1hZ2VEZWNvZGVyOjpoYXZlRGVjb2RlZFJvdyk6CisgICAgICAgICog
cGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5oOgorICAgICAgICAq
IHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZVJlYWRlci5jcHA6CisgICAgICAg
IChHSUZJbWFnZVJlYWRlcjo6b3V0cHV0X3Jvdyk6CisKIDIwMDctMTItMTggIFN0ZXZlIEZhbGtl
bmJ1cmcgIDxzZmFsa2VuQGFwcGxlLmNvbT4KIAogICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTY0
OTkxMT4gUkVHUkVTU0lPTiAoMzA0LTMwNkE5KTogVHlwaW5nICdwJyBpbiBwb3B1cCBtZW51IGZv
ciB0eXBlLXRvLXNlbGVjdCBicmluZ3MgdXAgU2FmYXJpIEhlbHAKSW5kZXg6IFdlYkNvcmUvcGxh
dGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1hZ2VEZWNvZGVyLmNw
cAkocmV2aXNpb24gMjg4NDMpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dp
Zi9HSUZJbWFnZURlY29kZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNzgsNyArMjc4LDggQEAg
dm9pZCBHSUZJbWFnZURlY29kZXI6OmhhdmVEZWNvZGVkUm93KHVucwogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIqIHJvd0J1ZmZlciwgICAvLyBQb2lu
dGVyIHRvIHNpbmdsZSBzY2FubGluZSB0ZW1wb3JhcnkgYnVmZmVyCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciogcm93RW5kLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIHJvd051bWJlciwgIC8vIFRoZSByb3cg
aW5kZXgKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCByZXBl
YXRDb3VudCkgLy8gSG93IG1hbnkgdGltZXMgdG8gcmVwZWF0IHRoZSByb3cKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCByZXBlYXRDb3VudCwgIC8vIEhvdyBt
YW55IHRpbWVzIHRvIHJlcGVhdCB0aGUgcm93CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYm9vbCB3cml0ZVRyYW5zcGFyZW50UGl4ZWxzKQogewogICAgIC8vIEluaXRpYWxp
emUgdGhlIGZyYW1lIGlmIG5lY2Vzc2FyeS4KICAgICBSR0JBMzJCdWZmZXImIGJ1ZmZlciA9IG1f
ZnJhbWVCdWZmZXJDYWNoZVtmcmFtZUluZGV4XTsKQEAgLTMxNyw2ICszMTgsMTUgQEAgdm9pZCBH
SUZJbWFnZURlY29kZXI6OmhhdmVEZWNvZGVkUm93KHVucwogICAgICAgICAgICAgUkdCQTMyQnVm
ZmVyOjpzZXRSR0JBKCpjdXJyRHN0LCByZWQsIGdyZWVuLCBibHVlLCAyNTUpOwogICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICAgbV9jdXJyZW50QnVmZmVyU2F3QWxwaGEgPSB0cnVlOworICAg
ICAgICAgICAgLy8gV2UgbWF5IG9yIG1heSBub3QgbmVlZCB0byB3cml0ZSB0cmFuc3BhcmVudCBw
aXhlbHMgdG8gdGhlIGJ1ZmZlci4KKyAgICAgICAgICAgIC8vIElmIHdlJ3JlIGNvbXBvc2l0aW5n
IGFnYWluc3QgYSBwcmV2aW91cyBpbWFnZSwgaXQncyB3cm9uZywgYW5kIGlmCisgICAgICAgICAg
ICAvLyB3ZSdyZSB3cml0aW5nIGF0b3AgYSBjbGVhcmVkLCBmdWxseSB0cmFuc3BhcmVudCBidWZm
ZXIsIGl0J3MKKyAgICAgICAgICAgIC8vIHVubmVjZXNzYXJ5OyBidXQgaWYgd2UncmUgZGVjb2Rp
bmcgYW4gaW50ZXJsYWNlZCBnaWYgYW5kCisgICAgICAgICAgICAvLyBkaXNwbGF5aW5nIGl0ICJI
YWViZXJsaSItc3R5bGUsIHdlIG11c3Qgd3JpdGUgdGhlc2UgZm9yIHBhc3NlcworICAgICAgICAg
ICAgLy8gYmV5b25kIHRoZSBmaXJzdCwgb3IgdGhlIGluaXRpYWwgcGFzc2VzIHdpbGwgInNob3cg
dGhyb3VnaCIgdGhlCisgICAgICAgICAgICAvLyBsYXRlciBvbmVzLgorICAgICAgICAgICAgaWYg
KHdyaXRlVHJhbnNwYXJlbnRQaXhlbHMpCisgICAgICAgICAgICAgICAgUkdCQTMyQnVmZmVyOjpz
ZXRSR0JBKCpjdXJyRHN0LCAwLCAwLCAwLCAwKTsKICAgICAgICAgfQogICAgICAgICBjdXJyRHN0
Kys7CiAgICAgICAgIGN1cnJlbnRSb3dCeXRlKys7CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2lt
YWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZURlY29kZXIuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZURlY29kZXIuaAkocmV2aXNpb24g
Mjg4NDMpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZURl
Y29kZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNjQsNyArNjQsNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBzaXplTm93QXZhaWxhYmxlKHVuc2lnbmVkIHdpZHRoLCB1bnNpZ25lZCBoZWlnaHQpOwogICAg
IHZvaWQgZGVjb2RpbmdIYWx0ZWQodW5zaWduZWQgYnl0ZXNMZWZ0KTsKICAgICB2b2lkIGhhdmVE
ZWNvZGVkUm93KHVuc2lnbmVkIGZyYW1lSW5kZXgsIHVuc2lnbmVkIGNoYXIqIHJvd0J1ZmZlciwg
dW5zaWduZWQgY2hhciogcm93RW5kLCB1bnNpZ25lZCByb3dOdW1iZXIsIAotICAgICAgICAgICAg
ICAgICAgICAgICAgdW5zaWduZWQgcmVwZWF0Q291bnQpOworICAgICAgICAgICAgICAgICAgICAg
ICAgdW5zaWduZWQgcmVwZWF0Q291bnQsIGJvb2wgd3JpdGVUcmFuc3BhcmVudFBpeGVscyk7CiAg
ICAgdm9pZCBmcmFtZUNvbXBsZXRlKHVuc2lnbmVkIGZyYW1lSW5kZXgsIHVuc2lnbmVkIGZyYW1l
RHVyYXRpb24sIFJHQkEzMkJ1ZmZlcjo6RnJhbWVEaXNwb3NhbE1ldGhvZCBkaXNwb3NhbE1ldGhv
ZCk7CiAgICAgdm9pZCBnaWZDb21wbGV0ZSgpOwogCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2lt
YWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZVJlYWRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1hZ2VSZWFkZXIuY3BwCShyZXZpc2lv
biAyODg0MykKKysrIFdlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdl
UmVhZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTYxLDcgKzE2MSw4IEBAIHZvaWQgR0lGSW1h
Z2VSZWFkZXI6Om91dHB1dF9yb3coKQogICAvLyBDQUxMQkFDSzogTGV0IHRoZSBjbGllbnQga25v
dyB3ZSBoYXZlIGRlY29kZWQgYSByb3cuCiAgIGlmIChjbGllbnRwdHIgJiYgZnJhbWVfcmVhZGVy
KQogICAgIGNsaWVudHB0ci0+aGF2ZURlY29kZWRSb3coaW1hZ2VzX2NvdW50IC0gMSwgZnJhbWVf
cmVhZGVyLT5yb3didWYsIGZyYW1lX3JlYWRlci0+cm93ZW5kLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZHJvd19zdGFydCwgZHJvd19lbmQgLSBkcm93X3N0YXJ0ICsgMSk7CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBkcm93X3N0YXJ0LCBkcm93X2VuZCAtIGRyb3dfc3Rh
cnQgKyAxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3MtPnByb2dyZXNzaXZlX2Rp
c3BsYXkgJiYgZ3MtPmludGVybGFjZWQgJiYgZ3MtPmlwYXNzID4gMSk7CiAKICAgZ3MtPnJvd3Ag
PSBncy0+cm93YnVmOwogCg==
</data>
<flag name="review"
          id="7817"
          type_id="1"
          status="+"
          setter="alp"
    />
          </attachment>
      

    </bug>

</bugzilla>