[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[5936] multi-byte backspace in incremental search
From: |
Gavin D. Smith |
Subject: |
[5936] multi-byte backspace in incremental search |
Date: |
Wed, 19 Nov 2014 12:41:48 +0000 |
Revision: 5936
http://svn.sv.gnu.org/viewvc/?view=rev&root=texinfo&revision=5936
Author: gavin
Date: 2014-11-19 12:41:45 +0000 (Wed, 19 Nov 2014)
Log Message:
-----------
multi-byte backspace in incremental search
Modified Paths:
--------------
trunk/ChangeLog
trunk/info/session.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2014-11-19 12:07:16 UTC (rev 5935)
+++ trunk/ChangeLog 2014-11-19 12:41:45 UTC (rev 5936)
@@ -1,5 +1,10 @@
2014-11-19 Gavin Smith <address@hidden>
+ * info/session.c (incremental_search) <backspace>: Remove a
+ complete multi-byte character.
+
+2014-11-19 Gavin Smith <address@hidden>
+
* info/info.c (get_initial_file) <inexact dir lookup>: Check if
file referred to exists.
* info/t/dir-dangling-entry.sh: New test.
Modified: trunk/info/session.c
===================================================================
--- trunk/info/session.c 2014-11-19 12:07:16 UTC (rev 5935)
+++ trunk/info/session.c 2014-11-19 12:41:45 UTC (rev 5936)
@@ -4607,10 +4607,20 @@
}
else
{
- /* TODO: Erase mulit-byte characters correctly. */
- pop_isearch (window, &isearch_string_index,
- &dir, &search_result, &start_off);
+ int end = isearch_string_index;
+ /* Remove a complete multi-byte character from the end of the
+ search string. */
+ do
+ {
+ pop_isearch (window, &isearch_string_index,
+ &dir, &search_result, &start_off);
+ }
+ while (isearch_string_index > 0
+ && (long) mbrlen (isearch_string + isearch_string_index,
+ end - isearch_string_index, NULL) <= 0);
+
isearch_string[isearch_string_index] = '\0';
+
if (isearch_string_index == 0)
{
/* Don't search for an empty string. Clear the search. */
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [5936] multi-byte backspace in incremental search,
Gavin D. Smith <=