summaryrefslogtreecommitdiff
path: root/svl/source/misc/sharedstring.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svl/source/misc/sharedstring.cxx')
-rw-r--r--svl/source/misc/sharedstring.cxx17
1 files changed, 17 insertions, 0 deletions
diff --git a/svl/source/misc/sharedstring.cxx b/svl/source/misc/sharedstring.cxx
index d5b27bdf0d10..7286cba37a2d 100644
--- a/svl/source/misc/sharedstring.cxx
+++ b/svl/source/misc/sharedstring.cxx
@@ -56,6 +56,23 @@ SharedString& SharedString::operator= ( const SharedString& r )
return *this;
}
+bool SharedString::operator== ( const SharedString& r ) const
+{
+ // Only compare case sensitive strings.
+ if (mpData)
+ {
+ if (!r.mpData)
+ return false;
+
+ if (mpData->length != r.mpData->length)
+ return false;
+
+ return rtl_ustr_compare_WithLength(mpData->buffer, mpData->length, r.mpData->buffer, r.mpData->length);
+ }
+
+ return !r.mpData;
+}
+
rtl_uString* SharedString::getData()
{
return mpData;