summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Linden <none@none>2010-10-15 14:11:24 -0700
committerRichard Linden <none@none>2010-10-15 14:11:24 -0700
commit98563df257729ce36dff363134136f0b549f8313 (patch)
treee27cbb6ffc88fc2011bccbb09f3bf4299d1832de
parent6dcf769ca5c8bef9a170451094f022ac3791f1d9 (diff)
switch ui string args to auto_ptr to do automatic cleanup
-rw-r--r--indra/llui/lluistring.cpp4
-rw-r--r--indra/llui/lluistring.h4
2 files changed, 4 insertions, 4 deletions
diff --git a/indra/llui/lluistring.cpp b/indra/llui/lluistring.cpp
index ac69d3bf85..d805e37c09 100644
--- a/indra/llui/lluistring.cpp
+++ b/indra/llui/lluistring.cpp
@@ -129,7 +129,7 @@ void LLUIString::updateResult() const
mResult = mOrig;
// get the defailt args + local args
- if (!mArgs || mArgs->empty())
+ if (!mArgs.get() || mArgs->empty())
{
LLStringUtil::format(mResult, LLTrans::getDefaultArgs());
}
@@ -150,7 +150,7 @@ void LLUIString::updateWResult() const
LLStringUtil::format_map_t& LLUIString::getArgs()
{
- if (!mArgs)
+ if (!mArgs.get())
{
mArgs = new LLStringUtil::format_map_t;
}
diff --git a/indra/llui/lluistring.h b/indra/llui/lluistring.h
index eff2467bf0..d7be3b1800 100644
--- a/indra/llui/lluistring.h
+++ b/indra/llui/lluistring.h
@@ -80,7 +80,7 @@ public:
S32 length() const { return getUpdatedWResult().size(); }
void clear();
- void clearArgs() { if (mArgs) mArgs->clear(); }
+ void clearArgs() { if (mArgs.get()) mArgs->clear(); }
// These utility functions are included for text editing.
// They do not affect mOrig and do not perform argument substitution
@@ -104,7 +104,7 @@ private:
std::string mOrig;
mutable std::string mResult;
mutable LLWString mWResult; // for displaying
- LLStringUtil::format_map_t* mArgs;
+ std::auto_ptr<LLStringUtil::format_map_t> mArgs;
// controls lazy evaluation
mutable bool mNeedsResult;