From 365c63e7b177701c0bf80a7cb138b7559b92f350 Mon Sep 17 00:00:00 2001 From: Gatis Paeglis Date: Tue, 14 Apr 2015 14:00:05 +0200 Subject: 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: : "\"" quotedbl # REVERSE SOLIDUS Change-Id: I66bf83fbe62727f1ee245aae90f8d0eb53dea6d4 Task-number: QTBUG-45538 Reviewed-by: Simon Hausmann --- .../platforminputcontexts/compose/generator/qtablegenerator.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/plugins/platforminputcontexts') 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]; -- cgit v1.2.3