fix unexpected "int -> QChar -> QString" conversion (#417)

This commit is contained in:
Cyano Hao 2024-05-09 21:09:57 +08:00 committed by GitHub
parent d6c739d72e
commit cc359651ef
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 9 additions and 6 deletions

View File

@ -576,9 +576,11 @@ void CppScopes::addScope(int line, PStatement scopeStatement)
scope->statement = scopeStatement;
mScopes.append(scope);
#ifdef QT_DEBUG
if (!mScopes.isEmpty() && mScopes.back()->startLine>line) {
if (!mScopes.isEmpty() && mScopes.back()->startLine > line) {
qDebug()<<QString("Error: new scope %1 at %2 which is less that last scope %3")
.arg(scopeStatement->fullName, line,mScopes.back()->startLine>line);
.arg(scopeStatement->fullName)
.arg(line)
.arg(mScopes.back()->startLine);
}
#endif
}

View File

@ -238,7 +238,7 @@ QString variableExpansion(const QString &command, int &pos, const QMap<QString,
unescaped.append("\\u");
} else {
int hex = digits.toUInt(nullptr, 16);
QByteArray encoded = QString(hex).toUtf8();
QByteArray encoded = QString(QChar(hex)).toUtf8();
unescaped.append(encoded);
}
break;
@ -251,7 +251,8 @@ QString variableExpansion(const QString &command, int &pos, const QMap<QString,
unescaped.append("\\U");
} else {
int hex = digits.toUInt(nullptr, 16);
QByteArray encoded = QString(hex).toUtf8();
char32_t s = hex;
QByteArray encoded = QString::fromUcs4(&s, 1).toUtf8();
unescaped.append(encoded);
}
break;

View File

@ -258,7 +258,7 @@ void BookmarkModel::save(const QString &filename, const QString& projectFolder)
} else {
PBookmark pTemp = list[idx];
if (pTemp->timestamp<=bookmark->timestamp) {
bookmark->description = pTemp->timestamp;
bookmark->description = pTemp->description;
bookmark->timestamp = pTemp->timestamp;
if (forProject == mIsForProject)
emit dataChanged(createIndex(idx,2),createIndex(idx,2));

View File

@ -3239,7 +3239,7 @@ void QSynEdit::recalcCharExtent()
QString QSynEdit::expandAtWideGlyphs(const QString &S)
{
QString Result(S.length()*2); // speed improvement
QString Result(S.length()*2, QChar(0)); // speed improvement
int j = 0;
for (int i=0;i<S.length();i++) {
int CountOfAvgGlyphs = ceil(fontMetrics().horizontalAdvance(S[i])/(double)mCharWidth);