summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/llnamebox.cpp13
-rw-r--r--indra/newview/llnamebox.h1
2 files changed, 11 insertions, 3 deletions
diff --git a/indra/newview/llnamebox.cpp b/indra/newview/llnamebox.cpp
index d434017804..cd810b9793 100644
--- a/indra/newview/llnamebox.cpp
+++ b/indra/newview/llnamebox.cpp
@@ -53,6 +53,7 @@ LLNameBox::LLNameBox(const Params& p)
{
mNameID = LLUUID::null;
mLink = p.link;
+ mInitialValue = p.initial_value().asString();
LLNameBox::sInstances.insert(this);
setText(LLStringUtil::null);
}
@@ -67,17 +68,23 @@ void LLNameBox::setNameID(const LLUUID& name_id, BOOL is_group)
mNameID = name_id;
std::string name;
+ BOOL got_name = FALSE;
if (!is_group)
{
- gCacheName->getFullName(name_id, name);
+ got_name = gCacheName->getFullName(name_id, name);
}
else
{
- gCacheName->getGroupName(name_id, name);
+ got_name = gCacheName->getGroupName(name_id, name);
}
- setName(name, is_group);
+ // Got the name already? Set it.
+ // Otherwise it will be set later in refresh().
+ if (got_name)
+ setName(name, is_group);
+ else
+ setText(mInitialValue);
}
void LLNameBox::refresh(const LLUUID& id, const std::string& firstname,
diff --git a/indra/newview/llnamebox.h b/indra/newview/llnamebox.h
index 0109525e85..48b54faec8 100644
--- a/indra/newview/llnamebox.h
+++ b/indra/newview/llnamebox.h
@@ -76,6 +76,7 @@ private:
private:
LLUUID mNameID;
BOOL mLink;
+ std::string mInitialValue;
};