Skip to content

Commit 62212fc

Browse files
author
mikee47
committed
Tweak string comparisons
1 parent 0cd5d1c commit 62212fc

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

src/String.cpp

+10-7
Original file line numberDiff line numberDiff line change
@@ -23,17 +23,18 @@
2323

2424
namespace FSTR
2525
{
26-
bool String::equals(const char* cstr, size_t len) const
26+
bool String::equals(const char* cstr, size_t clen) const
2727
{
2828
// Unlikely we'd want an empty flash string, but check anyway
2929
if(cstr == nullptr) {
3030
return length() == 0;
3131
}
3232
// Don't use strcmp as our data may contain nuls
33-
if(len == 0) {
34-
len = strlen(cstr);
33+
if(clen == 0) {
34+
clen = strlen(cstr);
3535
}
36-
if(len != length()) {
36+
auto len = length();
37+
if(clen != len) {
3738
return false;
3839
}
3940
LOAD_FSTR(buf, *this);
@@ -42,13 +43,15 @@ bool String::equals(const char* cstr, size_t len) const
4243

4344
bool String::equals(const String& str) const
4445
{
45-
if(data() == str.data()) {
46+
auto dataptr = data();
47+
if(dataptr == str.data()) {
4648
return true;
4749
}
48-
if(length() != str.length()) {
50+
auto len = length();
51+
if(len != str.length()) {
4952
return false;
5053
}
51-
return memcmp_aligned(data(), str.data(), length()) == 0;
54+
return memcmp_aligned(dataptr, str.data(), len) == 0;
5255
}
5356

5457
/* Wiring String support */

0 commit comments

Comments
 (0)