From 3ec7438388c485e21668d3b1cabe85b3192263b1 Mon Sep 17 00:00:00 2001
From: "Andrew A. de Laix" <alain@lindenlab.com>
Date: Fri, 25 Jun 2010 14:53:35 -0700
Subject: Fix EXT-8074: unregister floater as message handler on destruction to
 prevent race from user closing dialog and receiving price message.

---
 indra/newview/llfloaterpay.cpp | 3 +++
 1 file changed, 3 insertions(+)

(limited to 'indra/newview/llfloaterpay.cpp')

diff --git a/indra/newview/llfloaterpay.cpp b/indra/newview/llfloaterpay.cpp
index 51364594e4..ba7526ccd5 100644
--- a/indra/newview/llfloaterpay.cpp
+++ b/indra/newview/llfloaterpay.cpp
@@ -145,6 +145,9 @@ LLFloaterPay::~LLFloaterPay()
 {
 	std::for_each(mCallbackData.begin(), mCallbackData.end(), DeletePointer());
 	// Name callbacks will be automatically disconnected since LLFloater is trackable
+	
+	// In case this floater is currently waiting for a reply.
+	gMessageSystem->setHandlerFuncFast(_PREHASH_PayPriceReply, 0, 0);
 }
 
 BOOL LLFloaterPay::postBuild()
-- 
cgit v1.2.3