Closed Bug 4627 Opened 26 years ago Closed 26 years ago

UMR: nsFontMetricsGTK::RealizeFont() -> zero page read -> coredump

Categories

(Core :: Layout: Form Controls, defect, P3)

Sun
Solaris
defect

Tracking

()

VERIFIED FIXED

People

(Reporter: bruce, Assigned: erik)

Details

Solaris 2.6, gcc 2.7.2.3, purify. current builds from midnight on April 6, 1999. This one is possibly related to bug #4624 and #4625. It causes a crash on every startup of apprunner and viewer. **** Purify instrumented ./apprunner.pure (pid 27193) **** UMR: Uninitialized memory read: * This is occurring while in: nsFontMetricsGTK::RealizeFont() [nsFontMetricsGTK.cpp:405] nsFontMetricsGTK::Init(const nsFont&,nsIDeviceContext*) [nsFontMetricsGTK.cpp:159] nsFontCache::GetMetricsFor(const nsFont&,nsIFontMetrics*&) [nsDeviceContext.cpp:669] DeviceContextImpl::GetMetricsFor(const nsFont&,nsIFontMetrics*&) [nsDeviceContext.cpp:244] nsPresContext::GetMetricsFor(const nsFont&,nsIFontMetrics**) [nsPresContext.cpp:457] TextFrame::TextStyle::TextFrame::TextStyle(nsIPresContext&,nsIRenderingContext&, nsIStyleContext*) [nsTextFrame.cpp:204] TextFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsTextFrame.cpp:2200] nsLineLayout::ReflowFrame(nsIFrame*,nsIFrame**,unsigned int&) [nsLineLayout.cpp:836] nsBlockFrame::ReflowInlineFrame(nsBlockReflowState&,nsLineBox*,nsIFrame*,unsigne d char*) [nsBlockFrame.cpp:2860] nsBlockFrame::ReflowInlineFrames(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2742] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1964] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsBlockReflowContext::ReflowBlock(nsIFrame*,const nsRect&,int,int,int,nsMargin&,unsigned int&) [nsBlockReflowContext.cpp:225] nsBlockFrame::ReflowBlockFrame(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2527] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1961] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsBlockReflowContext::ReflowBlock(nsIFrame*,const nsRect&,int,int,int,nsMargin&,unsigned int&) [nsBlockReflowContext.cpp:225] nsBlockFrame::ReflowBlockFrame(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2527] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1961] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsAreaFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsAreaFrame.cpp:465] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:388] RootFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsHTMLFrame.cpp:231] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:388] nsScrollFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsScrollFrame.cpp:393] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:388] ViewportFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsViewportFrame.cpp:432] * Reading 4 bytes from 0xe6e604 in the heap. * Address 0xe6e604 is 36 bytes into a malloc'd block at 0xe6e5e0 of 100 bytes. * This block was allocated from: malloc [rtlib.o] __bUiLtIn_nEw [libgcc.a] __builtin_new [rtlib.o] nsFontMetricsGTK::operator new(unsigned int) [nsFontMetricsGTK.h:82] nsGfxFactoryGTK::CreateInstance(nsISupports*,const nsID&,void**) [nsGfxFactoryGTK.cpp:136] nsComponentManagerImpl::CreateInstance(const nsID&,nsISupports*,const nsID&,void**) [nsComponentManager.cpp:1070] nsComponentManager::CreateInstance(const nsID&,nsISupports*,const nsID&,void**) [nsRepository.cpp:67] nsFontCache::GetMetricsFor(const nsFont&,nsIFontMetrics*&) [nsDeviceContext.cpp:662] DeviceContextImpl::GetMetricsFor(const nsFont&,nsIFontMetrics*&) [nsDeviceContext.cpp:244] nsPresContext::GetMetricsFor(const nsFont&,nsIFontMetrics**) [nsPresContext.cpp:457] TextFrame::TextStyle::TextFrame::TextStyle(nsIPresContext&,nsIRenderingContext&, nsIStyleContext*) [nsTextFrame.cpp:204] TextFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsTextFrame.cpp:2200] nsLineLayout::ReflowFrame(nsIFrame*,nsIFrame**,unsigned int&) [nsLineLayout.cpp:836] nsBlockFrame::ReflowInlineFrame(nsBlockReflowState&,nsLineBox*,nsIFrame*,unsigne d char*) [nsBlockFrame.cpp:2860] nsBlockFrame::ReflowInlineFrames(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2742] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1964] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsBlockReflowContext::ReflowBlock(nsIFrame*,const nsRect&,int,int,int,nsMargin&,unsigned int&) [nsBlockReflowContext.cpp:225] nsBlockFrame::ReflowBlockFrame(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2527] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1961] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsBlockReflowContext::ReflowBlock(nsIFrame*,const nsRect&,int,int,int,nsMargin&,unsigned int&) [nsBlockReflowContext.cpp:225] nsBlockFrame::ReflowBlockFrame(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2527] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1961] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsAreaFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsAreaFrame.cpp:465] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:388] **** Purify instrumented ./apprunner.pure (pid 27193) **** ZPR: Zero page read: * This is occurring while in: nsFontMetricsGTK::RealizeFont() [nsFontMetricsGTK.cpp:405] nsFontMetricsGTK::Init(const nsFont&,nsIDeviceContext*) [nsFontMetricsGTK.cpp:159] nsFontCache::GetMetricsFor(const nsFont&,nsIFontMetrics*&) [nsDeviceContext.cpp:669] DeviceContextImpl::GetMetricsFor(const nsFont&,nsIFontMetrics*&) [nsDeviceContext.cpp:244] nsPresContext::GetMetricsFor(const nsFont&,nsIFontMetrics**) [nsPresContext.cpp:457] TextFrame::TextStyle::TextFrame::TextStyle(nsIPresContext&,nsIRenderingContext&, nsIStyleContext*) [nsTextFrame.cpp:204] TextFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsTextFrame.cpp:2200] nsLineLayout::ReflowFrame(nsIFrame*,nsIFrame**,unsigned int&) [nsLineLayout.cpp:836] nsBlockFrame::ReflowInlineFrame(nsBlockReflowState&,nsLineBox*,nsIFrame*,unsigne d char*) [nsBlockFrame.cpp:2860] nsBlockFrame::ReflowInlineFrames(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2742] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1964] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsBlockReflowContext::ReflowBlock(nsIFrame*,const nsRect&,int,int,int,nsMargin&,unsigned int&) [nsBlockReflowContext.cpp:225] nsBlockFrame::ReflowBlockFrame(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2527] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1961] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsBlockReflowContext::ReflowBlock(nsIFrame*,const nsRect&,int,int,int,nsMargin&,unsigned int&) [nsBlockReflowContext.cpp:225] nsBlockFrame::ReflowBlockFrame(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2527] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1961] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsAreaFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsAreaFrame.cpp:465] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:388] RootFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsHTMLFrame.cpp:231] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:388] nsScrollFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsScrollFrame.cpp:393] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:388] ViewportFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsViewportFrame.cpp:432] * Reading 4 bytes from 0xc **** Purify instrumented ./apprunner.pure (pid 27193) **** COR: Fatal core dump: * This is occurring while in: nsFontMetricsGTK::RealizeFont() [nsFontMetricsGTK.cpp:405] nsFontMetricsGTK::Init(const nsFont&,nsIDeviceContext*) [nsFontMetricsGTK.cpp:159] nsFontCache::GetMetricsFor(const nsFont&,nsIFontMetrics*&) [nsDeviceContext.cpp:669] DeviceContextImpl::GetMetricsFor(const nsFont&,nsIFontMetrics*&) [nsDeviceContext.cpp:244] nsPresContext::GetMetricsFor(const nsFont&,nsIFontMetrics**) [nsPresContext.cpp:457] TextFrame::TextStyle::TextFrame::TextStyle(nsIPresContext&,nsIRenderingContext&, nsIStyleContext*) [nsTextFrame.cpp:204] TextFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsTextFrame.cpp:2200] nsLineLayout::ReflowFrame(nsIFrame*,nsIFrame**,unsigned int&) [nsLineLayout.cpp:836] nsBlockFrame::ReflowInlineFrame(nsBlockReflowState&,nsLineBox*,nsIFrame*,unsigne d char*) [nsBlockFrame.cpp:2860] nsBlockFrame::ReflowInlineFrames(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2742] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1964] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsBlockReflowContext::ReflowBlock(nsIFrame*,const nsRect&,int,int,int,nsMargin&,unsigned int&) [nsBlockReflowContext.cpp:225] nsBlockFrame::ReflowBlockFrame(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2527] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1961] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsBlockReflowContext::ReflowBlock(nsIFrame*,const nsRect&,int,int,int,nsMargin&,unsigned int&) [nsBlockReflowContext.cpp:225] nsBlockFrame::ReflowBlockFrame(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2527] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1961] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1769] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:1206] nsAreaFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsAreaFrame.cpp:465] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:388] RootFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsHTMLFrame.cpp:231] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:388] nsScrollFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsScrollFrame.cpp:393] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:388] ViewportFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsViewportFrame.cpp:432] * Received signal 11 (SIGSEGV - Segmentation Fault) * Faulting address = 0xc * Signal mask: (SIGHUP | SIGINT | SIGQUIT | SIGILL | SIGTRAP | \ SIGABRT | SIGEMT | SIGFPE | SIGBUS | SIGSEGV | SIGSYS | SIGPIPE | \ SIGALRM | SIGTERM | SIGUSR1 | SIGUSR2 | SIGCHLD | SIGPWR | \ SIGWINCH | SIGURG | SIGPOLL | SIGTSTP | SIGCONT | SIGTTIN | \ SIGTTOU | SIGVTALRM | SIGPROF | SIGXCPU | SIGXFSZ | SIGWAITING | \ SIGLWP) * Pending signals:
Assignee: pavlov → erik
reassignint to erik@netscape.com. thanks bruce
Status: NEW → ASSIGNED
Target Milestone: M4
Status: ASSIGNED → RESOLVED
Closed: 26 years ago
Resolution: --- → FIXED
erik ask me to mark it as fixed for him. he just check in the fix.
Status: RESOLVED → VERIFIED
Fixed! Thanks.
Moving all Widget Set bugs, past and present, to new HTML Form Controls component per request from karnaze. Widget Set component will be retired shortly.
You need to log in before you can comment on or make changes to this bug.