diff options
author | James Cook <james@lindenlab.com> | 2010-01-11 14:06:09 -0800 |
---|---|---|
committer | James Cook <james@lindenlab.com> | 2010-01-11 14:06:09 -0800 |
commit | a36087f5c1851b0bd5eec5788609f35b8a524384 (patch) | |
tree | d7057930083ba9499fc8b3783a531b24ac9ea7f1 /indra/newview/llsidepanelappearance.cpp | |
parent | a570c39bd3ca9ca567ef6a778305b8231535eb70 (diff) | |
parent | 370a8592ac4c3b6eb6fd9f6ddd35960b763e634f (diff) |
Merge, sync from viewer-2-0, fixed conflict in llinspectavatar.cpp
Diffstat (limited to 'indra/newview/llsidepanelappearance.cpp')
-rw-r--r-- | indra/newview/llsidepanelappearance.cpp | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/indra/newview/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp index 0ae62843ac..77a370cc3f 100644 --- a/indra/newview/llsidepanelappearance.cpp +++ b/indra/newview/llsidepanelappearance.cpp @@ -62,6 +62,7 @@ public: { mPanel->inventoryFetched(); gInventory.removeObserver(this); + delete this; } private: LLSidepanelAppearance *mPanel; @@ -94,14 +95,12 @@ LLSidepanelAppearance::LLSidepanelAppearance() : mLookInfo(NULL), mCurrOutfitPanel(NULL) { - //LLUICtrlFactory::getInstance()->buildPanel(this, "panel_appearance.xml"); // Called from LLRegisterPanelClass::defaultPanelClassBuilder() - mFetchWorn = new LLCurrentlyWornFetchObserver(this); - - mOutfitRenameWatcher = new LLWatchForOutfitRenameObserver(this); } LLSidepanelAppearance::~LLSidepanelAppearance() { + gInventory.removeObserver(mOutfitRenameWatcher); + delete mOutfitRenameWatcher; } // virtual @@ -156,6 +155,7 @@ BOOL LLSidepanelAppearance::postBuild() mCurrOutfitPanel = getChild<LLPanel>("panel_currentlook"); + mOutfitRenameWatcher = new LLWatchForOutfitRenameObserver(this); gInventory.addObserver(mOutfitRenameWatcher); return TRUE; @@ -389,16 +389,17 @@ void LLSidepanelAppearance::fetchInventory() } } - mFetchWorn->fetchItems(ids); + LLCurrentlyWornFetchObserver *fetch_worn = new LLCurrentlyWornFetchObserver(this); + fetch_worn->fetchItems(ids); // If no items to be fetched, done will never be triggered. // TODO: Change LLInventoryFetchObserver::fetchItems to trigger done() on this condition. - if (mFetchWorn->isEverythingComplete()) + if (fetch_worn->isEverythingComplete()) { - mFetchWorn->done(); + fetch_worn->done(); } else { - gInventory.addObserver(mFetchWorn); + gInventory.addObserver(fetch_worn); } } |