Closed Bug 536065 Opened 15 years ago Closed 15 years ago

textarea on MozillaZine Forums has scrolling corruption

Categories

(Core :: Layout: Form Controls, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla1.9.3a1
Tracking Status
status1.9.2 --- .4-fixed

People

(Reporter: sparky, Assigned: karlt)

References

Details

(Whiteboard: [fixed-lorentz])

Attachments

(2 files)

User-Agent:       Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.3a1pre) Gecko/20091220 Minefield/3.7a1pre Firefox/3.7
Build Identifier: 

Starting with the 2009-12-14-03 trunk build, I've noticed scrolling corruption in the textareas on the MozillaZine forums.

enabling/disabling HTML5 has no effect. Happens on both x86 and x86_64

Reproducible: Always
Attached file Test case
I'm not sure whether or not this test case is minimal.

Happens with scrolling by mousewheel, cursor, and scrollbar. Mousing-out and unfocusing the textarea appears to fix the corruption.
roc, could this be your composite() change?
Could be, although that should only have resulted in temporary changes.
I can't reproduce this with the 20091220 nightly in my Windows VM. Could it be driver specific? Can you try setting your display mode to some generic SVGA mode and see if the problem goes away?
(In reply to comment #4)
> I can't reproduce this with the 20091220 nightly in my Windows VM. Could it be
> driver specific? Can you try setting your display mode to some generic SVGA
> mode and see if the problem goes away?

I doubt it has anything to do with the drivers, as it wasn't there on the 2009-12-13 Linux build, and it was there on the 2009-12-14 build.

But I tried setting my resolution to 1024x768 and it didn't help.
Oh wait, this is Linux. Sorry, will retest.
I definitely see the bug on Linux. I probably should just back out the change, but I'll first check to see if the rest of the scrolling patches fix the bug.
Adding the rest of the scrolling patches doesn't fix the bug. We'll have to back out the change that caused the regression.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Fixed by backout of offending patch.
http://hg.mozilla.org/mozilla-central/rev/80bd9c61fbff
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
I'd like to agree, but I still see scrolling corruption.

Also, now that I think about it, that couldn't have possibly been the cause. In  Bug 526394 you mentioned that you checked it in on 2009-12-19, but the corruption showed up in the 2009-12-14 build.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
What's in the real regression range, then?
(In reply to comment #11)
> What's in the real regression range, then?

From comment 5:
> I doubt it has anything to do with the drivers, as it wasn't there on the
> 2009-12-13 Linux build, and it was there on the 2009-12-14 build.

Using the source stamps from those linux nightlies gives this range:
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=3ff17b03644e&tochange=44c392db6672
Yes, seems to be something from bug 518506.
Looks like empty rectangles might be confusing pixman.

Breakpoint 37, nsWindow::Scroll (this=0x7f470b2a69b0, aDelta=@0x7fff4feb7d50, 
    aDestRects=@0x7fff4feb7c00, aConfigurations=@0x7fff4feb7d10)
    at /home/karl/moz/dev/widget/src/gtk2/nsWindow.cpp:1916
(gdb) p aDestRects.Length()
$270 = 4
(gdb) p aDestRects[0]
$271 = (const nsIntRect &) @0x7f470b11bec8: {
  x = 11, 
  y = 42, 
  width = 534, 
  height = 15
}
(gdb) p aDestRects[1]
$272 = (const nsIntRect &) @0x7f470b11bed8: {
  x = 11, 
  y = 57, 
  width = 1, 
  height = 0
}
(gdb) p aDestRects[2]
$273 = (const nsIntRect &) @0x7f470b11bee8: {
  x = 12, 
  y = 57, 
  width = 50, 
  height = 210
}
(gdb) p aDestRects[3]
$274 = (const nsIntRect &) @0x7f470b11bef8: {
  x = 62, 
  y = 57, 
  width = 483, 
  height = 0
}
(gdb) p blitRegion
$275 = {
  <nsAutoRefBase<pixman_region32>> = {
    <nsSimpleRef<pixman_region32>> = {
      <pixman_region32> = {
        extents = {
          x1 = 11, 
          y1 = 42, 
          x2 = 545, 
          y2 = 267
        }, 
        data = 0x7f470b276970
      }, <No data fields>}, <No data fields>}, <No data fields>}
(gdb) p *blitRegion->data
$276 = {
  size = 6, 
  numRects = 3
}
(gdb) p *(pixman_box32*)(blitRegion->data + 1)@3
$283 = {{
    x1 = 11, 
    y1 = 42, 
    x2 = 545, 
    y2 = 57
  }, {
    x1 = 11, 
    y1 = 57, 
    x2 = 12, 
    y2 = 57
  }, {
    x1 = 12, 
    y1 = 57, 
    x2 = 62, 
    y2 = 57
  }}

(The empty rectangles come from rounding non-empty appunit rectangles to pixels.)
Blocks: 518506
Assignee: nobody → karlt
Attachment #419188 - Flags: review?(roc)
Here's an additional set of steps to reproduce that are also fixed by the patch attached here.  (How'd I get here?  I bisected the regression range using nightlies and found it was http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=3ff17b03644e&tochange=44c392db6672 , found bug 518506 in that range as the most obvious candidate, looked at its dependencies, found this bug with a patch, and tested the patch.)

Steps to reproduce:
 1. load http://maps.google.com/
 2. enter "pizza in 94301" in the search field, or any other search likely to produce a decent length list of results (more than a page)
 3. drag the scrollbar separating the results from the map downward

Actual results: after scrolling the top of the results off, there's no blitting in the middle while scrolling, only repainting at the edges.

Expected results: everything scrolls
http://hg.mozilla.org/mozilla-central/rev/ba8780007126
Status: REOPENED → RESOLVED
Closed: 15 years ago15 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9.3a1
Blanket approval for Lorentz merge to mozilla-1.9.2
a=beltzner for 1.9.2.4 - please make sure to mark status1.9.2:.4-fixed
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: