commit f7d502d02435bac8769ecefc5a1b84bfc4aed200
Author: Richard Heck <[email protected]>
Date: Mon Apr 16 22:32:04 2018 -0400
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 195879a..833a7ed 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<docstring> 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 ec46413..6f41591 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<docstring> 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;
}