Closed Bug 3727 Opened 26 years ago Closed 26 years ago

memory horkage in form code.

Categories

(Core :: Layout, defect, P3)

Sun
Solaris
defect

Tracking

()

VERIFIED INVALID

People

(Reporter: bruce, Assigned: ramiro)

Details

(Whiteboard: vendor)

I don't fully understand what is going on here. With purify, go to demo #8 and leave and these errors and more occur. This was from a pull on March 14, 1999. **** Purify instrumented ./viewer.pure (pid 25562) **** FMR: Free memory read: * This is occurring while in: XDestroyIC [ICWrap.c] gdk_ic_destroy [gdkim.c:686] gtk_entry_unrealize [gtkentry.c:692] gtk_marshal_NONE__NONE [gtkmarshal.c:363] gtk_signal_real_emit [gtksignal.c:1432] gtk_signal_emit [gtksignal.c:552] gtk_widget_unrealize [gtkwidget.c:1703] gtk_widget_unparent [gtkwidget.c:1373] gtk_layout_remove [gtklayout.c:697] gtk_marshal_NONE__POINTER [gtkmarshal.c:216] gtk_signal_real_emit [gtksignal.c:1432] gtk_signal_emit [gtksignal.c:552] gtk_container_remove [gtkcontainer.c:719] gtk_widget_shutdown [gtkwidget.c:4323] gtk_object_destroy [gtkobject.c:246] gtk_widget_destroy [gtkwidget.c:1398] nsWidget::Destroy() [nsWidget.cpp:106] nsView::~nsView() [nsView.cpp:140] nsView::Destroy() [nsView.cpp:245] nsFrame::~nsFrame() [nsFrame.cpp:176] nsLeafFrame::~nsLeafFrame() [nsLeafFrame.cpp:29] nsFormControlFrame::~nsFormControlFrame() [nsFormControlFrame.cpp:74] nsTextControlFrame::~nsTextControlFrame() [nsTextControlFrame.h:878] nsFrame::DeleteFrame(nsIPresContext&) [nsFrame.cpp:378] nsLineBox::DeleteLineList(nsIPresContext&,nsLineBox*) [nsLineBox.cpp:228] nsBlockFrame::DeleteFrame(nsIPresContext&) [nsBlockFrame.cpp:497] nsAreaFrame::DeleteFrame(nsIPresContext&) [nsAreaFrame.cpp:101] nsFrameList::DeleteFrames(nsIPresContext&) [nsFrameList.cpp:29] nsContainerFrame::DeleteFrame(nsIPresContext&) [nsContainerFrame.cpp:78] nsLineBox::DeleteLineList(nsIPresContext&,nsLineBox*) [nsLineBox.cpp:228] * Reading 4 bytes from 0x7ebef8 in the heap. * Address 0x7ebef8 is 8 bytes into a freed block at 0x7ebef0 of 256 bytes. * This block was allocated from: malloc [rtlib.o] _CreateIC [XSunIMIF.c] XCreateIC [ICWrap.c] gdk_ic_real_new [gdkim.c:551] gdk_ic_new [gdkim.c:665] gtk_entry_realize [gtkentry.c:655] gtk_marshal_NONE__NONE [gtkmarshal.c:363] gtk_signal_real_emit [gtksignal.c:1432] gtk_signal_emit [gtksignal.c:552] gtk_widget_realize [gtkwidget.c:1656] gtk_layout_put [gtklayout.c:255] nsWidget::CreateWidget(nsIWidget*,const nsRect&,nsEventStatus(*)(nsGUIEvent*),nsIDeviceContext*,nsIAppShell*,nsIToolkit* ,nsWidgetInitData*,void*) [nsWidget.cpp:615] nsWidget::Create(nsIWidget*,const nsRect&,nsEventStatus(*)(nsGUIEvent*),nsIDeviceContext*,nsIAppShell*,nsIToolkit* ,nsWidgetInitData*) [nsWidget.cpp:642] nsView::CreateWidget(const nsID&,nsWidgetInitData*,void*) [nsView.cpp:1207] nsFormControlFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsFormControlFrame.cpp:290] nsInlineReflow::ReflowFrame(nsIFrame*,int,unsigned int&) [nsInlineReflow.cpp:316] nsBlockFrame::ReflowInlineFrame(nsBlockReflowState&,nsLineBox*,nsIFrame*,int*) [nsBlockFrame.cpp:2650] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1816] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1564] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:984] nsAreaFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsAreaFrame.cpp:509] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:371] nsFieldSetFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsFieldSetFrame.cpp:362] nsInlineReflow::ReflowFrame(nsIFrame*,int,unsigned int&) [nsInlineReflow.cpp:316] nsBlockFrame::ReflowInlineFrame(nsBlockReflowState&,nsLineBox*,nsIFrame*,int*) [nsBlockFrame.cpp:2650] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1816] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1564] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:984] nsBlockReflowContext::ReflowBlock(nsIFrame*,const nsRect&,int,nsMargin&,unsigned int&) [nsBlockReflowContext.cpp:153] nsBlockFrame::ReflowBlockFrame(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2461] * There have been 0 frees since this block was freed from: free [rtlib.o] XDestroyIC [ICWrap.c] gdk_ic_destroy [gdkim.c:686] gtk_entry_unrealize [gtkentry.c:692] gtk_marshal_NONE__NONE [gtkmarshal.c:363] gtk_signal_real_emit [gtksignal.c:1432] gtk_signal_emit [gtksignal.c:552] gtk_widget_unrealize [gtkwidget.c:1703] gtk_widget_unparent [gtkwidget.c:1373] gtk_layout_remove [gtklayout.c:697] gtk_marshal_NONE__POINTER [gtkmarshal.c:216] gtk_signal_real_emit [gtksignal.c:1432] gtk_signal_emit [gtksignal.c:552] gtk_container_remove [gtkcontainer.c:719] gtk_widget_shutdown [gtkwidget.c:4323] gtk_object_destroy [gtkobject.c:246] gtk_widget_destroy [gtkwidget.c:1398] nsWidget::Destroy() [nsWidget.cpp:106] nsView::~nsView() [nsView.cpp:140] nsView::Destroy() [nsView.cpp:245] nsFrame::~nsFrame() [nsFrame.cpp:176] nsLeafFrame::~nsLeafFrame() [nsLeafFrame.cpp:29] nsFormControlFrame::~nsFormControlFrame() [nsFormControlFrame.cpp:74] nsTextControlFrame::~nsTextControlFrame() [nsTextControlFrame.h:878] nsFrame::DeleteFrame(nsIPresContext&) [nsFrame.cpp:378] nsLineBox::DeleteLineList(nsIPresContext&,nsLineBox*) [nsLineBox.cpp:228] nsBlockFrame::DeleteFrame(nsIPresContext&) [nsBlockFrame.cpp:497] nsAreaFrame::DeleteFrame(nsIPresContext&) [nsAreaFrame.cpp:101] nsFrameList::DeleteFrames(nsIPresContext&) [nsFrameList.cpp:29] nsContainerFrame::DeleteFrame(nsIPresContext&) [nsContainerFrame.cpp:78] **** Purify instrumented ./viewer.pure (pid 25562) **** FUM: Freeing unallocated memory: * This is occurring while in: free [rtlib.o] gdk_ic_destroy [gdkim.c:686] gtk_entry_unrealize [gtkentry.c:692] gtk_marshal_NONE__NONE [gtkmarshal.c:363] gtk_signal_real_emit [gtksignal.c:1432] gtk_signal_emit [gtksignal.c:552] gtk_widget_unrealize [gtkwidget.c:1703] gtk_widget_unparent [gtkwidget.c:1373] gtk_layout_remove [gtklayout.c:697] gtk_marshal_NONE__POINTER [gtkmarshal.c:216] gtk_signal_real_emit [gtksignal.c:1432] gtk_signal_emit [gtksignal.c:552] gtk_container_remove [gtkcontainer.c:719] gtk_widget_shutdown [gtkwidget.c:4323] gtk_object_destroy [gtkobject.c:246] gtk_widget_destroy [gtkwidget.c:1398] nsWidget::Destroy() [nsWidget.cpp:106] nsView::~nsView() [nsView.cpp:140] nsView::Destroy() [nsView.cpp:245] nsFrame::~nsFrame() [nsFrame.cpp:176] nsLeafFrame::~nsLeafFrame() [nsLeafFrame.cpp:29] nsFormControlFrame::~nsFormControlFrame() [nsFormControlFrame.cpp:74] nsTextControlFrame::~nsTextControlFrame() [nsTextControlFrame.h:878] nsFrame::DeleteFrame(nsIPresContext&) [nsFrame.cpp:378] nsLineBox::DeleteLineList(nsIPresContext&,nsLineBox*) [nsLineBox.cpp:228] nsBlockFrame::DeleteFrame(nsIPresContext&) [nsBlockFrame.cpp:497] nsAreaFrame::DeleteFrame(nsIPresContext&) [nsAreaFrame.cpp:101] nsFrameList::DeleteFrames(nsIPresContext&) [nsFrameList.cpp:29] nsContainerFrame::DeleteFrame(nsIPresContext&) [nsContainerFrame.cpp:78] nsLineBox::DeleteLineList(nsIPresContext&,nsLineBox*) [nsLineBox.cpp:228] * Attempting to free block at 0x7ebef0 already freed. * This block was allocated from: malloc [rtlib.o] _CreateIC [XSunIMIF.c] XCreateIC [ICWrap.c] gdk_ic_real_new [gdkim.c:551] gdk_ic_new [gdkim.c:665] gtk_entry_realize [gtkentry.c:655] gtk_marshal_NONE__NONE [gtkmarshal.c:363] gtk_signal_real_emit [gtksignal.c:1432] gtk_signal_emit [gtksignal.c:552] gtk_widget_realize [gtkwidget.c:1656] gtk_layout_put [gtklayout.c:255] nsWidget::CreateWidget(nsIWidget*,const nsRect&,nsEventStatus(*)(nsGUIEvent*),nsIDeviceContext*,nsIAppShell*,nsIToolkit* ,nsWidgetInitData*,void*) [nsWidget.cpp:615] nsWidget::Create(nsIWidget*,const nsRect&,nsEventStatus(*)(nsGUIEvent*),nsIDeviceContext*,nsIAppShell*,nsIToolkit* ,nsWidgetInitData*) [nsWidget.cpp:642] nsView::CreateWidget(const nsID&,nsWidgetInitData*,void*) [nsView.cpp:1207] nsFormControlFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsFormControlFrame.cpp:290] nsInlineReflow::ReflowFrame(nsIFrame*,int,unsigned int&) [nsInlineReflow.cpp:316] nsBlockFrame::ReflowInlineFrame(nsBlockReflowState&,nsLineBox*,nsIFrame*,int*) [nsBlockFrame.cpp:2650] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1816] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1564] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:984] nsAreaFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsAreaFrame.cpp:509] nsContainerFrame::ReflowChild(nsIFrame*,nsIPresContext&,nsHTMLReflowMetrics&,con st nsHTMLReflowState&,unsigned int&) [nsContainerFrame.cpp:371] nsFieldSetFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsFieldSetFrame.cpp:362] nsInlineReflow::ReflowFrame(nsIFrame*,int,unsigned int&) [nsInlineReflow.cpp:316] nsBlockFrame::ReflowInlineFrame(nsBlockReflowState&,nsLineBox*,nsIFrame*,int*) [nsBlockFrame.cpp:2650] nsBlockFrame::ReflowLine(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:1816] nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) [nsBlockFrame.cpp:1564] nsBlockFrame::Reflow(nsIPresContext&,nsHTMLReflowMetrics&,const nsHTMLReflowState&,unsigned int&) [nsBlockFrame.cpp:984] nsBlockReflowContext::ReflowBlock(nsIFrame*,const nsRect&,int,nsMargin&,unsigned int&) [nsBlockReflowContext.cpp:153] nsBlockFrame::ReflowBlockFrame(nsBlockReflowState&,nsLineBox*,int*) [nsBlockFrame.cpp:2461] * There have been 1 frees since this block was freed from: free [rtlib.o] XDestroyIC [ICWrap.c] gdk_ic_destroy [gdkim.c:686] gtk_entry_unrealize [gtkentry.c:692] gtk_marshal_NONE__NONE [gtkmarshal.c:363] gtk_signal_real_emit [gtksignal.c:1432] gtk_signal_emit [gtksignal.c:552] gtk_widget_unrealize [gtkwidget.c:1703] gtk_widget_unparent [gtkwidget.c:1373] gtk_layout_remove [gtklayout.c:697] gtk_marshal_NONE__POINTER [gtkmarshal.c:216] gtk_signal_real_emit [gtksignal.c:1432] gtk_signal_emit [gtksignal.c:552] gtk_container_remove [gtkcontainer.c:719] gtk_widget_shutdown [gtkwidget.c:4323] gtk_object_destroy [gtkobject.c:246] gtk_widget_destroy [gtkwidget.c:1398] nsWidget::Destroy() [nsWidget.cpp:106] nsView::~nsView() [nsView.cpp:140] nsView::Destroy() [nsView.cpp:245] nsFrame::~nsFrame() [nsFrame.cpp:176] nsLeafFrame::~nsLeafFrame() [nsLeafFrame.cpp:29] nsFormControlFrame::~nsFormControlFrame() [nsFormControlFrame.cpp:74] nsTextControlFrame::~nsTextControlFrame() [nsTextControlFrame.h:878] nsFrame::DeleteFrame(nsIPresContext&) [nsFrame.cpp:378] nsLineBox::DeleteLineList(nsIPresContext&,nsLineBox*) [nsLineBox.cpp:228] nsBlockFrame::DeleteFrame(nsIPresContext&) [nsBlockFrame.cpp:497] nsAreaFrame::DeleteFrame(nsIPresContext&) [nsAreaFrame.cpp:101] nsFrameList::DeleteFrames(nsIPresContext&) [nsFrameList.cpp:29] nsContainerFrame::DeleteFrame(nsIPresContext&) [nsContainerFrame.cpp:78]
Assignee: troy → ramiro
This may be a GTK specific bug.
Target Milestone: M5
marking m5
Status: NEW → RESOLVED
Closed: 26 years ago
Resolution: --- → INVALID
Whiteboard: vendor
This is not a Mozilla problem. This happens in GTK with any input context and although I haven't tested it, I suspect this is a Solaris problem. Bug #3678 describes the same phenomena. Marking Resolved/Invalid.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.