summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforminputcontexts
diff options
context:
space:
mode:
authorGatis Paeglis <gatis.paeglis@theqtcompany.com>2015-04-14 14:00:05 +0200
committerGatis Paeglis <gatis.paeglis@digia.com>2015-04-16 18:57:51 +0000
commit365c63e7b177701c0bf80a7cb138b7559b92f350 (patch)
tree5f4ec6444348b18e09ecd18ef921f748e06aae9c /src/plugins/platforminputcontexts
parent28dcb7101e0038007bf9c2e1e17f9588b5264943 (diff)
Fix regression in compose table parsing
Performance optimization from 1aab68648 revealed that "composeValueEnd" needs adjustment for compose sequences that result in a quotation mark, for example: <dead_diaeresis> <space> : "\"" quotedbl # REVERSE SOLIDUS Change-Id: I66bf83fbe62727f1ee245aae90f8d0eb53dea6d4 Task-number: QTBUG-45538 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Diffstat (limited to 'src/plugins/platforminputcontexts')
-rw-r--r--src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
index 120b228f79..65020eb848 100644
--- a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
+++ b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
@@ -385,6 +385,10 @@ void TableGenerator::parseKeySequence(char *line)
if (!composeValueEnd)
return;
+ // if composed value is a quotation mark adjust the end pointer
+ if (composeValueEnd[1] == '"')
+ ++composeValueEnd;
+
if (*composeValue == '\\' && composeValue[1] >= '0' && composeValue[1] <= '9') {
// handle octal and hex code values
char detectBase = composeValue[2];