diff --git a/indra/newview/llpanelprofile.cpp b/indra/newview/llpanelprofile.cpp
index f4e8392916ea7c9066126cb0ed306b2232b15d41..b035d7d4733c007ea7c0088367afbf730c3f0513 100644
--- a/indra/newview/llpanelprofile.cpp
+++ b/indra/newview/llpanelprofile.cpp
@@ -115,10 +115,15 @@ LLAgentHandler gAgentHandler;
 
 
 //-- LLPanelProfile::ChildStack begins ----------------------------------------
-LLPanelProfile::ChildStack::ChildStack(LLPanel* parent)
-:	mParent(parent)
+LLPanelProfile::ChildStack::ChildStack()
+:	mParent(NULL)
+{
+}
+
+void LLPanelProfile::ChildStack::setParent(LLPanel* parent)
 {
 	llassert_always(parent != NULL);
+	mParent = parent;
 }
 
 /// Save current parent's child views and remove them from the child list.
@@ -209,9 +214,9 @@ void LLPanelProfile::ChildStack::dump()
 LLPanelProfile::LLPanelProfile()
  : LLPanel()
  , mTabCtrl(NULL)
- , mChildStack(this)
  , mAvatarId(LLUUID::null)
 {
+	mChildStack.setParent(this);
 }
 
 BOOL LLPanelProfile::postBuild()
diff --git a/indra/newview/llpanelprofile.h b/indra/newview/llpanelprofile.h
index 577b71f2841a377e7adb4d3c1c2f983a0d3b1e67..0a572e6f25a58ae9326549f6b24f75dc72987b9b 100644
--- a/indra/newview/llpanelprofile.h
+++ b/indra/newview/llpanelprofile.h
@@ -75,7 +75,8 @@ class LLPanelProfile : public LLPanel
 	{
 		LOG_CLASS(LLPanelProfile::ChildStack);
 	public:
-		ChildStack(LLPanel* parent);
+		ChildStack();
+		void setParent(LLPanel* parent);
 
 		bool push();
 		bool pop();