summaryrefslogtreecommitdiff
path: root/indra/newview/llaisapi.cpp
diff options
context:
space:
mode:
authorAndrey Lihatskiy <andreylproductengine@lindenlab.com>2015-12-11 17:41:41 +0200
committerAndrey Lihatskiy <andreylproductengine@lindenlab.com>2015-12-11 17:41:41 +0200
commitaa42870d5ad1edc9ea33c62c5bf66e84375c3b0e (patch)
tree5bbd74f0b89fed271fc9ca8eb01ddd5954a26f94 /indra/newview/llaisapi.cpp
parentdca797c3db34d119ccdc2d6f24c7742df75ff9c6 (diff)
parenta53caef1e8314f9cf2af3c0081bf57d5f20db560 (diff)
Merged lindenlab/viewer-lion into default
Diffstat (limited to 'indra/newview/llaisapi.cpp')
-rwxr-xr-xindra/newview/llaisapi.cpp18
1 files changed, 15 insertions, 3 deletions
diff --git a/indra/newview/llaisapi.cpp b/indra/newview/llaisapi.cpp
index 714b456ae7..d8b6cc729d 100755
--- a/indra/newview/llaisapi.cpp
+++ b/indra/newview/llaisapi.cpp
@@ -567,13 +567,25 @@ void AISUpdate::parseCategory(const LLSD& category_map)
parseDescendentCount(category_id, category_map["_embedded"]);
}
- LLPointer<LLViewerInventoryCategory> new_cat(new LLViewerInventoryCategory(category_id));
+ LLPointer<LLViewerInventoryCategory> new_cat;
LLViewerInventoryCategory *curr_cat = gInventory.getCategory(category_id);
if (curr_cat)
{
// Default to current values where not provided.
- new_cat->copyViewerCategory(curr_cat);
- }
+ new_cat = new LLViewerInventoryCategory(curr_cat);
+ }
+ else
+ {
+ if (category_map.has("agent_id"))
+ {
+ new_cat = new LLViewerInventoryCategory(category_map["agent_id"].asUUID());
+ }
+ else
+ {
+ LL_DEBUGS() << "No owner provided, folder might be assigned wrong owner" << LL_ENDL;
+ new_cat = new LLViewerInventoryCategory(LLUUID::null);
+ }
+ }
BOOL rv = new_cat->unpackMessage(category_map);
// *NOTE: unpackMessage does not unpack version or descendent count.
//if (category_map.has("version"))