diff --git a/indra/llui/llmenugl.cpp b/indra/llui/llmenugl.cpp
index b51884f8c06cefa56fa31fcc7fabb76fd11be431..5be53e6afc981c64dff57c772b0cbab1d66a0759 100644
--- a/indra/llui/llmenugl.cpp
+++ b/indra/llui/llmenugl.cpp
@@ -3385,17 +3385,14 @@ LLTearOffMenu::LLTearOffMenu(LLMenuGL* menup) :
 
 	// highlight first item (tear off item will be disabled)
 	mMenu->highlightNextItem(NULL);
-}
 
-LLTearOffMenu::~LLTearOffMenu()
-{
+	// Can't do this in postBuild() because that is only called for floaters
+	// constructed from XML.
+	mCloseSignal.connect(boost::bind(&LLTearOffMenu::closeTearOff, this));
 }
 
-// virtual
-BOOL LLTearOffMenu::postBuild()
+LLTearOffMenu::~LLTearOffMenu()
 {
-	mCloseSignal.connect(boost::bind(&LLTearOffMenu::closeTearOff, this));
-	return TRUE;
 }
 
 void LLTearOffMenu::draw()
diff --git a/indra/llui/llmenugl.h b/indra/llui/llmenugl.h
index 1058877d10b6389dbdc8fc07fb6f8149cb698d70..d39a02da28faa79532770d08fb5e36f170d26fc7 100644
--- a/indra/llui/llmenugl.h
+++ b/indra/llui/llmenugl.h
@@ -788,8 +788,6 @@ class LLTearOffMenu : public LLFloater
 	static LLTearOffMenu* create(LLMenuGL* menup);
 	virtual ~LLTearOffMenu();
 
-	virtual BOOL postBuild();
-	
 	virtual void draw(void);
 	virtual void onFocusReceived();
 	virtual void onFocusLost();