Closed Bug 76230 Opened 23 years ago Closed 23 years ago

Images at //jazz/users are broken

Categories

(Core :: Graphics: ImageLib, defect)

x86
Linux
defect
Not set
major

Tracking

()

VERIFIED FIXED
mozilla0.9.1

People

(Reporter: akkzilla, Assigned: saari)

References

()

Details

(Whiteboard: [imglib])

Attachments

(2 files)

Go to the indicated URL.  The text lines all draw on top of each other; it's
impossible to use the page.  Dougt says he sees it too, thought it was a
layout/box problem and suggested hwaara.
We need a non NS-only testcase here
I am hitting a couple of assertions before the layout get all screwed:


NS_ASSERTION(NS_FRAME_IS_COMPLETE(aStatus), "bad status");

where aStatus == 1

nsDebug::Assertion(const char * 0x02bf0314, const char * 0x02bf02f4, const char 
* 0x02bf02b4, int 866) line 286 + 13 bytes
nsBoxToBlockAdaptor::Reflow(nsBoxLayoutState & {...}, nsIPresContext * 
0x044d8d70, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, 
unsigned int & 1, int 0, int 0, int 15360, int 8700, int 1) line 866 + 38 bytes
nsBoxToBlockAdaptor::DoLayout(nsBoxToBlockAdaptor * const 0x03822c84, 
nsBoxLayoutState & {...}) line 523 + 52 bytes
nsBox::Layout(nsBox * const 0x03822c84, nsBoxLayoutState & {...}) line 985
nsScrollBoxFrame::DoLayout(nsScrollBoxFrame * const 0x038220a4, nsBoxLayoutState 
& {...}) line 377
nsBox::Layout(nsBox * const 0x038220a4, nsBoxLayoutState & {...}) line 985
nsContainerBox::LayoutChildAt(nsBoxLayoutState & {...}, nsIBox * 0x038220a4, 
const nsRect & {...}) line 591 + 16 bytes
nsGfxScrollFrameInner::LayoutBox(nsBoxLayoutState & {...}, nsIBox * 0x038220a4, 
const nsRect & {...}) line 1038 + 17 bytes
nsGfxScrollFrameInner::Layout(nsBoxLayoutState & {...}) line 1143
nsGfxScrollFrame::DoLayout(nsGfxScrollFrame * const 0x03821ffc, nsBoxLayoutState 
& {...}) line 1046 + 15 bytes
nsBox::Layout(nsBox * const 0x03821ffc, nsBoxLayoutState & {...}) line 985
nsBoxFrame::Reflow(nsBoxFrame * const 0x03821fc4, nsIPresContext * 0x044d8d70, 
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0) 
line 781
nsGfxScrollFrame::Reflow(nsGfxScrollFrame * const 0x03821fc4, nsIPresContext * 
0x044d8d70, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, 
unsigned int & 0) line 735 + 25 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x03821fc4, nsIPresContext * 
0x044d8d70, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, int 0, 
int 0, unsigned int 0, unsigned int & 0) line 701 + 31 bytes
ViewportFrame::Reflow(ViewportFrame * const 0x03821f50, nsIPresContext * 
0x044d8d70, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, 
unsigned int & 0) line 544
nsHTMLReflowCommand::Dispatch(nsHTMLReflowCommand * const 0x03d01880, 
nsIPresContext * 0x044d8d70, nsHTMLReflowMetrics & {...}, const nsSize & {...}, 
nsIRenderingContext & {...}) line 145
PresShell::ProcessReflowCommand(nsVoidArray & {...}, int 1, nsHTMLReflowMetrics 
& {...}, nsSize & {...}, nsIRenderingContext & {...}) line 5415
PresShell::ProcessReflowCommands(int 1) line 5470
ReflowEvent::HandleEvent() line 5328
HandlePLEvent(ReflowEvent * 0x03d037c0) line 5342
PL_HandleEvent(PLEvent * 0x03d037c0) line 588 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x0056d740) line 518 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x002a02ea, unsigned int 49514, unsigned int 0, 
long 5691200) line 1069 + 9 bytes


Then I hit this one:

NS_ASSERTION(nsnull != line, "can't find deleted frame in lines");


nsBlockFrame::DoRemoveFrame(nsIPresContext * 0x044d8d70, nsIFrame * 0x038ae400) 
line 5598 + 32 bytes
nsBlockFrame::DeleteChildsNextInFlow(nsIPresContext * 0x044d8d70, nsIFrame * 
0x03822f00) line 5756
nsBlockReflowContext::DoReflowBlock(nsHTMLReflowState & {...}, nsReflowReason 
eReflowReason_Incremental, nsIFrame * 0x03822f00, const nsRect & {...}, int 1, 
int 322, int 0, nsMargin & {...}, unsigned int & 0) line 666
nsBlockReflowContext::ReflowBlock(nsIFrame * 0x03822f00, const nsRect & {...}, 
int 1, int 322, int 0, nsMargin & {...}, unsigned int & 0) line 336 + 50 bytes
nsBlockFrame::ReflowBlockFrame(nsBlockReflowState & {...}, nsLineBox * 
0x038ad998, int * 0x0012d410) line 3950 + 56 bytes
nsBlockFrame::ReflowLine(nsBlockReflowState & {...}, nsLineBox * 0x038ad998, int 
* 0x0012d410, int 1) line 3213 + 23 bytes
nsBlockFrame::ReflowDirtyLines(nsBlockReflowState & {...}) line 3020 + 27 bytes
nsBlockFrame::Reflow(nsBlockFrame * const 0x03822d78, nsIPresContext * 
0x044d8d70, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, 
unsigned int & 0) line 1771 + 15 bytes
nsBlockReflowContext::DoReflowBlock(nsHTMLReflowState & {...}, nsReflowReason 
eReflowReason_Incremental, nsIFrame * 0x03822d78, const nsRect & {...}, int 1, 
int 0, int 1, nsMargin & {...}, unsigned int & 0) line 568 + 36 bytes
nsBlockReflowContext::ReflowBlock(nsIFrame * 0x03822d78, const nsRect & {...}, 
int 1, int 0, int 1, nsMargin & {...}, unsigned int & 0) line 336 + 50 bytes
nsBlockFrame::ReflowBlockFrame(nsBlockReflowState & {...}, nsLineBox * 
0x03822dec, int * 0x0012df78) line 3950 + 56 bytes
nsBlockFrame::ReflowLine(nsBlockReflowState & {...}, nsLineBox * 0x03822dec, int 
* 0x0012df78, int 1) line 3213 + 23 bytes
nsBlockFrame::ReflowDirtyLines(nsBlockReflowState & {...}) line 3020 + 27 bytes
nsBlockFrame::Reflow(nsBlockFrame * const 0x03822cf0, nsIPresContext * 
0x044d8d70, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, 
unsigned int & 0) line 1771 + 15 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x03822cf0, nsIPresContext * 
0x044d8d70, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, int 0, 
int 0, unsigned int 0, unsigned int & 0) line 701 + 31 bytes
CanvasFrame::Reflow(CanvasFrame * const 0x03821f8c, nsIPresContext * 0x044d8d70, 
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0) 
line 304
nsBoxToBlockAdaptor::Reflow(nsBoxLayoutState & {...}, nsIPresContext * 
0x044d8d70, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, 
unsigned int & 0, int 0, int 0, int 15105, int 8445, int 1) line 866
nsBoxToBlockAdaptor::DoLayout(nsBoxToBlockAdaptor * const 0x03822c84, 
nsBoxLayoutState & {...}) line 523 + 52 bytes
nsBox::Layout(nsBox * const 0x03822c84, nsBoxLayoutState & {...}) line 985
nsScrollBoxFrame::DoLayout(nsScrollBoxFrame * const 0x038220a4, nsBoxLayoutState 
& {...}) line 377
nsBox::Layout(nsBox * const 0x038220a4, nsBoxLayoutState & {...}) line 985
nsContainerBox::LayoutChildAt(nsBoxLayoutState & {...}, nsIBox * 0x038220a4, 
const nsRect & {...}) line 591 + 16 bytes
nsGfxScrollFrameInner::LayoutBox(nsBoxLayoutState & {...}, nsIBox * 0x038220a4, 
const nsRect & {...}) line 1038 + 17 bytes
nsGfxScrollFrameInner::Layout(nsBoxLayoutState & {...}) line 1143
nsGfxScrollFrame::DoLayout(nsGfxScrollFrame * const 0x03821ffc, nsBoxLayoutState 
& {...}) line 1046 + 15 bytes
nsBox::Layout(nsBox * const 0x03821ffc, nsBoxLayoutState & {...}) line 985
nsBoxFrame::Reflow(nsBoxFrame * const 0x03821fc4, nsIPresContext * 0x044d8d70, 
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0) 
line 781
nsGfxScrollFrame::Reflow(nsGfxScrollFrame * const 0x03821fc4, nsIPresContext * 
0x044d8d70, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, 
unsigned int & 0) line 735 + 25 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x03821fc4, nsIPresContext * 
0x044d8d70, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, int 0, 
int 0, unsigned int 0, unsigned int & 0) line 701 + 31 bytes
ViewportFrame::Reflow(ViewportFrame * const 0x03821f50, nsIPresContext * 
0x044d8d70, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, 
unsigned int & 0) line 544
nsHTMLReflowCommand::Dispatch(nsHTMLReflowCommand * const 0x03d030d0, 
nsIPresContext * 0x044d8d70, nsHTMLReflowMetrics & {...}, const nsSize & {...}, 
nsIRenderingContext & {...}) line 145
PresShell::ProcessReflowCommand(nsVoidArray & {...}, int 0, nsHTMLReflowMetrics 
& {...}, nsSize & {...}, nsIRenderingContext & {...}) line 5415
PresShell::ProcessReflowCommands(int 0) line 5470
PresShell::FlushPendingNotifications(PresShell * const 0x037ae4a0) line 4448
nsEventStateManager::FlushPendingEvents(nsIPresContext * 0x044d8d70) line 3463
nsEventStateManager::GenerateDragGesture(nsIPresContext * 0x044d8d70, nsGUIEvent 
* 0x0012f7d0) line 992
nsEventStateManager::PreHandleEvent(nsEventStateManager * const 0x03b20a98, 
nsIPresContext * 0x044d8d70, nsEvent * 0x0012f7d0, nsIFrame * 0x03881c40, 
nsEventStatus * 0x0012f6c4, nsIView * 0x03cb4900) line 328
PresShell::HandleEventInternal(nsEvent * 0x0012f7d0, nsIView * 0x03cb4900, 
unsigned int 1, nsEventStatus * 0x0012f6c4) line 5209 + 43 bytes
PresShell::HandleEvent(PresShell * const 0x037ae4a4, nsIView * 0x03cb4900, 
nsGUIEvent * 0x0012f7d0, nsEventStatus * 0x0012f6c4, int 0, int & 1) line 5142 + 
25 bytes
nsView::HandleEvent(nsView * const 0x03cb4900, nsGUIEvent * 0x0012f7d0, unsigned 
int 8, nsEventStatus * 0x0012f6c4, int 0, int & 1) line 377
nsView::HandleEvent(nsView * const 0x03cb2a90, nsGUIEvent * 0x0012f7d0, unsigned 
int 8, nsEventStatus * 0x0012f6c4, int 0, int & 1) line 350
nsView::HandleEvent(nsView * const 0x037abdf0, nsGUIEvent * 0x0012f7d0, unsigned 
int 28, nsEventStatus * 0x0012f6c4, int 1, int & 1) line 350
nsViewManager::DispatchEvent(nsViewManager * const 0x037a90a0, nsGUIEvent * 
0x0012f7d0, nsEventStatus * 0x0012f6c4) line 2020
HandleEvent(nsGUIEvent * 0x0012f7d0) line 68
nsWindow::DispatchEvent(nsWindow * const 0x03cb7274, nsGUIEvent * 0x0012f7d0, 
nsEventStatus & nsEventStatus_eIgnore) line 701 + 10 bytes
nsWindow::DispatchWindowEvent(nsGUIEvent * 0x0012f7d0) line 722
nsWindow::DispatchMouseEvent(unsigned int 300, nsPoint * 0x00000000) line 4024 + 
21 bytes


Turns out that this is a problem with the gif images that these server-generated
pages put at the beginning of each line.  http://warp/u/cltbld/ shows it too. 
The image size isn't being initialized.  Pav has a fix for that, which will make
these pages usable again.  The images also aren't being loaded, for some unknown
reason.
Assignee: hwaara → pavlov
These images now come in as at 0x0, instead of very big numbers.  Reassigning to 
saari.  saari - the images on this page should be loading.  The gif decoder is 
coming up with a 0x0 logical screen size.
Assignee: pavlov → saari
Summary: Can't view //jazz/users → Images at //jazz/users are broken
Hwaara: I tried saving the page to a file, with the intention of attaching it
here.  But it turns out that the problem doesn't happen when reading from a
local file, only when talking to an http server.  I don't know of an external
server with a similar page, but if I run across one I'll post it here.

The servers involved are Netscape-Enterprise/3.6, so if you can find an external
server running that software to serve files over http, it would probably show
the bug.
*** Bug 75979 has been marked as a duplicate of this bug. ***
Akkana: this bug is not mine anymore, no need to hunt down a NS server. :)
Status: NEW → ASSIGNED
Target Milestone: --- → mozilla0.9.1
Target Milestone: mozilla0.9.1 → mozilla0.9.2
Naughty images that had 0,0 as the logical screen size.
pulling back into 0.9.1 since I have a patch
Target Milestone: mozilla0.9.2 → mozilla0.9.1
Ah, yeah that's easy to envision.  Could you please attach a testcase so that 
QA / external testers can verify?
Component: Layout → ImageLib
QA Contact: petersen → tpreston
Attached image testcase menu.gif
I see this on linux build 2001050108, changing status to imglib
Whiteboard: [imglib]
need r= and sr=, I have other fixes in the pipe that depend on this
r=pavlov
sr=hyatt
Fixed
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Verified fixed mac build 2001052405
Verified fixed w2k build 2001052404
Verified fixed linux build 2001052310
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: