<?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>11760</bug_id>
          
          <creation_ts>2006-12-05 11:39:13 -0800</creation_ts>
          <short_desc>Animated GIFs with offsets crash WebKit</short_desc>
          <delta_ts>2006-12-18 15:42:20 -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>420+</version>
          <rep_platform>All</rep_platform>
          <op_sys>Windows XP</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://images.strategyinformer.com/u3/6644/00169596.gif</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Dex Deacon">occupant4</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ddkilzer</cc>
    
    <cc>hyatt</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>43170</commentid>
    <comment_count>0</comment_count>
    <who name="Dex Deacon">occupant4</who>
    <bug_when>2006-12-05 11:39:13 -0800</bug_when>
    <thetext>WebKit crashes when decoding an animated GIF that contains a frame with a nonzero X offset.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43171</commentid>
    <comment_count>1</comment_count>
      <attachid>11742</attachid>
    <who name="Dex Deacon">occupant4</who>
    <bug_when>2006-12-05 11:41:51 -0800</bug_when>
    <thetext>Created attachment 11742
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43127</commentid>
    <comment_count>2</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-12-06 03:11:08 -0800</bug_when>
    <thetext>The image at the URL above appears to work for me without crashing using a locally-built debug build of r18014.

Please post a stack trace if you get a crash.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43086</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-12-06 09:06:27 -0800</bug_when>
    <thetext>I think that&apos;s because WebKit uses ImageIO on Mac OS X, rather than the built-in decoders.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43081</commentid>
    <comment_count>4</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-12-06 11:14:03 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; I think that&apos;s because WebKit uses ImageIO on Mac OS X, rather than the
&gt; built-in decoders.

My bad--didn&apos;t notice this happened on Win XP.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43058</commentid>
    <comment_count>5</comment_count>
      <attachid>11757</attachid>
    <who name="Dex Deacon">occupant4</who>
    <bug_when>2006-12-06 13:06:41 -0800</bug_when>
    <thetext>Created attachment 11757
better patch with layout test

This patch fixes another buffer overflow that I missed in the first patch.  Also, this also corrects the way frames are composited in animating GIFs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42947</commentid>
    <comment_count>6</comment_count>
      <attachid>11757</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-12-07 15:37:21 -0800</bug_when>
    <thetext>Comment on attachment 11757
better patch with layout test

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>41300</commentid>
    <comment_count>7</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2006-12-18 15:42:20 -0800</bug_when>
    <thetext>Landed in r18289.  Dex, can you please be wary of using tabs in changelog entries?  Thanks very much for the fix!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>11742</attachid>
            <date>2006-12-05 11:41:51 -0800</date>
            <delta_ts>2006-12-05 16:08:30 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>gif.patch</filename>
            <type>text/plain</type>
            <size>1438</size>
            <attacher name="Dex Deacon">occupant4</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAxODAyNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTIgQEAKKzIwMDYtMTItMDUgIERleCBEZWFjb24gIDxvY2N1cGFudDRAZ21haWwu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisJQ3Jhc2ggZml4
IGZvciBhbmltYXRlZCBHSUZzIHdpdGggZnJhbWVzIHRoYXQgaGF2ZSBhIG5vbnplcm8gWCBvZmZz
ZXQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1hZ2VEZWNv
ZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdJRkltYWdlRGVjb2Rlcjo6aGF2ZURlY29kZWRS
b3cpOgorCiAyMDA2LTEyLTA1ICBBbmRlcnMgQ2FybHNzb24gIDxhY2FybHNzb25AYXBwbGUuY29t
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IEJyYWR5LCBEYXJpbi4KSW5kZXg6IFdlYkNvcmUvcGxh
dGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1hZ2VEZWNvZGVyLmNw
cAkocmV2aXNpb24gMTgwMjIpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dp
Zi9HSUZJbWFnZURlY29kZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOTksNiArMjk5LDggQEAg
dm9pZCBHSUZJbWFnZURlY29kZXI6OmhhdmVEZWNvZGVkUm93KHVucwogICAgIC8vIHdpdGhpbiB0
aGUgb3ZlcmFsbCBpbWFnZS4gIFRoZSByb3dzIHdlIGFyZSBkZWNvZGluZyBhcmUgd2l0aGluIHRo
aXMKICAgICAvLyBzdWItcmVjdGFuZ2xlLiAgVGhpcyBtZWFucyB0aGF0IGlmIHRoZSBHSUYgZnJh
bWUncyBzdWItcmVjdGFuZ2xlIGlzICh4LHksdyxoKSB0aGVuIHJvdyAwIGlzIHJlYWxseSByb3cK
ICAgICAvLyB5LCBhbmQgZWFjaCByb3cgZ29lcyBmcm9tIHggdG8geCt3LgorICAgIHJvd0VuZCAt
PSBtX3JlYWRlci0+ZnJhbWVYT2Zmc2V0KCk7CisgICAgQVNTRVJUKG1fcmVhZGVyLT5mcmFtZVhP
ZmZzZXQoKSArIChyb3dFbmQgLSByb3dCdWZmZXIpID09IG1fc2l6ZS53aWR0aCgpKTsKICAgICB1
bnNpZ25lZCBkc3RQb3MgPSAobV9yZWFkZXItPmZyYW1lWU9mZnNldCgpICsgcm93TnVtYmVyKSAq
IG1fc2l6ZS53aWR0aCgpICsgbV9yZWFkZXItPmZyYW1lWE9mZnNldCgpOwogICAgIHVuc2lnbmVk
KiBkc3QgPSBidWZmZXIuYnl0ZXMoKS5kYXRhKCkgKyBkc3RQb3M7CiAgICAgdW5zaWduZWQqIGN1
cnJEc3QgPSBkc3Q7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>11757</attachid>
            <date>2006-12-06 13:06:41 -0800</date>
            <delta_ts>2006-12-07 15:37:21 -0800</delta_ts>
            <desc>better patch with layout test</desc>
            <filename>gif-4.patch</filename>
            <type>text/plain</type>
            <size>9250</size>
            <attacher name="Dex Deacon">occupant4</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDE4MDQyKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMDYtMTItMDYgIERleCBEZWFjb24gIDxvY2N1
cGFudDRAZ21haWwuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogQ2hhbmdlTG9nOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2FuaW1hdGVkLWdp
Zi13aXRoLW9mZnNldHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2ltYWdl
cy9hbmltYXRlZC1naWYtd2l0aC1vZmZzZXRzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
aW1hZ2VzL3Jlc291cmNlcy9hbmltYXRlZC1naWYtd2l0aC1vZmZzZXRzLmdpZjogQWRkZWQuCisK
IDIwMDYtMTItMDUgIFJvYiBCdWlzICA8YnVpc0BrZGUub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IE1pdHouCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9hbmltYXRlZC1naWYtd2l0
aC1vZmZzZXRzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2lt
YWdlcy9hbmltYXRlZC1naWYtd2l0aC1vZmZzZXRzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2FuaW1hdGVkLWdpZi13aXRoLW9mZnNldHMtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE3IEBACitsYXllciBhdCAoMCwwKSBz
aXplIDgwMHg2MDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0
ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4
MDB4NjAwCisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsOCkgc2l6ZSA3ODR4NTc2CisgICAg
ICBSZW5kZXJCbG9jayB7UH0gYXQgKDAsMCkgc2l6ZSA3ODR4MTA0CisgICAgICAgIFJlbmRlclRl
eHQgeyN0ZXh0fSBhdCAoMCw4Nikgc2l6ZSA5NngxOAorICAgICAgICAgIHRleHQgcnVuIGF0ICgw
LDg2KSB3aWR0aCA5NjogIkxheW91dCB0ZXN0IGZvciAiCisgICAgICAgIFJlbmRlcklubGluZSB7
QX0gYXQgKDAsMCkgc2l6ZSA0MHgxOCBbY29sb3I9IzAwMDBFRV0KKyAgICAgICAgICBSZW5kZXJU
ZXh0IHsjdGV4dH0gYXQgKDk2LDg2KSBzaXplIDQweDE4CisgICAgICAgICAgICB0ZXh0IHJ1biBh
dCAoOTYsODYpIHdpZHRoIDQwOiAiMTE3NjAiCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBh
dCAoMTM2LDg2KSBzaXplIDIwMXgxOAorICAgICAgICAgIHRleHQgcnVuIGF0ICgxMzYsODYpIHdp
ZHRoIDg6ICIuICIKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMTQ0LDg2KSB3aWR0aCAxOTM6ICJJ
ZiBpdCBkb2Vzbid0IGNyYXNoLCB3ZSdyZSBnb29kLiAiCisgICAgICAgIFJlbmRlckltYWdlIHtJ
TUd9IGF0ICgzMzcsMCkgc2l6ZSAxMDB4MTAwCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBh
dCAoMCwwKSBzaXplIDB4MAorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6
ZSAweDAKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2FuaW1hdGVkLWdpZi13aXRoLW9m
ZnNldHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9hbmltYXRl
ZC1naWYtd2l0aC1vZmZzZXRzLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2ltYWdlcy9hbmltYXRlZC1naWYtd2l0aC1vZmZzZXRzLmh0bWwJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsNiBAQAorPGJvZHk+Cis8cD5MYXlvdXQgdGVzdCBmb3IKKzxhIGhyZWY9Imh0dHA6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNzYwIj4xMTc2MDwvYT4uICBJZiBpdAor
ZG9lc24ndCBjcmFzaCwgd2UncmUgZ29vZC4KKzxpbWcgc3JjPSJyZXNvdXJjZXMvYW5pbWF0ZWQt
Z2lmLXdpdGgtb2Zmc2V0cy5naWYiPgorPC9ib2R5PgpJbmRleDogV2ViQ29yZS9DaGFuZ2VMb2cK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDQyKQorKysgV2Vi
Q29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAorMjAwNi0xMi0w
NiAgRGV4IERlYWNvbiAgPG9jY3VwYW50NEBnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9n
aWYvR0lGSW1hZ2VEZWNvZGVyLmNwcDoKKwllbnN1cmUgd2UgZG9uJ3Qgd3JpdGUgcGFzdCB0aGUg
ZW5kIG9mIHRoZSBpbWFnZSBidWZmZXIgd2hlbiB0aGUgb2Zmc2V0CisJaXMgbm9uemVyby4gIGFs
c28gZml4IHRoZSB3YXkgd2UgY29tcG9zaXRlIGZyYW1lcyB3aGVuIGFuaW1hdGluZy4KKyAgICAg
ICAgKFdlYkNvcmU6OkdJRkltYWdlRGVjb2Rlcjo6aW5pdEZyYW1lQnVmZmVyKToKKyAgICAgICAg
KFdlYkNvcmU6OkdJRkltYWdlRGVjb2Rlcjo6aGF2ZURlY29kZWRSb3cpOgorCiAyMDA2LTEyLTA1
ICBKb2huIFN1bGxpdmFuICA8c3VsbGl2YW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IEJldGgKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRklt
YWdlRGVjb2Rlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNv
ZGVycy9naWYvR0lGSW1hZ2VEZWNvZGVyLmNwcAkocmV2aXNpb24gMTgwMjIpCisrKyBXZWJDb3Jl
L3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZURlY29kZXIuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yMDEsNiArMjAxLDEzIEBAIHZvaWQgR0lGSW1hZ2VEZWNvZGVyOjppbml0RnJh
bWVCdWZmZXIoUkcKICAgICAvLyBJbml0aWFsaXplIHRoZSBmcmFtZSByZWN0IGluIG91ciBidWZm
ZXIuCiAgICAgSW50UmVjdCBmcmFtZVJlY3QobV9yZWFkZXItPmZyYW1lWE9mZnNldCgpLCBtX3Jl
YWRlci0+ZnJhbWVZT2Zmc2V0KCksCiAgICAgICAgICAgICAgICAgICAgICAgbV9yZWFkZXItPmZy
YW1lV2lkdGgoKSwgbV9yZWFkZXItPmZyYW1lSGVpZ2h0KCkpOworCisgICAgLy8gTWFrZSBzdXJl
IHRoZSBmcmFtZVJlY3QgZG9lc24ndCBleHRlbmQgcGFzdCB0aGUgYm90dG9tLXJpZ2h0IG9mIHRo
ZSBidWZmZXIuCisgICAgaWYgKGZyYW1lUmVjdC5yaWdodCgpID4gbV9zaXplLndpZHRoKCkpCisg
ICAgICAgIGZyYW1lUmVjdC5zZXRXaWR0aChtX3NpemUud2lkdGgoKSAtIG1fcmVhZGVyLT5mcmFt
ZVhPZmZzZXQoKSk7CisgICAgaWYgKGZyYW1lUmVjdC5ib3R0b20oKSA+IG1fc2l6ZS5oZWlnaHQo
KSkKKyAgICAgICAgZnJhbWVSZWN0LnNldEhlaWdodChtX3NpemUuaGVpZ2h0KCkgLSBtX3JlYWRl
ci0+ZnJhbWVZT2Zmc2V0KCkpOworCiAgICAgYnVmZmVyLnNldFJlY3QoZnJhbWVSZWN0KTsKIAog
ICAgIGJvb2wgaXNTdWJSZWN0ID0gKGZyYW1lUmVjdC54KCkgPiAwIHx8IGZyYW1lUmVjdC55KCkg
PiAwIHx8CkBAIC0yNDUsMjAgKzI1MiwyOSBAQCB2b2lkIEdJRkltYWdlRGVjb2Rlcjo6aW5pdEZy
YW1lQnVmZmVyKFJHCiAgICAgICAgICAgICAvLyB0aGUgYXJlYSBvY2N1cGllZCBieSB0aGUgcHJl
dmlvdXMgZnJhbWUgdGhhdCBkb2VzIG5vdCBvdmVybGFwIHdpdGgKICAgICAgICAgICAgIC8vIHRo
ZSBuZXcgZnJhbWUuCiAgICAgICAgICAgICBpZiAocHJldmlvdXNCdWZmZXItPnJlY3QoKSAhPSBm
cmFtZVJlY3QpIHsKLSAgICAgICAgICAgICAgICAvLyBXZSBoYXZlIHRvIGNsZWFyIG91dCB0aGUg
ZW50aXJlIHByZXZpb3VzIHN1YmZyYW1lLgorICAgICAgICAgICAgICAgIC8vIFdlIGhhdmUgdG8g
cmVzdG9yZSB0aGUgZW50aXJlIHByZXZpb3VzIHN1YmZyYW1lIHdpdGggdGhlIGZpcnN0IGZyYW1l
J3MgY29udGVudHMuCisgICAgICAgICAgICAgICAgUkdCQTMyQnVmZmVyKiBmaXJzdEJ1ZmZlciA9
ICZtX2ZyYW1lQnVmZmVyQ2FjaGVbMF07CiAgICAgICAgICAgICAgICAgYm9vbCBzYXdBbHBoYSA9
IGJ1ZmZlci5oYXNBbHBoYSgpOwogICAgICAgICAgICAgICAgIEludFJlY3QgcHJldlJlY3QgPSBw
cmV2aW91c0J1ZmZlci0+cmVjdCgpOwogICAgICAgICAgICAgICAgIHVuc2lnbmVkIGVuZCA9IHBy
ZXZSZWN0LnkoKSArIHByZXZSZWN0LmhlaWdodCgpOwogICAgICAgICAgICAgICAgIHVuc2lnbmVk
KiBzcmM7CisKKyAgICAgICAgICAgICAgICAvLyBHaXZlbiB0aGF0IHdlIGFsbG9jYXRlIGJ1ZmZl
cnMgdG8gYmUgdGhlIHNhbWUgc2l6ZSBhcyBwcmV2aW91cyBidWZmZXJzLAorICAgICAgICAgICAg
ICAgIC8vIEkgdGhpbmsgdGhpcyBhc3NlcnQgc2hvdWxkIGJlIHZhbGlkLgorICAgICAgICAgICAg
ICAgIEFTU0VSVChJbnRSZWN0KEludFBvaW50KDAsMCksIG1fc2l6ZSkuY29udGFpbnMoZmlyc3RC
dWZmZXItPnJlY3QoKSkpOworCiAgICAgICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gcHJl
dlJlY3QueSgpOyBpIDwgZW5kOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQq
IGN1cnIgPSBidWZmZXIuYnl0ZXMoKS5kYXRhKCkgKyAoaSAqIG1fc2l6ZS53aWR0aCgpICsgcHJl
dlJlY3QueCgpKTsKKyAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQqIG9yaWcgPSBmaXJzdEJ1
ZmZlci0+Ynl0ZXMoKS5kYXRhKCkgKyAoaSAqIG1fc2l6ZS53aWR0aCgpICsgcHJldlJlY3QueCgp
KTsKICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQqIGVuZCA9IGN1cnIgKyBwcmV2UmVjdC53
aWR0aCgpOwotICAgICAgICAgICAgICAgICAgICB3aGlsZSAoY3VyciAhPSBlbmQpIHsKKyAgICAg
ICAgICAgICAgICAgICAgdW5zaWduZWQqIG9yaWdFbmQgPSBvcmlnICsgZmlyc3RCdWZmZXItPnJl
Y3QoKS53aWR0aCgpOworCisgICAgICAgICAgICAgICAgICAgIHdoaWxlIChjdXJyICE9IGVuZCAm
JiBvcmlnICE9IG9yaWdFbmQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghc2F3QWxw
aGEpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYXdBbHBoYSA9IHRydWU7CiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyLnNldEhhc0FscGhhKHRydWUpOwogICAgICAg
ICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAgICAgUkdCQTMyQnVmZmVy
OjpzZXRSR0JBKCpjdXJyKyssIDAsIDAsIDAsIDApOworICAgICAgICAgICAgICAgICAgICAgICAg
KmN1cnIrKyA9ICpvcmlnKys7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICB9CkBAIC0zMDEsMTIgKzMxNywxMyBAQCB2b2lkIEdJRkltYWdlRGVj
b2Rlcjo6aGF2ZURlY29kZWRSb3codW5zCiAgICAgLy8geSwgYW5kIGVhY2ggcm93IGdvZXMgZnJv
bSB4IHRvIHgrdy4KICAgICB1bnNpZ25lZCBkc3RQb3MgPSAobV9yZWFkZXItPmZyYW1lWU9mZnNl
dCgpICsgcm93TnVtYmVyKSAqIG1fc2l6ZS53aWR0aCgpICsgbV9yZWFkZXItPmZyYW1lWE9mZnNl
dCgpOwogICAgIHVuc2lnbmVkKiBkc3QgPSBidWZmZXIuYnl0ZXMoKS5kYXRhKCkgKyBkc3RQb3M7
CisgICAgdW5zaWduZWQqIGRzdEVuZCA9IGRzdCArIG1fc2l6ZS53aWR0aCgpIC0gbV9yZWFkZXIt
PmZyYW1lWE9mZnNldCgpOwogICAgIHVuc2lnbmVkKiBjdXJyRHN0ID0gZHN0OwogICAgIHVuc2ln
bmVkIGNoYXIqIGN1cnJlbnRSb3dCeXRlID0gcm93QnVmZmVyOwogICAgIAogICAgIGJvb2wgaGFz
QWxwaGEgPSBtX3JlYWRlci0+aXNUcmFuc3BhcmVudCgpOyAKICAgICBib29sIHNhd0FscGhhID0g
ZmFsc2U7Ci0gICAgd2hpbGUgKGN1cnJlbnRSb3dCeXRlICE9IHJvd0VuZCkgeworICAgIHdoaWxl
IChjdXJyZW50Um93Qnl0ZSAhPSByb3dFbmQgJiYgY3VyckRzdCA8IGRzdEVuZCkgewogICAgICAg
ICBpZiAoKCFoYXNBbHBoYSB8fCAqY3VycmVudFJvd0J5dGUgIT0gbV9yZWFkZXItPnRyYW5zcGFy
ZW50UGl4ZWwoKSkgJiYgKmN1cnJlbnRSb3dCeXRlIDwgY29sb3JNYXBTaXplKSB7CiAgICAgICAg
ICAgICB1bnNpZ25lZCBjb2xvckluZGV4ID0gKmN1cnJlbnRSb3dCeXRlICogMzsKICAgICAgICAg
ICAgIHVuc2lnbmVkIHJlZCA9IGNvbG9yTWFwW2NvbG9ySW5kZXhdOwpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9pbWFnZXMvcmVzb3VyY2VzL2FuaW1hdGVkLWdpZi13aXRoLW9mZnNldHMuZ2lmCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KQ2Fubm90IGRpc3BsYXk6IGZpbGUgbWFya2VkIGFzIGEgYmluYXJ5IHR5cGUuCnN2
bjptaW1lLXR5cGUgPSBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KClByb3BlcnR5IGNoYW5nZXMg
b246IExheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9hbmltYXRlZC1naWYtd2l0aC1v
ZmZzZXRzLmdpZgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fCk5hbWU6IHN2bjptaW1lLXR5cGUKICAgKyBhcHBsaWNhdGlv
bi9vY3RldC1zdHJlYW0KCgpSMGxHT0RsaFpBQmtBUFFTQUI2US95V1UvaXlZL0RHYit6ZWYrajZq
K1QraytVMnM5a0NrK1ZHdTlWV3g5RjIxODJLNDhtZTc4WExDCjczWEU3bnJHN24vSjdJZk82NFRN
N0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNINUJBUUEK
QUFBQUlmOExUa1ZVVTBOQlVFVXlMakFEQVFBQUFDd0FBQUFBWkFCa0FBQUYvcUFram1ScG5taXFy
bXpydm5Bc3ozUnQzM2l1NzN6dgovOENnY0Vnc0dpVVJCeU9CR0FRQTBNQUFrV0E0SnNjc2hGR0Fl
cjlnY0lFQnlRSWhpckI2SFZhVXpibUdnRTJ2QXdRTk9HMnlzUHZ0CkMxaDZMZ3gvaG5ZTWd5c09U
NGVPYkFFT2lpWVRCNCtYZEFlVEl3K1lublFQazRXZnBHcUplcGFscW1DYVpnaXJzRjhGUnhNRXNi
ZFEKQklKRHRyaTR1a05kdnI2elFhbkR2cTArbzhqRHB6eWR6YzJoT3hQUzF6ekgxOFBLTnc3YjE1
STRqZURJQVRqTTVjalBNOWJxMTdzeQpmZS9TQ3pYMDJ6UU4rTmQ1TW5QOG1nbVFBU0hndFRjdjBo
aHNwaURHUW13dkNqNXNocEJGdW9tNDJLMFFocEhZaTQ3TlhFUUFpU3hDCmkyOGsvbjJKVzNFeDVT
cU5LQks0eEpXZ0JjZVpxeEMwR0lBejFvQVc1SHFXT3NkQ2FLd1dSbUVoVGFvS0tGTlNSRmZ3Zk9y
cEo0dFgKVkRFVld5RXo2NldhRnIxZWdua0NwZGhESzFXNE8ydkk1RksyZjE3Y2hNdG1hMWk2ZGNp
aWtJaVhUY1dpZmRuRVVCZ1lURU1ZZkF0NworZHNDb09JN00vWTlCdUF2eGxyRjhXRE1LMnh2eitQ
TU1WcXkxUXNqS051b05zekNUV3REbTlodU55NkxCVzBqbWxocVBFUWJKWDNECnRWSFlQZWIyTkVD
a2wxQmdRMm9kenlLOG93SGFRbnhQQkc1RWQwRGVSR3cveEQxSnVyb0QwUFV3d2hkcEV3cnJ6c3ly
M2R5c3Mzb1cKY256aENmLytCQnBZYnVyWDJOTGN6aGpHK3RVd2dSSk1PT0dGRkFaVUZPR0FXd0Uy
Nk9DREVFWW80WVFVVm1paEJDRUFBQ0g1QkF3QgpBQUFBTENNQUtBQWdBQ0FBZ3dBQUFBRC8vd0NB
QUxJaUlxQlNMZjhBLy84QUFDNkxWLy8vLy8vL0FBQUEvd0FBQUFBQUFBQUFBQUFBCkFBQUFBQVR1
VU1sSnE3MDRnODFCL3ROMkFDTWdrQnhva2FWd2pJSjdscXFFa2pHYUgvc0pscU9EWVFBZ0Rnd0cz
TW5rd1loR1IyUHkKbUN3aWNjMEtpbWdsWHFuVHF6VTdnVXFIZ09zaElFYUd5UktqTkxBSjBOZDJP
dnR0a1pQc2YzZDVlb0JIY0FwR1FZQjRJNE1BZVgrSApUeXdCSXdrSkJBQ1hDWUdkRjVNSGw1bVht
cHlsbkd1SE5rR1pCS1N2bks2eHBocXRyUVZFQlFBRnVwdXVHeUFBbVFOR3VMbTR2S1dxCkszNjZI
TWk3dWpVMlJoc0ltNlFEMHRNMndnVGYySnZMd2QvbDRlTXEzdWFrNk9ubHNzRGNUdXZ0MHgwcDhr
NzM5ZlloK1I5WitOWFkKSnpBWU1UY0ZBUjZzOGs4ZnZnOFJBQUFoK1FRTUFRQUFBQ3hCQUR3QUlB
QWdBSUlBQUFDeUlpSyt2cjcvQUFELy8vOXdnSkFBQUFBQQpBQUFEMnppNjNQNHdqZ0JBa05pQklr
UUJXUmh3Qk9GZG9SSlFGUW9JWlNtQWFtVTU2MWJzOXh1YnRNcnVjNnR0ZnJNSnlmUVpiR0N4Cno0
VlNLSDJpbDZjSE5Qb0JyQllmb1VLNGpyTzJ5WGRjSFlOWnh3OUo2dVN1UytSeE1XZnIrL1Z3Zmln
UlZEeE9ZM1U4Z3hoVU1UWjYKYldWRkdFZHVlcENXVFJsM2VCUm5sWGdoZDNSZlFYYzBsRzFGcFdw
UVNSa1VVSDQyVUhRaVlqK1NmWXV3b0xtMktRb2JzNVdhd1U1UQprcGpHd1kxV1JGWE16VTllaXNj
TWZFdkExOEpWRlREUzNLVkVvZHdNUW5qbDV0MjY2dXRmVjJ1bzYxZmtCYnptWnNNWkNRQWgrUVFN
CkFRQUFBQ3hjQUZBQUlBQWdBSUlBQUFBQS8vOGVrUC8vLy85d2dKQWdzcW9BQVA4QUFBQUQvamk2
M0Q0QXZBbmxpbFlCSVRMVkhBWUUKUkNCeTNjZHNXMGUrUkxzWjN0VFNySWwxZ0NIUUtnaktnQVBF
Y0Q0T2tMSkRLU01oSnpIeWlKUmFROW96UXB6R01oRllyMXNVWFRHbApNeVNnU0l0a1VCNE1WcEFB
Q29HQ2doUVBuME5HTHdXRGRubUdRanhwWWpJRWc0NTJlSkV5YzRwWFU0NkVhNUVtSVcyVWZKZVlr
SVoxCklYbDdpb1NoajVxR01wc0xvcXVaZDZTVG0zbXlOSmgxclhpdnBMbVBzNzIxa3FhNHZHTjNv
cjZjSFp1UnVzeXN4bm0zaHNLcXU4MGoKbThEUjA4b1EwZGg0Mm5YRWhkOGgwZWpMNDJISExzbmlq
MkMxNEtUMlZBNU4zdG1VVGVuSHBGMHdnVXVDWUFqMmptQ1FDOWJ1MVhpNApZc1MxaVJTck9GU1JB
UUFBSWZrRURBRUFBQUFzS0FCVkFDQUFJQUNCdnI2Ky93QUEvNlVBLy84QUFyaU1qeml4emQvR1No
TmFKMk9XCnFUK0RYUndIWHFhMnBaV25uT0phaHRpb2JteUZ1L01oNjNYcUFYUUd3Z3RnUnFUd2RB
d2FrTFdNTVVuVDE0OWFER1NMeE1hUjhlMkMKbGRKZXB2a2NScXVScGZtRlZoMjJjeEEzak05a1Mr
V1QwMFpuY0dmblZRaTI4aWJ6bHlaUVo5QW9DQ0pnT0RBNTF0S25pSElXcUdWSAplQmphbFpQcFUr
T1oxU2lVcWlWVzJSVUd1WmFJRnNmcDZIbnBtaGZxeGdheGVLQ2FHekRNTlhrVUMwdjJ1OG5ST1Nq
S0t6YmIvRk1BCkFEcz0KCg==
</data>
<flag name="review"
          id="4253"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>