Mozilla crashing while rendering image on Linux/QT-Embedded

RESOLVED INVALID

Status

Core Graveyard
Ports: Qt
--
critical
RESOLVED INVALID
17 years ago
10 years ago

People

(Reporter: prasadkt, Assigned: timeless)

Tracking

({crash})

Trunk
x86
Linux
crash

Firefox Tracking Flags

(Not tracked)

Details

(URL)

Attachments

(1 attachment)

(Reporter)

Description

17 years ago
How to reproduce the bug ? (Always reproducible)

The build is made for QT/Embedded with no X11 support on Linux. Removed all 
some X11 based linking flags in config/autoconf.mk and commented some clipboard 
access code, evetns hooking for x11 etc to make it working on QT/Embedded.

Configure Mozilla build 0.9.4 with options --enable-toolkit=qt --with-qt --
without-gtk --with-qtdir=/root/qt-2.3.0 --disable-mailnews --disable-debug --
disable-logging --disable-dtd-debug --disable-editor-api-log --enable-optimize 

Mozilla launches fine. But while rendering images, incremental rendering 
distorts the image and crashes browser before the image is rendered in full 
from a remote URL. The following two workarounds prevented the crashing to some 
extend(for samll images). No core generated. 

//------------------------------------------------
a) Giving a delay after the call back in DispatchEvent in nsWidget.cpp
NS_IMETHODIMP nsWidget::DispatchEvent(nsGUIEvent *event,
                                      nsEventStatus &aStatus)
{
  NS_IF_ADDREF(event->widget);
  if (nsnull != mMenuListener) {
    if (NS_MENU_EVENT == event->eventStructType)
      aStatus = mMenuListener->MenuSelected(NS_STATIC_CAST(nsMenuEvent&,
                                                           *event));
  }
  aStatus = nsEventStatus_eIgnore;
  if (nsnull != mEventCallback) {
    aStatus = (*mEventCallback)(event);
 //------------------------------------------
 PR_Sleep(1000);
//-------------------------------------------
  }
  // Dispatch to event listener if event was not consumed
  if (aStatus != nsEventStatus_eIgnore && nsnull != mEventListener) {
    aStatus = mEventListener->ProcessEvent(*event);
  }
  NS_IF_RELEASE(event->widget);
  return NS_OK;
}

b) Increase the PAINTLOCK_EVENT_DELAY from 1200 to 360000 in 
layout/html/base/src/nsPresShell.cpp

//-----------------------------------
#define PAINTLOCK_EVENT_DELAY  20000;    //1200
//-----------------------------
(Reporter)

Comment 1

17 years ago
Created attachment 50384 [details]
autoconf.mk
Status: UNCONFIRMED → NEW
Ever confirmed: true

Comment 2

17 years ago
Why was I CCd on this?  Removing myself from CC.

Comment 3

17 years ago
over to QT people
Assignee: pavlov → jcgriggs

Updated

17 years ago
Severity: major → critical
Keywords: crash
(Assignee)

Updated

17 years ago
Blocks: 101172
This bug was last changed 2001-09-22, and it has no milestone set. Is this
problem still present ? if so please verify otherwise please close this bug.

Comment 5

15 years ago
This bug depends on bug 178987 now.  Please update.
-> ports:qt
Assignee: jcgriggs → timeless
Component: ImageLib → Ports: Qt
QA Contact: tpreston → cbiesinger
QA Contact: cbiesinger → ports-qt

Comment 7

11 years ago
invalid given bug 178987 (and reporter is gone)
Status: NEW → RESOLVED
Last Resolved: 11 years ago
Resolution: --- → INVALID
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.