Closed Bug 226888 Opened 21 years ago Closed 20 years ago

Zombie windows should be destroyed

Categories

(Core Graveyard :: GFX: BeOS, defect)

x86
BeOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 164498

People

(Reporter: sergei_d, Assigned: sergei_d)

Details

(Keywords: hang, memory-leak)

Several bugs for BeOS Mozilla report about zombie windows remained after some
operations, e.g. composing e-mail, running find dialog for non-existing entry etc.
It seems that reason is missing handling for cases where ns-layer widgets are
gone already, but native BWindow is still alive. Such situation seems possible
in multithreaded environment, and current implementation of nsWindow::Show()
just hides such zombies in some cases. And it means leaks.
I suspect that reason is insufficient implementation of overridden QuitRequested:
http://lxr.mozilla.org/seamonkey/source/widget/src/beos/nsWindow.cpp#2569
which always return false. Even if there is no nsWidget and no nsToolkit for it.
Patch will be very simple.
Though, before submitting patch, i think that someone may comment it.
Code in bool nsWindowBeOS::QuitRequested( void )
will look like
if(w && (t = w->GetToolkit()) != 0)
{
 MethodInfo *info = new MethodInfo(w, w, nsWindow::CLOSEWINDOW);
 t->CallMethodAsync(info);
 NS_RELEASE(t);
 return false;
}
else
  return true;
	
I don't quite understand what you are explaining. Will fixing this also fix Bug
225814? http://bugzilla.mozilla.org/show_bug.cgi?id=225814

It seems to me that Mozilla not shuting down properly, as described in the
aforementioned bug, is only one asspect of what you point out in this bug.

Do I understand correctly, or are they not related?
Assignee: jag → sergei_d
Component: XP Toolkit/Widgets → GFX: BeOS
joining bugs

*** This bug has been marked as a duplicate of 164498 ***
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → DUPLICATE
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.