mirror of
https://github.com/weechat/weechat.git
synced 2026-07-07 10:13:12 +02:00
core: return only -1, 0 or 1 in string comparison functions
This commit is contained in:
+21
-25
@@ -124,9 +124,9 @@ string_toupper (char *string)
|
||||
* Compares two strings (locale and case independent).
|
||||
*
|
||||
* Returns:
|
||||
* < 0: string1 < string2
|
||||
* 0: string1 == string2
|
||||
* > 0: string1 > string2
|
||||
* -1: string1 < string2
|
||||
* 0: string1 == string2
|
||||
* 1: string1 > string2
|
||||
*/
|
||||
|
||||
int
|
||||
@@ -141,7 +141,7 @@ string_strcasecmp (const char *string1, const char *string2)
|
||||
{
|
||||
diff = utf8_charcasecmp (string1, string2);
|
||||
if (diff != 0)
|
||||
return diff;
|
||||
return (diff < 0) ? -1 : 1;
|
||||
|
||||
string1 = utf8_next_char (string1);
|
||||
string2 = utf8_next_char (string2);
|
||||
@@ -163,9 +163,9 @@ string_strcasecmp (const char *string1, const char *string2)
|
||||
* (ranges 29 and 30 are used by some protocols like IRC)
|
||||
*
|
||||
* Returns:
|
||||
* < 0: string1 < string2
|
||||
* 0: string1 == string2
|
||||
* > 0: string1 > string2
|
||||
* -1: string1 < string2
|
||||
* 0: string1 == string2
|
||||
* 1: string1 > string2
|
||||
*/
|
||||
|
||||
int
|
||||
@@ -180,7 +180,7 @@ string_strcasecmp_range (const char *string1, const char *string2, int range)
|
||||
{
|
||||
diff = utf8_charcasecmp_range (string1, string2, range);
|
||||
if (diff != 0)
|
||||
return diff;
|
||||
return (diff < 0) ? -1 : 1;
|
||||
|
||||
string1 = utf8_next_char (string1);
|
||||
string2 = utf8_next_char (string2);
|
||||
@@ -193,9 +193,9 @@ string_strcasecmp_range (const char *string1, const char *string2, int range)
|
||||
* Compares two strings with max length (locale and case independent).
|
||||
*
|
||||
* Returns:
|
||||
* < 0: string1 < string2
|
||||
* -1: string1 < string2
|
||||
* 0: string1 == string2
|
||||
* > 0: string1 > string2
|
||||
* 1: string1 > string2
|
||||
*/
|
||||
|
||||
int
|
||||
@@ -211,7 +211,7 @@ string_strncasecmp (const char *string1, const char *string2, int max)
|
||||
{
|
||||
diff = utf8_charcasecmp (string1, string2);
|
||||
if (diff != 0)
|
||||
return diff;
|
||||
return (diff < 0) ? -1 : 1;
|
||||
|
||||
string1 = utf8_next_char (string1);
|
||||
string2 = utf8_next_char (string2);
|
||||
@@ -238,9 +238,9 @@ string_strncasecmp (const char *string1, const char *string2, int max)
|
||||
* (ranges 29 and 30 are used by some protocols like IRC)
|
||||
*
|
||||
* Returns:
|
||||
* < 0: string1 < string2
|
||||
* 0: string1 == string2
|
||||
* > 0: string1 > string2
|
||||
* -1: string1 < string2
|
||||
* 0: string1 == string2
|
||||
* 1: string1 > string2
|
||||
*/
|
||||
|
||||
int
|
||||
@@ -257,7 +257,7 @@ string_strncasecmp_range (const char *string1, const char *string2, int max,
|
||||
{
|
||||
diff = utf8_charcasecmp_range (string1, string2, range);
|
||||
if (diff != 0)
|
||||
return diff;
|
||||
return (diff < 0) ? -1 : 1;
|
||||
|
||||
string1 = utf8_next_char (string1);
|
||||
string2 = utf8_next_char (string2);
|
||||
@@ -274,9 +274,9 @@ string_strncasecmp_range (const char *string1, const char *string2, int max,
|
||||
* Compares two strings, ignoring some chars.
|
||||
*
|
||||
* Returns:
|
||||
* < 0: string1 < string2
|
||||
* 0: string1 == string2
|
||||
* > 0: string1 > string2
|
||||
* -1: string1 < string2
|
||||
* 0: string1 == string2
|
||||
* 1: string1 > string2
|
||||
*/
|
||||
|
||||
int
|
||||
@@ -285,12 +285,8 @@ string_strcmp_ignore_chars (const char *string1, const char *string2,
|
||||
{
|
||||
int diff;
|
||||
|
||||
if (!string1 && !string2)
|
||||
return 0;
|
||||
if (!string1 && string2)
|
||||
return -1;
|
||||
if (string1 && !string2)
|
||||
return 1;
|
||||
if (!string1 || !string2)
|
||||
return (string1) ? 1 : ((string2) ? -1 : 0);
|
||||
|
||||
while (string1 && string1[0] && string2 && string2[0])
|
||||
{
|
||||
@@ -316,7 +312,7 @@ string_strcmp_ignore_chars (const char *string1, const char *string2,
|
||||
diff = (case_sensitive) ?
|
||||
(int)string1[0] - (int)string2[0] : utf8_charcasecmp (string1, string2);
|
||||
if (diff != 0)
|
||||
return diff;
|
||||
return (diff < 0) ? -1 : 1;
|
||||
|
||||
string1 = utf8_next_char (string1);
|
||||
string2 = utf8_next_char (string2);
|
||||
|
||||
+7
-7
@@ -524,9 +524,9 @@ utf8_strlen_screen (const char *string)
|
||||
* Compares two UTF-8 chars (case sensitive).
|
||||
*
|
||||
* Returns:
|
||||
* < 0: char1 < char2
|
||||
* 0: char1 == char2
|
||||
* > 0: char1 > char2
|
||||
* -1: string1 < string2
|
||||
* 0: string1 == string2
|
||||
* 1: string1 > string2
|
||||
*/
|
||||
|
||||
int
|
||||
@@ -545,7 +545,7 @@ utf8_charcmp (const char *string1, const char *string2)
|
||||
{
|
||||
diff = (int)((unsigned char) string1[i]) - (int)((unsigned char) string2[i]);
|
||||
if (diff != 0)
|
||||
return diff;
|
||||
return (diff < 0) ? -1 : 1;
|
||||
i++;
|
||||
}
|
||||
/* string1 == string2 ? */
|
||||
@@ -562,9 +562,9 @@ utf8_charcmp (const char *string1, const char *string2)
|
||||
* Compares two UTF-8 chars (case is ignored).
|
||||
*
|
||||
* Returns:
|
||||
* < 0: char1 < char2
|
||||
* 0: char1 == char2
|
||||
* > 0: char1 > char2
|
||||
* -1: string1 < string2
|
||||
* 0: string1 == string2
|
||||
* 1: string1 > string2
|
||||
*/
|
||||
|
||||
int
|
||||
|
||||
Reference in New Issue
Block a user