diff options
author | callum <none@none> | 2011-06-22 11:17:36 -0700 |
---|---|---|
committer | callum <none@none> | 2011-06-22 11:17:36 -0700 |
commit | 74e8f5a7c5b4b66d6cebdccee8e592a5600e51a3 (patch) | |
tree | ad8ed06751a3c41dddff92d06fff168609b1f010 /indra/newview/llviewermessage.cpp | |
parent | 7847c8941f8c78ab7cdef65aadf4dfccf645bbf3 (diff) | |
parent | 1e87fc43d7c07be618678aab6ee9f5511e593e92 (diff) |
Merge
Diffstat (limited to 'indra/newview/llviewermessage.cpp')
-rw-r--r-- | indra/newview/llviewermessage.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index 3832be727f..766df29a81 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -937,7 +937,6 @@ protected: //one global instance to bind them LLOpenTaskOffer* gNewInventoryObserver=NULL; - class LLNewInventoryHintObserver : public LLInventoryAddedObserver { protected: @@ -947,6 +946,8 @@ protected: } }; +LLNewInventoryHintObserver* gNewInventoryHintObserver=NULL; + void start_new_inventory_observer() { if (!gNewInventoryObserver) //task offer observer @@ -963,7 +964,12 @@ void start_new_inventory_observer() gInventory.addObserver(gInventoryMoveObserver); } - gInventory.addObserver(new LLNewInventoryHintObserver()); + if (!gNewInventoryHintObserver) + { + // Observer is deleted by gInventory + gNewInventoryHintObserver = new LLNewInventoryHintObserver(); + gInventory.addObserver(gNewInventoryHintObserver); + } } class LLDiscardAgentOffer : public LLInventoryFetchItemsObserver |