summaryrefslogtreecommitdiff
path: root/src/fns.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/fns.c')
-rw-r--r--src/fns.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/fns.c b/src/fns.c
index 6383e09302b..493d7ba2897 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -884,12 +884,11 @@ string_char_to_byte (string, char_index)
int best_below, best_below_byte;
int best_above, best_above_byte;
- if (! STRING_MULTIBYTE (string))
- return char_index;
-
best_below = best_below_byte = 0;
best_above = SCHARS (string);
best_above_byte = SBYTES (string);
+ if (best_above == best_above_byte)
+ return char_index;
if (EQ (string, string_char_byte_cache_string))
{
@@ -957,12 +956,11 @@ string_byte_to_char (string, byte_index)
int best_below, best_below_byte;
int best_above, best_above_byte;
- if (! STRING_MULTIBYTE (string))
- return byte_index;
-
best_below = best_below_byte = 0;
best_above = SCHARS (string);
best_above_byte = SBYTES (string);
+ if (best_above == best_above_byte)
+ return byte_index;
if (EQ (string, string_char_byte_cache_string))
{