Closed Bug 45288 Opened 24 years ago Closed 24 years ago

Categories

(Core :: Layout: Images, Video, and HTML Frames, defect, P1)

defect

Tracking

()

VERIFIED FIXED

People

(Reporter: phil, Assigned: radha)

References

Details

(Keywords: regression, Whiteboard: [dogfood+][nsbeta2+] fix in hand)

Using 2000-07-12-08 commercial build on NT

1. Go to http://phonebook.mcom.com
2. Top frame doesn't load, and never repaints
pavlov says it happens on linux too
confirming on WinNT, both with and without PSM installed.
confirming on Mozilla bits too. 071298 NT and Mac OS9
Adding myself to the cc list...
The contents or URL of the top page is significant:

http://phonebook.mcom.com/dsgw/bin/lang?context=default&file=phone.html

If I put any other page in there it loads fine.
This page loads fine if it is not in a frameset.
This tag inside phone.html appears to be causing the problem:

<META HTTP-EQUIV="Content-type" CONTENT="text/html;charset=utf-8">

If I remove this line, the page loads and paints fine.
Minimal test case:

-------- http://blueviper/frames/phonebook.html --------
<HTML>
 <FRAMESET ROWS=130,*>
  <FRAME src='phone.html'>
  <FRAME src='about:blank'>
 </FRAMESET>
</HTML>
-------- http://blueviper/frames/phone.html --------
<META HTTP-EQUIV="Content-type" CONTENT="text/html;charset=utf-8">
Foo
--------
This regression occured sometime between these two builds:

  2000-07-04-09-M17
  2000-07-04-21-M17

Not fixing this could potentially break many web sites.  Nominating for beta2.
OS: Windows NT → All
Hardware: PC → All
When I turn off session history in frames (checked in 4-July-2000 11:51AM), this 
bug goes away.  I'll look into what part of that checkin caused the regression.  
Radha, can you take a look too?  Thanks!
Looks like the problem may be in: nsDocShell::Reload

We hit this case:

  // XXX: Why does reload fail if session history is not available?
  //      Won't this break reloading framesets?
   if (mSessionHistory == nsnull) {
      return NS_OK;
   }

Since only the top frame of phone book is trying to reload and it doesn't have 
an mSessionHistory, this check aborts the reload.  This causes the document in 
the top frame to never load the second time, hence the repainting problem.
CC'ing Rick Potts as he may have insight into this problem.
I replaced the above code block with this and it fixes the problem.  Radha, 
or Rick, can you look at this and see if it looks like a good change?  Thanks!

   if (mSessionHistory == nsnull) {
     UpdateCurrentSessionHistory();
     NS_ENSURE_SUCCESS(InternalLoad(mCurrentURI, mReferrerURI, nsnull, nsnull, 
        nsnull, type), NS_ERROR_FAILURE);
     return NS_OK;
   }
Whiteboard: fix in hand
*** Bug 45328 has been marked as a duplicate of this bug. ***
*** Bug 45232 has been marked as a duplicate of this bug. ***
Bug 45232 lists the following pages that also suffer from this bug.  All have 
frames containing <META> tags with charsets.  Many are in non-English languages.  
All are fixed by the above patch.

www.bluesnews.com (don't load left frame)
www.avp.ee/Rus/index.php3 (but www.avp.ee (same, but not cyrillic) loads)
www.f1-racing.ru
Status: NEW → ASSIGNED
Putting on [dogfood+] radar. 
Whiteboard: fix in hand → [dogfood+] fix in hand
Giving this to you, Radha, per our phonecall.
Assignee: pollmann → radha
Status: ASSIGNED → NEW
Why is this Radha's bug?
Priority: P3 → P1
Target Milestone: --- → M16
don, why did you marked this bug M16??? It's M17 now...
Status: NEW → ASSIGNED
Target Milestone: M16 → M17
*** Bug 45470 has been marked as a duplicate of this bug. ***
Putting on [nsbeta2+] radar for beta2 fix. 
Whiteboard: [dogfood+] fix in hand → [dogfood+][nsbeta2+] fix in hand
This is fixed with my checkin on friday.
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Verified fixed on WinNT and Linux.
Status: RESOLVED → VERIFIED
Product: Core → Core Graveyard
Component: Layout: HTML Frames → Layout: Images
Product: Core Graveyard → Core
You need to log in before you can comment on or make changes to this bug.