Commits

Anonymous committed b2c4c85

added some logging to help track down crash in EXT-5849

Comments (0)

Files changed (3)

indra/llui/llview.cpp

 std::vector<LLViewDrawContext*> LLViewDrawContext::sDrawContextStack;
 
 
-#if LL_DEBUG
+//#if LL_DEBUG
 BOOL LLView::sIsDrawing = FALSE;
-#endif
+//#endif
 
 // Compiler optimization, generate extern template
 template class LLView* LLView::getChild<class LLView>(
 {
 	dirtyRect();
 	//llinfos << "Deleting view " << mName << ":" << (void*) this << llendl;
+	if (LLView::isDrawing)
+	{
+		llwarns << "Deleting view " << mName << " during UI draw() phase" << llendl;
+	}
 // 	llassert(LLView::sIsDrawing == FALSE);
 	
 //	llassert_always(sDepth == 0); // avoid deleting views while drawing! It can subtly break list iterators

indra/llui/llview.h

 	// widgets in general are not copyable
 	LLView(const LLView& other) {};
 public:
-#if LL_DEBUG
+//#if LL_DEBUG
 	static BOOL sIsDrawing;
-#endif
+//#endif
 	enum ESoundFlags
 	{
 		SILENT = 0,

indra/newview/llviewerwindow.cpp

 void LLViewerWindow::draw()
 {
 	
-#if LL_DEBUG
+//#if LL_DEBUG
 	LLView::sIsDrawing = TRUE;
-#endif
+//#endif
 	stop_glerror();
 	
 	LLUI::setLineWidth(1.f);
 	LLUI::popMatrix();
 	gGL.popMatrix();
 
-#if LL_DEBUG
+//#if LL_DEBUG
 	LLView::sIsDrawing = FALSE;
-#endif
+//#endif
 }
 
 // Takes a single keydown event, usually when UI is visible