Closed Bug 17763 Opened 20 years ago Closed 20 years ago

Scrolling down with Down-arrow crashes

Categories

(Core :: XUL, defect, P3, critical)

defect

Tracking

()

VERIFIED FIXED

People

(Reporter: dead, Assigned: alecf)

Details

To reproduce:

Make sure you have enough content in the sidebar (I'm using bookmarks) so there
is something to scroll down to.  Hit down-arrow until the bottommost visible
element is selected.  When I hit down-arrow again, I get the crash below.  I'm
not sure if this is related to the fact that when I expand the bookmark folders,
the scrollbar does not update to show that there is more content to scroll down
to.

#0  0x86739ec in ?? ()
#1  0x41016ac1 in nsTreeFrame::HandleEvent (this=0x85796d8,
    aPresContext=@0x8656768, aEvent=0xbffff0cc, aEventStatus=@0xbfffeff8)
    at nsTreeFrame.cpp:220
#2  0x41015870 in nsTreeOuterFrame::HandleEvent (this=0x8579680,
    aPresContext=@0x8656768, aEvent=0xbffff0cc, aEventStatus=@0xbfffeff8)
    at nsTreeOuterFrame.cpp:79
#3  0x40e6fd0c in PresShell::HandleEvent (this=0x86b8788, aView=0x8680960,
    aEvent=0xbffff0cc, aEventStatus=@0xbfffeff8) at nsPresShell.cpp:2238
#4  0x412def29 in nsView::HandleEvent (this=0x8680960, event=0xbffff0cc,
    aEventFlags=28, aStatus=@0xbfffeff8, aHandled=@0xbfffef9c)
    at nsView.cpp:833
#5  0x412eac83 in nsViewManager::DispatchEvent (this=0x8680778,
    aEvent=0xbffff0cc, aStatus=@0xbfffeff8) at nsViewManager.cpp:1737
#6  0x412dd044 in HandleEvent (aEvent=0xbffff0cc) at nsView.cpp:62
#7  0x4053c580 in nsWidget::DispatchEvent (this=0x86b9600, aEvent=0xbffff0cc,
    aStatus=@0xbffff090) at nsWidget.cpp:1275
#8  0x4053c30c in nsWidget::DispatchWindowEvent (this=0x86b9600,
    event=0xbffff0cc) at nsWidget.cpp:1186
#9  0x40540ea8 in nsWindow::OnKey (this=0x86b9600, aEvent=@0xbffff0cc)
    at nsWindow.cpp:799
#10 0x4052fb99 in handle_key_press_event (w=0x86b9828, event=0x85a7f80,
    p=0x86b9600) at nsGtkEventHandler.cpp:774
#11 0x405f2d69 in gtk_marshal_BOOL__POINTER () from /usr/lib/libgtk-1.2.so.0
#12 0x40620bed in gtk_handlers_run () from /usr/lib/libgtk-1.2.so.0
#13 0x40620032 in gtk_signal_real_emit () from /usr/lib/libgtk-1.2.so.0
#14 0x4061e185 in gtk_signal_emit () from /usr/lib/libgtk-1.2.so.0
#15 0x4065375c in gtk_widget_event () from /usr/lib/libgtk-1.2.so.0
#16 0x4065ad0d in gtk_window_key_press_event () from /usr/lib/libgtk-1.2.so.0
#17 0x405f2d69 in gtk_marshal_BOOL__POINTER () from /usr/lib/libgtk-1.2.so.0
#18 0x4062006b in gtk_signal_real_emit () from /usr/lib/libgtk-1.2.so.0
#19 0x4061e185 in gtk_signal_emit () from /usr/lib/libgtk-1.2.so.0
#20 0x4065375c in gtk_widget_event () from /usr/lib/libgtk-1.2.so.0
#21 0x405f2c46 in gtk_propagate_event () from /usr/lib/libgtk-1.2.so.0
#22 0x405f1f1a in gtk_main_do_event () from /usr/lib/libgtk-1.2.so.0
#23 0x4069d5cb in gdk_event_dispatch () from /usr/lib/libgdk-1.2.so.0
#24 0x406c8be6 in g_main_dispatch () from /usr/lib/libglib-1.2.so.0
#25 0x406c91a1 in g_main_iterate () from /usr/lib/libglib-1.2.so.0
#26 0x406c9341 in g_main_run () from /usr/lib/libglib-1.2.so.0
#27 0x405f1859 in gtk_main () from /usr/lib/libgtk-1.2.so.0
#28 0x405265ff in nsAppShell::Run (this=0x809fed8) at nsAppShell.cpp:395
#29 0x403b0c41 in nsAppShellService::Run (this=0x809d390)
    at nsAppShellService.cpp:482
#30 0x804b588 in main1 (argc=1, argv=0xbffffaf4) at nsAppRunner.cpp:577
#31 0x804b7f9 in main (argc=1, argv=0xbffffaf4) at nsAppRunner.cpp:667
Slamm, I'm not sure if you own that scrollbar or not but if not, I bet you know who does.
Assignee: trudelle → hyatt
looks like the selection wraps around to the first item just before crashing.
Why do you think it is scrollbar-related?  I'm guessing it is more the tree.
reassigning to hyatt. Dave, maybe slamm or pav could help you on this...
OS: Linux → All
Hardware: PC → All
Yeah i read the bug wrong, I would think it's more of a tree thing.
Anyway, this reproduces in the 1999110309 builds on Mac, linux
and WinNT. It took a little doing to get the down-arrow key to work
on NT, a focus issue? Changing platform and OS to ALL.
Assignee: hyatt → alecf
I'm working on this exact thing right now.
This doesn't actually crash in my tree, must have been something I did.

Part of the problem is that EnsureRowIsVisible isn't implemented yet.
Status: NEW → ASSIGNED
ok, I've got the fix for this in my tree (I was already working on getting it to
auto-scroll)
Target Milestone: M11
ok, waiting for a review from hyatt on this one.
I'm going to mark this M11 and mark the rest of my M11 bugs M12
Status: ASSIGNED → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
ok, just checked in a fix.
Bryner, you may get some conflicts with some of your code that you're working
on, sorry about that.
Status: RESOLVED → REOPENED
I am still getting this crash.  It must be something other than
EnsureRowIsVisible that's causing it.
Severity: normal → critical
Resolution: FIXED → ---
Status: REOPENED → ASSIGNED
bryner and I talked about this last night, it looks like it might have something
to do with an uninitialize variable. I am still not able to reproduce this crash
though.....oh wait! I'm initializing cellFrame to nsnull in my tree! That's
probably why I'm not seeing the crash.

I'm going to try not initializing the variable and see if it crashes.
yup, sure enough, if I comment out my code, it crashes again.
getting a code review from hyatt...or bryner actually (sending mail now)
Status: ASSIGNED → RESOLVED
Closed: 20 years ago20 years ago
Resolution: --- → FIXED
checked in.
I figured out the other reason I didn't see this before - it wasn't crashing in
the bookmarks window, only the sidebar. Go figure!
Status: RESOLVED → REOPENED
so the crash is fixed but it still doesn't work right. looking at the
1999110608  Linux build I get a weird wrap-around effect when trying
to scroll past the last visible item. Also the view fails to slide up when
I hit down arrow on the last visible item like it should.

If you feel thi sis is now someone else's bug I'll verify the crash fix
and write another. Otherwise this bug will stay reopened and unverified.
Status: REOPENED → ASSIGNED
Summary: Scrolling down with Down-arrow crashes → Tree widget scrolling doesn't work right
I've got some work done on getting the scrolling to work better.  I don't have
it working 100% yet, but I'll take the bug.  Changing the summary to reflect the
new status.
Assignee: alecf → bryner
Status: ASSIGNED → NEW
Status: NEW → ASSIGNED
Resolution: FIXED → ---
Sorry about all the bugzilla mail you're getting, it's not cooperating with me.
might this be related to bug 17830?
I don't think so, from what I've seen.
Assignee: bryner → alecf
Status: ASSIGNED → NEW
Status: NEW → RESOLVED
Closed: 20 years ago20 years ago
Resolution: --- → FIXED
Summary: Tree widget scrolling doesn't work right → Scrolling down with Down-arrow crashes
Look, I fixed the original bug for M11. I'm reassigning to me, putting back the
old title and marking fixed. Please open a new bug for behavior other than that
described in the bug.
I also want to mention that it's well known that scrolling is horribly broken...
:)
Status: RESOLVED → VERIFIED
marking VERIFIED for 1999110808 builds. I believe bug 18196 might cover some
of the other issues.
You need to log in before you can comment on or make changes to this bug.