Hi Max,

You and I made the same changes, except that I have one additional change that you recommended earlier today. Can you check this patch and see if it is needed.

Thanks!

Phil


$ svn diff LzSprite.js
Index: LzSprite.js ===================================================================
--- LzSprite.js (revision 2383)
+++ LzSprite.js (working copy)
@@ -667,13 +667,15 @@

 // These three methods are called by the image pool
 LzSprite.prototype.__destroyImage = function (img) {
-    if (img.sizer) {
+    if (LzSprite.prototype.quirks.ie_alpha_image_loader && img.sizer) {
+        if (img.sizer.tId) clearTimeout(img.sizer.tId);
         LzSprite.prototype.__discardElement(img.sizer);
         img.sizer.onload = null;
         img.sizer.onloadforeal = null;
         img.sizer = null;
     }
     if (img) LzSprite.prototype.__discardElement(img);
+    img = null;
 }

 LzSprite.prototype.__gotImage = function(url) {
@@ -699,7 +701,7 @@
             im.sizer.onload = function() {
                 im.style.display = '';
// This resolves all sorts of timing-related image loading bugs

-                setTimeout(this.onloadforeal, 1);
+                im.sizer.tId = setTimeout(this.onloadforeal, 1);
             }
             im.sizer.onloadforeal = function() {
                 im.owner.__imgonload(im.sizer);
@@ -789,7 +791,8 @@
         }
     }
     if (this.__ImgPool) this.__ImgPool.destroy();
-    if (this.__LZimg) this.__discardElement(this.__LZimg);
+    if (this.__LZimg) LzSprite.prototype.__destroyImage(this.__LZimg);
+
     if (this.__LZclick) {
         this.__setClickable(false, this.__LZclick);
         this.__discardElement(this.__LZclick);




Here's an updated patch:

@@ -667,13 +667,15 @@

  // These three methods are called by the image pool
  LzSprite.prototype.__destroyImage = function (img) {
-    if (img.sizer) {
+    if (LzSprite.prototype.quirks.ie_alpha_image_loader && img.sizer) {
+        if (img.sizer.tId) clearTimeout(img.sizer.tId);
          LzSprite.prototype.__discardElement(img.sizer);
          img.sizer.onload = null;
          img.sizer.onloadforeal = null;
          img.sizer = null;
      }
      if (img) LzSprite.prototype.__discardElement(img);
+    img = null;
  }

  LzSprite.prototype.__gotImage = function(url) {
@@ -699,7 +701,7 @@
              im.sizer.onload = function() {
                  im.style.display = '';
                  // This resolves all sorts of timing-related image
loading bugs-                setTimeout(this.onloadforeal, 1);
+                im.sizer.tId = setTimeout(this.onloadforeal, 1);
              }
              im.sizer.onloadforeal = function() {
                  im.owner.__imgonload(im.sizer);

-Max

Reply via email to