diff --git a/core/fxcrt/widestring.cpp b/core/fxcrt/widestring.cpp
index 8d47564..7b5bf66 100644
--- a/core/fxcrt/widestring.cpp
+++ b/core/fxcrt/widestring.cpp
@@ -924,7 +924,7 @@
     return result;
   if (this_len == that_len)
     return 0;
-  return this_len < that_len;
+  return this_len < that_len ? -1 : 1;
 }
 
 int WideString::CompareNoCase(const wchar_t* lpsz) const {
diff --git a/core/fxcrt/widestring_unittest.cpp b/core/fxcrt/widestring_unittest.cpp
index 2fb9e8c..473d59c 100644
--- a/core/fxcrt/widestring_unittest.cpp
+++ b/core/fxcrt/widestring_unittest.cpp
@@ -52,15 +52,18 @@
 TEST(WideString, OperatorLT) {
   WideString empty;
   WideString a(L"a");
+  WideString ab(L"ab");
   WideString abc(L"\x0110qq");  // Comes before despite endianness.
   WideString def(L"\x1001qq");  // Comes after despite endianness.
   WideStringView v_empty;
   WideStringView v_a(L"a");
+  WideStringView v_ab(L"ab");
   WideStringView v_abc(L"\x0110qq");
   WideStringView v_def(L"\x1001qq");
   const wchar_t* const c_null = nullptr;
   const wchar_t* const c_empty = L"";
   const wchar_t* const c_a = L"a";
+  const wchar_t* const c_ab = L"ab";
   const wchar_t* const c_abc = L"\x0110qq";
   const wchar_t* const c_def = L"\x1001qq";
 
@@ -142,6 +145,14 @@
   EXPECT_FALSE(def < c_abc);
   EXPECT_TRUE(abc < v_def);
   EXPECT_FALSE(def < v_abc);
+
+  EXPECT_TRUE(a < ab);
+  EXPECT_TRUE(a < c_ab);
+  EXPECT_TRUE(a < v_ab);
+  EXPECT_TRUE(c_a < ab);
+  EXPECT_TRUE(c_a < v_ab);
+  EXPECT_TRUE(v_a < c_ab);
+  EXPECT_TRUE(v_a < v_ab);
 }
 
 TEST(WideString, OperatorEQ) {
