51.09 KB, image/png
249 bytes, text/html
2.63 KB, text/plain
3.98 KB, patch
|Details | Diff | Splinter Review|
When the firebird start page first loads (or shift+reload), I see two white lines in the screen shot image on the right. I'm just guessing by putting this in Image: Layout; I'm sure it'll turn out to be some insane twip rounding bug.
Created attachment 133663 [details] reduced testcase Here are things I found are critical to triggering the bug: - the transitional doctype, presumably to trigger quirks mode - the h3 text above the image - the height on the image (causing it to be scaled) - the image loading from the server (presumably to slow down the image load so that we don't draw all of it at once) any ideas?
Created attachment 133667 [details] log of calls to nsImageGTK::Draw() when bug happens This is from enabling TRACE_IMAGE_ALLOCATION in nsImageGTK.cpp. (I'm still trying to understand why the destination y coordinate is an increasing negative number)
Created attachment 156072 [details] [diff] [review] patch This should make things better. The problem is that when we get new decoded rows in the source image, we don't necessarily invalidate as many rows onscreen as we need to (for scaled images). This patch makes us invalidate from (N-1 * F) to (N+1 * F) when row N is received (F is the scaling factor). tor tells me this is a mathematical bound on the nearest-neighbor scaling function used in XlibRectStretch (nsImageGTK.cpp), so it should cover any row that could possibly be drawn using the newly-decoded source row. I tested this and didn't find any Tp regressions.
Attachment #156072 - Attachment is obsolete: true
Attachment #157167 - Flags: superreview?(tor)
Comment on attachment 157167 [details] [diff] [review] merged to the trunk requesting 1.7 branch approval
Attachment #157167 - Flags: approval1.7.3?
Status: NEW → ASSIGNED
Comment on attachment 157167 [details] [diff] [review] merged to the trunk a=mkaply
Attachment #157167 - Flags: approval1.7.x? → approval1.7.x+
checked in on aviary branch and 1.7 branch
Status: ASSIGNED → RESOLVED
Last Resolved: 15 years ago
Keywords: fixed-aviary1.0, fixed1.7
Resolution: --- → FIXED
should have been fixed1.7.x, not fixed1.7
Keywords: fixed1.7 → fixed1.7.x
You need to log in before you can comment on or make changes to this bug.