From 8fb772094815ede47ddcde67676c8c2cb161bef0 Mon Sep 17 00:00:00 2001 From: Dmitry Zaporozhan Date: Thu, 11 Feb 2010 12:47:47 +0200 Subject: Fixed normal bug EXT-5207 - Region Maturity level not displayed on nav bar when coordinates are enabled and parcel got no name. Added maturity rating to full location string in case parcel name is empty. --HG-- branch : product-engine --- indra/newview/llagentui.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/indra/newview/llagentui.cpp b/indra/newview/llagentui.cpp index 7404fe5bc4..72ab9235cf 100644 --- a/indra/newview/llagentui.cpp +++ b/indra/newview/llagentui.cpp @@ -150,11 +150,17 @@ BOOL LLAgentUI::buildLocationString(std::string& str, ELocationFormat fmt,const sim_access_string.c_str()); break; case LOCATION_FORMAT_NO_MATURITY: - case LOCATION_FORMAT_FULL: buffer = llformat("%s (%d, %d, %d)", region_name.c_str(), pos_x, pos_y, pos_z); break; + case LOCATION_FORMAT_FULL: + buffer = llformat("%s (%d, %d, %d)%s%s", + region_name.c_str(), + pos_x, pos_y, pos_z, + sim_access_string.empty() ? "" : " - ", + sim_access_string.c_str()); + break; } } else -- cgit v1.2.3 From cf18a1d22c7a4c315a651bc39085bc6d723e8e7d Mon Sep 17 00:00:00 2001 From: "Paul Guslisty pguslisty@productengine.com" Date: Thu, 11 Feb 2010 12:52:26 +0200 Subject: EXT - 2753 (Implement Avatar icons on IM multifloater tabs) refactoring: - Deleted unnecessary parameters (UIButtonImageTopPadding, UIButtonImageBottomPadding) from settings.xml and their usage in LLTabContainer - Deleted triggers (LLIMFloaterContainer::processProperties and LLIMFloaterContainer::changed) due to LLIMFloaterContainer no more Observer - Renamed class LLParticularGroupMgrObserver to LLParticularGroupObserver as the last one's name is more self explanatory --HG-- branch : product-engine --- indra/llui/lltabcontainer.cpp | 5 ----- indra/newview/app_settings/settings.xml | 22 ---------------------- indra/newview/llgroupmgr.cpp | 6 +++--- indra/newview/llgroupmgr.h | 10 +++++----- indra/newview/llimfloatercontainer.cpp | 30 ------------------------------ indra/newview/llimfloatercontainer.h | 5 +---- 6 files changed, 9 insertions(+), 69 deletions(-) diff --git a/indra/llui/lltabcontainer.cpp b/indra/llui/lltabcontainer.cpp index fe699cfa01..13340e7ded 100644 --- a/indra/llui/lltabcontainer.cpp +++ b/indra/llui/lltabcontainer.cpp @@ -1631,14 +1631,9 @@ void LLTabContainer::setTabImage(LLPanel* child, LLIconCtrl* icon) void LLTabContainer::reshapeTuple(LLTabTuple* tuple) { static LLUICachedControl tab_padding ("UITabPadding", 0); - static LLUICachedControl image_top_padding ("UIButtonImageTopPadding", 2); - static LLUICachedControl image_bottom_padding ("UIButtonImageBottomPadding", 2); if (!mIsVertical) { - tuple->mButton->setImageOverlayTopPad(image_top_padding); - tuple->mButton->setImageOverlayBottomPad(image_bottom_padding); - // remove current width from total tab strip width mTotalTabWidth -= tuple->mButton->getRect().getWidth(); diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index db4e0b5afd..48205370ef 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -9948,28 +9948,6 @@ S32 Value 15 - - UIButtonImageTopPadding - - Comment - Button Overlay Image Top Padding - Persist - 1 - Type - S32 - Value - 2 - - UIButtonImageBottomPadding - - Comment - Button Overlay Image Bottom Padding - Persist - 1 - Type - S32 - Value - 2 UploadBakedTexOld diff --git a/indra/newview/llgroupmgr.cpp b/indra/newview/llgroupmgr.cpp index 4c1019a882..e65990a095 100644 --- a/indra/newview/llgroupmgr.cpp +++ b/indra/newview/llgroupmgr.cpp @@ -762,7 +762,7 @@ void LLGroupMgr::addObserver(LLGroupMgrObserver* observer) mObservers.insert(std::pair(observer->getID(), observer)); } -void LLGroupMgr::addObserver(const LLUUID& group_id, LLParticularGroupMgrObserver* observer) +void LLGroupMgr::addObserver(const LLUUID& group_id, LLParticularGroupObserver* observer) { if(group_id.notNull() && observer) { @@ -792,7 +792,7 @@ void LLGroupMgr::removeObserver(LLGroupMgrObserver* observer) } } -void LLGroupMgr::removeObserver(const LLUUID& group_id, LLParticularGroupMgrObserver* observer) +void LLGroupMgr::removeObserver(const LLUUID& group_id, LLParticularGroupObserver* observer) { if(group_id.isNull() || !observer) { @@ -1364,7 +1364,7 @@ void LLGroupMgr::notifyObservers(LLGroupChange gc) gi->second->mChanged = FALSE; - // notify LLParticularGroupMgrObserver + // notify LLParticularGroupObserver observer_map_t::iterator obs_it = mParticularObservers.find(group_id); if(obs_it == mParticularObservers.end()) return; diff --git a/indra/newview/llgroupmgr.h b/indra/newview/llgroupmgr.h index 588b4a9034..2c86de8b97 100644 --- a/indra/newview/llgroupmgr.h +++ b/indra/newview/llgroupmgr.h @@ -53,10 +53,10 @@ protected: LLUUID mID; }; -class LLParticularGroupMgrObserver +class LLParticularGroupObserver { public: - virtual ~LLParticularGroupMgrObserver(){} + virtual ~LLParticularGroupObserver(){} virtual void changed(const LLUUID& group_id, LLGroupChange gc) = 0; }; @@ -313,9 +313,9 @@ public: ~LLGroupMgr(); void addObserver(LLGroupMgrObserver* observer); - void addObserver(const LLUUID& group_id, LLParticularGroupMgrObserver* observer); + void addObserver(const LLUUID& group_id, LLParticularGroupObserver* observer); void removeObserver(LLGroupMgrObserver* observer); - void removeObserver(const LLUUID& group_id, LLParticularGroupMgrObserver* observer); + void removeObserver(const LLUUID& group_id, LLParticularGroupObserver* observer); LLGroupMgrGroupData* getGroupData(const LLUUID& id); void sendGroupPropertiesRequest(const LLUUID& group_id); @@ -374,7 +374,7 @@ private: typedef std::map group_map_t; group_map_t mGroups; - typedef std::set observer_set_t; + typedef std::set observer_set_t; typedef std::map observer_map_t; observer_map_t mParticularObservers; }; diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index ba034609e9..7162386d08 100644 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -121,36 +121,6 @@ void LLIMFloaterContainer::onCloseFloater(LLUUID& id) mSessions.erase(id); } -void LLIMFloaterContainer::processProperties(void* data, enum EAvatarProcessorType type) -{ - if (APT_PROPERTIES == type) - { - LLAvatarData* avatar_data = static_cast(data); - if (avatar_data) - { - LLUUID avatar_id = avatar_data->avatar_id; - LLUUID* cached_avatarId = LLAvatarIconIDCache::getInstance()->get(avatar_id); - if(cached_avatarId && cached_avatarId->notNull() && avatar_data->image_id != *cached_avatarId) - { - LLAvatarIconIDCache::getInstance()->add(avatar_id,avatar_data->image_id); - mTabContainer->setTabImage(get_ptr_in_map(mSessions, avatar_id), avatar_data->image_id); - } - } - } -} - -void LLIMFloaterContainer::changed(const LLUUID& group_id, LLGroupChange gc) -{ - if (GC_PROPERTIES == gc) - { - LLGroupMgrGroupData* group_data = LLGroupMgr::getInstance()->getGroupData(group_id); - if (group_data && group_data->mInsigniaID.notNull()) - { - mTabContainer->setTabImage(get_ptr_in_map(mSessions, group_id), group_data->mInsigniaID); - } - } -} - void LLIMFloaterContainer::onNewMessageReceived(const LLSD& data) { LLUUID session_id = data["from_id"].asUUID(); diff --git a/indra/newview/llimfloatercontainer.h b/indra/newview/llimfloatercontainer.h index b07ef2d71d..46c0617c01 100644 --- a/indra/newview/llimfloatercontainer.h +++ b/indra/newview/llimfloatercontainer.h @@ -43,7 +43,7 @@ class LLTabContainer; -class LLIMFloaterContainer : public LLMultiFloater, public LLAvatarPropertiesObserver, public LLParticularGroupMgrObserver +class LLIMFloaterContainer : public LLMultiFloater { public: LLIMFloaterContainer(const LLSD& seed); @@ -57,9 +57,6 @@ public: BOOL select_added_floater, LLTabContainer::eInsertionPoint insertion_point = LLTabContainer::END); - void processProperties(void* data, EAvatarProcessorType type); - void changed(const LLUUID& group_id, LLGroupChange gc); - static LLFloater* getCurrentVoiceFloater(); static LLIMFloaterContainer* findInstance(); -- cgit v1.2.3 From 0133b3d3f95a6f1c07d695ef9f64d736c15d88e4 Mon Sep 17 00:00:00 2001 From: "Paul Guslisty pguslisty@productengine.com" Date: Thu, 11 Feb 2010 13:55:13 +0200 Subject: Fixed low bug EXT - 5197 (Change default help text in my Picks to \"You haven't created any Picks or Classifieds. Click the Plus button below to create a Pick or Classified.\") - Replaced old default help text in settings.xml with new one --HG-- branch : product-engine --- indra/newview/skins/default/xui/en/panel_picks.xml | 1 + indra/newview/skins/default/xui/en/strings.xml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/indra/newview/skins/default/xui/en/panel_picks.xml b/indra/newview/skins/default/xui/en/panel_picks.xml index 887a89d518..9ef3649d9c 100644 --- a/indra/newview/skins/default/xui/en/panel_picks.xml +++ b/indra/newview/skins/default/xui/en/panel_picks.xml @@ -24,6 +24,7 @@ bg_opaque_color="DkGray2" layout="topleft" left="6" name="picks_panel_text" + wrap="true" top="10" width="313"/> (will update after publish) - There are no picks/classifieds here + You haven't created any Picks or Classifieds. Click the Plus button below to create a Pick or Classified. Loading... -- cgit v1.2.3 From 23bc796a7f8cbe3163041c4a81018b1d89008cc2 Mon Sep 17 00:00:00 2001 From: Andrew Dyukov Date: Thu, 11 Feb 2010 13:57:48 +0200 Subject: Fixed normal bug EXT-5289 ("Cancel" button is missing if call started when voice notification exists). - Added setting "Cancel" button visible when call is started. --HG-- branch : product-engine --- indra/newview/llimview.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp index 0965cbd0dc..5a6c6ebbee 100644 --- a/indra/newview/llimview.cpp +++ b/indra/newview/llimview.cpp @@ -1665,6 +1665,7 @@ void LLOutgoingCallDialog::show(const LLSD& key) { case LLVoiceChannel::STATE_CALL_STARTED : getChild("calling")->setVisible(true); + getChild("Cancel")->setVisible(true); if(show_oldchannel) { getChild("leaving")->setVisible(true); -- cgit v1.2.3 From c3d262cc6d7cabce1f8eb7b43e8c6fc3a46b8246 Mon Sep 17 00:00:00 2001 From: Mike Antipov Date: Thu, 11 Feb 2010 15:18:10 +0200 Subject: Backed out changeset bc651a97431f. This changeset broke fix for EXT-4212 (There's an ability to send non-latin group notices but they turn to '????...' in group profile page.) --HG-- branch : product-engine --- indra/newview/skins/default/xui/en/panel_group_notices.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/indra/newview/skins/default/xui/en/panel_group_notices.xml b/indra/newview/skins/default/xui/en/panel_group_notices.xml index 5f46ad7860..1f16aea2ef 100644 --- a/indra/newview/skins/default/xui/en/panel_group_notices.xml +++ b/indra/newview/skins/default/xui/en/panel_group_notices.xml @@ -159,6 +159,7 @@ Maximum 200 per group daily left_pad="3" max_length="511" name="create_message" + text_type="ascii" top_delta="0" width="220" word_wrap="true" /> -- cgit v1.2.3 From c53e587170d5c6dfeb5fa418a8b4eda964ee8a91 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 13:32:50 +0000 Subject: CID-115 Checker: MISSING_BREAK Function: LLGroupMgrGroupData::sendRoleChanges() File: /indra/newview/llgroupmgr.cpp not a bug. --- indra/newview/llgroupmgr.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/indra/newview/llgroupmgr.cpp b/indra/newview/llgroupmgr.cpp index 4c1019a882..c813c8b2f9 100644 --- a/indra/newview/llgroupmgr.cpp +++ b/indra/newview/llgroupmgr.cpp @@ -677,9 +677,12 @@ void LLGroupMgrGroupData::sendRoleChanges() break; } case RC_UPDATE_ALL: + // fall through case RC_UPDATE_POWERS: need_power_recalc = true; + // fall through case RC_UPDATE_DATA: + // fall through default: { LLGroupRoleData* group_role_data = (*role_it).second; -- cgit v1.2.3 From bf26124cbc9583901ce0640c6027acb392fff6fd Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 14:12:46 +0000 Subject: CID-60 Checker: FORWARD_NULL Function: LLMultiSliderCtrl::onEditorCommit(LLUICtrl *, const LLSD &) File: /indra/llui/llmultisliderctrl.cpp --- indra/llui/llmultisliderctrl.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/indra/llui/llmultisliderctrl.cpp b/indra/llui/llmultisliderctrl.cpp index cb81c39103..50942e55ca 100644 --- a/indra/llui/llmultisliderctrl.cpp +++ b/indra/llui/llmultisliderctrl.cpp @@ -331,6 +331,10 @@ void LLMultiSliderCtrl::updateText() void LLMultiSliderCtrl::onEditorCommit( LLUICtrl* ctrl, const LLSD& userdata) { LLMultiSliderCtrl* self = dynamic_cast(ctrl->getParent()); + llassert(self); + if (!self) // cast failed - wrong type! :O + return; + if (!ctrl) return; -- cgit v1.2.3 From 641b44fc8357289d12ff165b689d941a52af5d27 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 14:14:21 +0000 Subject: CID-63 Checker: FORWARD_NULL Function: LLFloaterProperties::dirtyAll() File: /indra/newview/llfloaterproperties.cpp --- indra/newview/llfloaterproperties.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/indra/newview/llfloaterproperties.cpp b/indra/newview/llfloaterproperties.cpp index bde86a4034..5c0593ad29 100644 --- a/indra/newview/llfloaterproperties.cpp +++ b/indra/newview/llfloaterproperties.cpp @@ -880,7 +880,11 @@ void LLFloaterProperties::dirtyAll() iter != inst_list.end(); ++iter) { LLFloaterProperties* floater = dynamic_cast(*iter); - floater->dirty(); + llassert(floater); // else cast failed - wrong type D: + if (floater) + { + floater->dirty(); + } } } -- cgit v1.2.3 From 63e421d3b30dffa518fe9011ce501e9aeaa78b7c Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 14:15:41 +0000 Subject: CID-64 Checker: FORWARD_NULL Function: LLFeatureManager::loadFeatureTables() File: /indra/newview/llfeaturemanager.cpp not a bug. --- indra/newview/llfeaturemanager.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp index fb724f30e0..fbb90c69f3 100644 --- a/indra/newview/llfeaturemanager.cpp +++ b/indra/newview/llfeaturemanager.cpp @@ -287,6 +287,7 @@ BOOL LLFeatureManager::loadFeatureTables() if (!flp) { LL_ERRS("RenderInit") << "Specified parameter before keyword!" << LL_ENDL; + return FALSE; } S32 available; F32 recommended; -- cgit v1.2.3 From 4307d45a30324636cb8f1bb4f2634c2d5570f7f4 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 14:17:08 +0000 Subject: CID-66 Checker: FORWARD_NULL Function: LLVOAvatar::parseSkeletonFile(const std::basic_string, std::allocator>&) File: /indra/newview/llvoavatar.cpp not a bug. --- indra/newview/llvoavatar.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index cf0808ea5b..2235618573 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -1492,9 +1492,9 @@ BOOL LLVOAvatar::parseSkeletonFile(const std::string& filename) //------------------------------------------------------------------------- // parse the file //------------------------------------------------------------------------- - BOOL success = sSkeletonXMLTree.parseFile( filename, FALSE ); + BOOL parsesuccess = sSkeletonXMLTree.parseFile( filename, FALSE ); - if (!success) + if (!parsesuccess) { llerrs << "Can't parse skeleton file: " << filename << llendl; return FALSE; @@ -1505,11 +1505,13 @@ BOOL LLVOAvatar::parseSkeletonFile(const std::string& filename) if (!root) { llerrs << "No root node found in avatar skeleton file: " << filename << llendl; + return FALSE; } if( !root->hasName( "linden_skeleton" ) ) { llerrs << "Invalid avatar skeleton file header: " << filename << llendl; + return FALSE; } std::string version; @@ -1517,6 +1519,7 @@ BOOL LLVOAvatar::parseSkeletonFile(const std::string& filename) if( !root->getFastAttributeString( version_string, version ) || (version != "1.0") ) { llerrs << "Invalid avatar skeleton file version: " << version << " in file: " << filename << llendl; + return FALSE; } return TRUE; -- cgit v1.2.3 From 03d7153e557cf0021cc44dde3310caca2df76b8f Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 14:18:54 +0000 Subject: CID-67 Checker: FORWARD_NULL Function: LLFloaterTools::updatePopup(LLCoordGL, unsigned int) File: /indra/newview/llfloatertools.cpp --- indra/newview/llfloatertools.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/indra/newview/llfloatertools.cpp b/indra/newview/llfloatertools.cpp index 4edd09b02c..e2b083a29b 100644 --- a/indra/newview/llfloatertools.cpp +++ b/indra/newview/llfloatertools.cpp @@ -666,8 +666,8 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask) if (mCheckCopyCenters) mCheckCopyCenters ->setVisible( create_visible ); if (mCheckCopyRotates) mCheckCopyRotates ->setVisible( create_visible ); - if (mCheckCopyCenters) mCheckCopyCenters->setEnabled( mCheckCopySelection->get() ); - if (mCheckCopyRotates) mCheckCopyRotates->setEnabled( mCheckCopySelection->get() ); + if (mCheckCopyCenters && mCheckCopySelection) mCheckCopyCenters->setEnabled( mCheckCopySelection->get() ); + if (mCheckCopyRotates && mCheckCopySelection) mCheckCopyRotates->setEnabled( mCheckCopySelection->get() ); // Land buttons BOOL land_visible = (tool == LLToolBrushLand::getInstance() || tool == LLToolSelectLand::getInstance() ); -- cgit v1.2.3 From a1e2ce7fa29be3faca8e58d8df25ea05dcb8a4a5 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 14:21:59 +0000 Subject: CID-153 Checker: NULL_RETURNS Function: LLAgentWearables::makeNewOutfit(const std::basic_string, std::allocator>&, const LLDynamicArray &, const LLDynamicArray &, int) File: /indra/newview/llagentwearables.cpp --- indra/newview/llagentwearables.cpp | 40 +++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/indra/newview/llagentwearables.cpp b/indra/newview/llagentwearables.cpp index 6620780b27..6078620e87 100644 --- a/indra/newview/llagentwearables.cpp +++ b/indra/newview/llagentwearables.cpp @@ -1290,25 +1290,29 @@ void LLAgentWearables::makeNewOutfit(const std::string& new_folder_name, j, new_wearable, todo); - if (isWearableCopyable((EWearableType)type, j)) + llassert(item); + if (item) { - copy_inventory_item( - gAgent.getID(), - item->getPermissions().getOwner(), - item->getUUID(), - folder_id, - new_name, - cb); - } - else - { - move_inventory_item( - gAgent.getID(), - gAgent.getSessionID(), - item->getUUID(), - folder_id, - new_name, - cb); + if (isWearableCopyable((EWearableType)type, j)) + { + copy_inventory_item( + gAgent.getID(), + item->getPermissions().getOwner(), + item->getUUID(), + folder_id, + new_name, + cb); + } + else + { + move_inventory_item( + gAgent.getID(), + gAgent.getSessionID(), + item->getUUID(), + folder_id, + new_name, + cb); + } } } } -- cgit v1.2.3 From 7aa169bd1663c35b7a299091172c6fc7cc527966 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 14:23:06 +0000 Subject: CID-151 Checker: NULL_RETURNS Function: LLFavoritesBarCtrl::insertBeforeItem(LLDynamicArray, (int)32> &, const LLUUID &, LLViewerInventoryItem *) File: /indra/newview/llfavoritesbar.cpp --- indra/newview/llfavoritesbar.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/indra/newview/llfavoritesbar.cpp b/indra/newview/llfavoritesbar.cpp index 1e8a739d78..bf7c735488 100644 --- a/indra/newview/llfavoritesbar.cpp +++ b/indra/newview/llfavoritesbar.cpp @@ -1264,8 +1264,11 @@ LLInventoryModel::item_array_t::iterator LLFavoritesBarCtrl::findItemByUUID(LLIn void LLFavoritesBarCtrl::insertBeforeItem(LLInventoryModel::item_array_t& items, const LLUUID& beforeItemId, LLViewerInventoryItem* insertedItem) { LLViewerInventoryItem* beforeItem = gInventory.getItem(beforeItemId); - - items.insert(findItemByUUID(items, beforeItem->getUUID()), insertedItem); + llassert(beforeItem); + if (beforeItem) + { + items.insert(findItemByUUID(items, beforeItem->getUUID()), insertedItem); + } } // EOF -- cgit v1.2.3 From d56525aaec271775d7fa4ffb162b1316850161e5 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 14:24:38 +0000 Subject: CID-150 Checker: NULL_RETURNS Function: LLFloaterGesture::onCopyPasteAction(const LLSD &) File: /indra/newview/llfloatergesture.cpp --- indra/newview/llfloatergesture.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/indra/newview/llfloatergesture.cpp b/indra/newview/llfloatergesture.cpp index b684e1f985..60a5fb6aba 100644 --- a/indra/newview/llfloatergesture.cpp +++ b/indra/newview/llfloatergesture.cpp @@ -510,6 +510,7 @@ void LLFloaterGesture::onCopyPasteAction(const LLSD& command) if(ids.empty() || !gInventory.isCategoryComplete(mGestureFolderID)) return; LLInventoryCategory* gesture_dir = gInventory.getCategory(mGestureFolderID); + llassert(gesture_dir); LLPointer cb = new GestureCopiedCallback(this); for(LLDynamicArray::iterator it = ids.begin(); it != ids.end(); it++) @@ -517,7 +518,7 @@ void LLFloaterGesture::onCopyPasteAction(const LLSD& command) LLInventoryItem* item = gInventory.getItem(*it); LLStringUtil::format_map_t string_args; string_args["[COPY_NAME]"] = item->getName(); - if(item && item->getInventoryType() == LLInventoryType::IT_GESTURE) + if(gesture_dir && item && item->getInventoryType() == LLInventoryType::IT_GESTURE) { LL_DEBUGS("Gesture")<< "Copying gesture " << item->getName() << " "<< item->getUUID() << " into " << gesture_dir->getName() << " "<< gesture_dir->getUUID() << LL_ENDL; -- cgit v1.2.3 From dd360d05dcae2d11343b585a9d6e6a564aa2bca7 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 14:26:21 +0000 Subject: CID-149 Checker: NULL_RETURNS Function: LLFloaterGesture::onCopyPasteAction(const LLSD &) File: /indra/newview/llfloatergesture.cpp --- indra/newview/llfloatergesture.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/indra/newview/llfloatergesture.cpp b/indra/newview/llfloatergesture.cpp index 60a5fb6aba..af6386b8b6 100644 --- a/indra/newview/llfloatergesture.cpp +++ b/indra/newview/llfloatergesture.cpp @@ -516,10 +516,10 @@ void LLFloaterGesture::onCopyPasteAction(const LLSD& command) for(LLDynamicArray::iterator it = ids.begin(); it != ids.end(); it++) { LLInventoryItem* item = gInventory.getItem(*it); - LLStringUtil::format_map_t string_args; - string_args["[COPY_NAME]"] = item->getName(); if(gesture_dir && item && item->getInventoryType() == LLInventoryType::IT_GESTURE) { + LLStringUtil::format_map_t string_args; + string_args["[COPY_NAME]"] = item->getName(); LL_DEBUGS("Gesture")<< "Copying gesture " << item->getName() << " "<< item->getUUID() << " into " << gesture_dir->getName() << " "<< gesture_dir->getUUID() << LL_ENDL; copy_inventory_item(gAgent.getID(), item->getPermissions().getOwner(), item->getUUID(), -- cgit v1.2.3 From 2d7badb6047d9897c4b7e288b6c6b569b5b643e4 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 14:28:35 +0000 Subject: CID-148 Checker: NULL_RETURNS Function: LLFloaterGesture::onClickPlay() File: /indra/newview/llfloatergesture.cpp --- indra/newview/llfloatergesture.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/indra/newview/llfloatergesture.cpp b/indra/newview/llfloatergesture.cpp index af6386b8b6..90617a337a 100644 --- a/indra/newview/llfloatergesture.cpp +++ b/indra/newview/llfloatergesture.cpp @@ -427,8 +427,13 @@ void LLFloaterGesture::onClickPlay() BOOL inform_server = TRUE; BOOL deactivate_similar = FALSE; LLGestureManager::instance().setGestureLoadedCallback(item_id, boost::bind(&LLFloaterGesture::playGesture, this, item_id)); - LLGestureManager::instance().activateGestureWithAsset(item_id, gInventory.getItem(item_id)->getAssetUUID(), inform_server, deactivate_similar); - LL_DEBUGS("Gesture")<< "Activating gesture with inventory ID: " << item_id <getAssetUUID(), inform_server, deactivate_similar); + LL_DEBUGS("Gesture")<< "Activating gesture with inventory ID: " << item_id < Date: Thu, 11 Feb 2010 14:30:40 +0000 Subject: CID-147 Checker: NULL_RETURNS Function: LLNotificationChannelPanel::onClickNotificationReject(void *) File: /indra/newview/llfloaternotificationsconsole.cpp --- indra/newview/llfloaternotificationsconsole.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/indra/newview/llfloaternotificationsconsole.cpp b/indra/newview/llfloaternotificationsconsole.cpp index 90db8988b2..8b110f5846 100644 --- a/indra/newview/llfloaternotificationsconsole.cpp +++ b/indra/newview/llfloaternotificationsconsole.cpp @@ -124,10 +124,15 @@ void LLNotificationChannelPanel::onClickNotificationReject(void* user_data) { LLNotificationChannelPanel* self = (LLNotificationChannelPanel*)user_data; if (!self) return; - void* data = self->getChild("notification_rejects_list")->getFirstSelected()->getUserdata(); - if (data) + LLScrollListItem* firstselected = self->getChild("notification_rejects_list")->getFirstSelected(); + llassert(firstselected); + if (firstselected) { - gFloaterView->getParentFloater(self)->addDependentFloater(new LLFloaterNotification((LLNotification*)data), TRUE); + void* data = firstselected->getUserdata(); + if (data) + { + gFloaterView->getParentFloater(self)->addDependentFloater(new LLFloaterNotification((LLNotification*)data), TRUE); + } } } -- cgit v1.2.3 From 1b8a7fdeaab78216baad1f916e9788c0b90287b3 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 11 Feb 2010 14:32:55 +0000 Subject: CID-146 Checker: NULL_RETURNS Function: LLNotificationChannelPanel::onClickNotification(void *) File: /indra/newview/llfloaternotificationsconsole.cpp --- indra/newview/llfloaternotificationsconsole.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/indra/newview/llfloaternotificationsconsole.cpp b/indra/newview/llfloaternotificationsconsole.cpp index 8b110f5846..94b5ebba00 100644 --- a/indra/newview/llfloaternotificationsconsole.cpp +++ b/indra/newview/llfloaternotificationsconsole.cpp @@ -112,10 +112,15 @@ void LLNotificationChannelPanel::onClickNotification(void* user_data) { LLNotificationChannelPanel* self = (LLNotificationChannelPanel*)user_data; if (!self) return; - void* data = self->getChild("notifications_list")->getFirstSelected()->getUserdata(); - if (data) + LLScrollListItem* firstselected = self->getChild("notifications_list")->getFirstSelected(); + llassert(firstselected); + if (firstselected) { - gFloaterView->getParentFloater(self)->addDependentFloater(new LLFloaterNotification((LLNotification*)data), TRUE); + void* data = firstselected->getUserdata(); + if (data) + { + gFloaterView->getParentFloater(self)->addDependentFloater(new LLFloaterNotification((LLNotification*)data), TRUE); + } } } -- cgit v1.2.3 From 5173c2a93a6179ff2b5aecd4b7b580842898e2d6 Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Thu, 11 Feb 2010 14:44:36 +0000 Subject: Fixing another suicidal timer tick() --- indra/newview/llfloateruipreview.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/indra/newview/llfloateruipreview.cpp b/indra/newview/llfloateruipreview.cpp index 3e804bef9d..f61c86db14 100644 --- a/indra/newview/llfloateruipreview.cpp +++ b/indra/newview/llfloateruipreview.cpp @@ -362,8 +362,7 @@ BOOL LLFadeEventTimer::tick() if(NULL == mParent) // no more need to tick, so suicide { - delete this; - return FALSE; + return TRUE; } // Set up colors -- cgit v1.2.3 From 898e9da1af113704e2e10328dfa5396deb24eb30 Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Thu, 11 Feb 2010 14:47:41 +0000 Subject: EXT-5264 : Debug setting to show in-world voice visualizations while in private voice calls Added ShowVoiceVisualizersInCalls, setting it to true will show voice visualizers, lipsync and voice gestures for people in the same voice session that are also visible in-world. --- indra/newview/app_settings/settings.xml | 11 +++++++++++ indra/newview/llvoavatar.cpp | 5 ++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index db4e0b5afd..fe34bcf4e2 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -8456,6 +8456,17 @@ Value 0 + ShowVoiceVisualizersInCalls + + Comment + Enables in-world voice visualizers, voice gestures and lip-sync while in group or P2P calls. + Persist + 1 + Type + Boolean + Value + 0 + ShowVolumeSettingsPopup Comment diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 4235f97eab..d6cf6a47f8 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -2192,13 +2192,16 @@ BOOL LLVOAvatar::idleUpdate(LLAgent &agent, LLWorld &world, const F64 &time) // store off last frame's root position to be consistent with camera position LLVector3 root_pos_last = mRoot.getWorldPosition(); BOOL detailed_update = updateCharacter(agent); - BOOL voice_enabled = gVoiceClient->getVoiceEnabled( mID ) && gVoiceClient->inProximalChannel(); if (gNoRender) { return TRUE; } + static LLUICachedControl visualizers_in_calls("ShowVoiceVisualizersInCalls", false); + bool voice_enabled = (visualizers_in_calls || gVoiceClient->inProximalChannel()) && + gVoiceClient->getVoiceEnabled(mID); + idleUpdateVoiceVisualizer( voice_enabled ); idleUpdateMisc( detailed_update ); idleUpdateAppearanceAnimation(); -- cgit v1.2.3 From 0762ebdf9871cc1456a1739103e18f8e8676a6a6 Mon Sep 17 00:00:00 2001 From: Chuck Linden Date: Thu, 11 Feb 2010 10:13:14 -0500 Subject: Added tool tip to Clear History button. https://jira.secondlife.com/browse/EXT-5312 --- indra/newview/skins/default/xui/en/panel_preferences_privacy.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml index f7e3ede93c..f78d90c434 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml @@ -17,6 +17,7 @@ follows="left|bottom" height="23" label="Clear History" + tool_tip="Clear login image, last location, teleport history, web, and texture cache" layout="topleft" left="30" name="clear_cache" -- cgit v1.2.3