summaryrefslogtreecommitdiff
path: root/indra/newview/llaisapi.cpp
diff options
context:
space:
mode:
authorpavelkproductengine <pavelkproductengine@lindenlab.com>2016-03-21 18:36:50 +0200
committerpavelkproductengine <pavelkproductengine@lindenlab.com>2016-03-21 18:36:50 +0200
commit5bbf263c293286395730d969e0b9beec9d830f48 (patch)
tree22b81dea68f728ec122de561cb8d77fe4fb14d94 /indra/newview/llaisapi.cpp
parent824deea265614b649e074d4702e8f4bf071cef68 (diff)
parent4aae7b51616c0963af4668442bdb5bfaba8c5044 (diff)
Merge
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"))