forked from qt-creator/qt-creator
LanguageClient: Fix semantic token highlight
Ignore unknown modifiers when building up and accessing the text char format hash. Change-Id: I7e11e3fb6f4240083045368daec54e417416efa9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -80,8 +80,11 @@ static int convertModifiers(int modifiersData, const QList<int> &tokenModifiers)
|
||||
{
|
||||
int result = 0;
|
||||
for (int i = 0; i < tokenModifiers.size() && modifiersData > 0; ++i) {
|
||||
if (modifiersData & 0x1)
|
||||
result |= tokenModifiers[i];
|
||||
if (modifiersData & 0x1) {
|
||||
const int modifier = tokenModifiers[i];
|
||||
if (modifier > 0)
|
||||
result |= modifier;
|
||||
}
|
||||
modifiersData = modifiersData >> 1;
|
||||
}
|
||||
return result;
|
||||
|
||||
@@ -254,6 +254,8 @@ void addModifiers(int key,
|
||||
if (tokenModifiers.isEmpty())
|
||||
return;
|
||||
int modifier = tokenModifiers.takeLast();
|
||||
if (modifier < 0)
|
||||
return;
|
||||
auto addModifier = [&](TextStyle style) {
|
||||
if (key & modifier) // already there don't add twice
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user