diff options
| author | Mnikolenko ProductEngine <mnikolenko@productengine.com> | 2015-03-23 11:23:28 +0200 | 
|---|---|---|
| committer | Mnikolenko ProductEngine <mnikolenko@productengine.com> | 2015-03-23 11:23:28 +0200 | 
| commit | dfd19ed84322c7129509756e1c7fcc63a55f459e (patch) | |
| tree | bd9ae308fa19f93654e1b0e7e857fddfd97feb38 | |
| parent | 84b178ccb140b44a48805ed08468c6dc4acbc395 (diff) | |
MAINT-4998 FIXED Ignore loadedCallback if Modelpreview floater is already closed.
| -rwxr-xr-x | indra/newview/llfloatermodelpreview.cpp | 11 | ||||
| -rwxr-xr-x | indra/newview/llfloatermodelpreview.h | 5 | 
2 files changed, 14 insertions, 2 deletions
diff --git a/indra/newview/llfloatermodelpreview.cpp b/indra/newview/llfloatermodelpreview.cpp index b2f237e71f..e9f98a5c5f 100755 --- a/indra/newview/llfloatermodelpreview.cpp +++ b/indra/newview/llfloatermodelpreview.cpp @@ -93,6 +93,8 @@  S32 LLFloaterModelPreview::sUploadAmount = 10;  LLFloaterModelPreview* LLFloaterModelPreview::sInstance = NULL; +bool LLModelPreview::sIgnoreLoadedCallback = false; +  const S32 PREVIEW_BORDER_WIDTH = 2;  const S32 PREVIEW_RESIZE_HANDLE_SIZE = S32(RESIZE_HANDLE_WIDTH * OO_SQRT2) + PREVIEW_BORDER_WIDTH;  const S32 PREVIEW_HPAD = PREVIEW_RESIZE_HANDLE_SIZE; @@ -788,9 +790,16 @@ BOOL LLFloaterModelPreview::handleScrollWheel(S32 x, S32 y, S32 clicks)  /*virtual*/  void LLFloaterModelPreview::onOpen(const LLSD& key)  { +	LLModelPreview::sIgnoreLoadedCallback = false;  	requestAgentUploadPermissions();  } +/*virtual*/ +void LLFloaterModelPreview::onClose(bool app_quitting) +{ +	LLModelPreview::sIgnoreLoadedCallback = true; +} +  //static  void LLFloaterModelPreview::onPhysicsParamCommit(LLUICtrl* ctrl, void* data)  { @@ -3193,7 +3202,7 @@ void LLModelPreview::loadedCallback(  	void* opaque)  {  	LLModelPreview* pPreview = static_cast< LLModelPreview* >(opaque); -	if (pPreview) +	if (pPreview && !LLModelPreview::sIgnoreLoadedCallback)  	{  		pPreview->loadModelCallback(lod);  	}	 diff --git a/indra/newview/llfloatermodelpreview.h b/indra/newview/llfloatermodelpreview.h index 0991980575..4a67c60943 100755 --- a/indra/newview/llfloatermodelpreview.h +++ b/indra/newview/llfloatermodelpreview.h @@ -89,6 +89,7 @@ public:  	BOOL handleScrollWheel(S32 x, S32 y, S32 clicks);   	/*virtual*/ void onOpen(const LLSD& key); +	/*virtual*/ void onClose(bool app_quitting);  	static void onMouseCaptureLostModelPreview(LLMouseHandler*);  	static void setUploadAmount(S32 amount) { sUploadAmount = amount; } @@ -297,6 +298,8 @@ public:  	LLVector3 getTranslationForJointOffset( std::string joint ); +	static bool 		sIgnoreLoadedCallback; +  protected:  	static void			loadedCallback(LLModelLoader::scene& scene,LLModelLoader::model_list& model_list, S32 lod, void* opaque); @@ -388,7 +391,7 @@ private:  	bool		mLegacyRigValid;  	bool		mLastJointUpdate; -	 +  	JointSet				mJointsFromNode;  	JointTransformMap	mJointTransformMap;  | 
