diff options
author | schmidt <douglascraigschmidt@users.noreply.github.com> | 2006-06-04 00:50:30 +0000 |
---|---|---|
committer | schmidt <douglascraigschmidt@users.noreply.github.com> | 2006-06-04 00:50:30 +0000 |
commit | f119607bb058697ccff4653961619af974d41142 (patch) | |
tree | 12bb9943fd31f6afbbad77b83222a15810775796 /ace/String_Base.cpp | |
parent | 9f1dfbd9ec28e6a32467cd06d7ee5905ec07b7e6 (diff) | |
download | ATCD-f119607bb058697ccff4653961619af974d41142.tar.gz |
ChangeLogTag:Fri
Diffstat (limited to 'ace/String_Base.cpp')
-rw-r--r-- | ace/String_Base.cpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/ace/String_Base.cpp b/ace/String_Base.cpp index 5aefdddbc75..790a82f8840 100644 --- a/ace/String_Base.cpp +++ b/ace/String_Base.cpp @@ -382,10 +382,20 @@ ACE_String_Base<CHAR>::compare (const ACE_String_Base<CHAR> &s) const template <class CHAR> bool ACE_String_Base<CHAR>::operator== (const ACE_String_Base<CHAR> &s) const { - ACE_TRACE ("ACE_String_Base<CHAR>::operator=="); - if (this->len_ != s.len_) - return false; - return compare (s) == 0; + return this->len_ == s.len_ && + ACE_OS::memcmp (this->rep_, + s.rep_, + this->len_ * sizeof (CHAR)) == 0; +} + +template <class CHAR> bool +ACE_String_Base<CHAR>::operator== (const CHAR *s) const +{ + size_t len = ACE_OS::strlen (s); + return this->len_ == len && + ACE_OS::memcmp (this->rep_, + s, + len * sizeof (CHAR)) == 0; } template <class CHAR> ssize_t |