From f7d502d02435bac8769ecefc5a1b84bfc4aed200 Mon Sep 17 00:00:00 2001 From: Richard Heck Date: Mon, 16 Apr 2018 22:32:04 -0400 Subject: [PATCH] Use FuncRequest::getArg instead of splitting the argument ourselves. --- src/Text3.cpp | 11 +++++++---- src/mathed/InsetMathNest.cpp | 12 ++++++++---- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/src/Text3.cpp b/src/Text3.cpp index 195879ad17..833a7ed645 100644 --- a/src/Text3.cpp +++ b/src/Text3.cpp @@ -1699,12 +1699,14 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd) case LFUN_UNICODE_INSERT: { if (cmd.argument().empty()) break; - // splits on whitespace - vector args = - getVectorFromString(cmd.argument(), from_ascii(" "), false, true); - for (auto const & arg : args) { + int i = 0; + while (true) { + docstring const arg = from_utf8(cmd.getArg(i)); + if (arg.empty()) + break; if (!isHex(arg)) { LYXERR0("Not a hexstring: " << arg); + ++i; continue; } char_type c = hexToInt(arg); @@ -1712,6 +1714,7 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd) LYXERR(Debug::KEY, "Inserting c: " << c); lyx::dispatch(FuncRequest(LFUN_SELF_INSERT, docstring(1, c))); } + ++i; } break; } diff --git a/src/mathed/InsetMathNest.cpp b/src/mathed/InsetMathNest.cpp index ec464134be..6f415913b1 100644 --- a/src/mathed/InsetMathNest.cpp +++ b/src/mathed/InsetMathNest.cpp @@ -1249,20 +1249,24 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd) case LFUN_UNICODE_INSERT: { if (cmd.argument().empty()) break; - // splits on whitespace - vector args = - getVectorFromString(cmd.argument(), from_ascii(" "), false, true); - for (auto const & arg : args) { + int i = 0; + while (true) { + docstring const arg = from_utf8(cmd.getArg(i)); + if (arg.empty()) + break; if (!isHex(arg)) { LYXERR0("Not a hexstring: " << arg); + ++i; continue; } char_type c = hexToInt(arg); if (c >= 32 && c < 0x10ffff) { + LYXERR(Debug::KEY, "Inserting c: " << c); FuncCode code = currentMode() == MATH_MODE ? LFUN_MATH_INSERT : LFUN_SELF_INSERT; lyx::dispatch(FuncRequest(code, docstring(1, c))); } + ++i; } break; } -- 2.39.2