1
0
Fork 0
forked from len0rd/rockbox

rbutil: Replace use of QRegExp with QRegularExpression.

Change-Id: Ie89057a9857bc66612cb15fef81d3ca6c3e71b4c
This commit is contained in:
Dominik Riebeling 2022-03-20 10:52:52 +01:00
parent 01d2979bce
commit 04e22d8719
3 changed files with 11 additions and 11 deletions

View file

@ -418,10 +418,11 @@ QMultiMap<uint32_t, QString> System::listUsbDevices(void)
// the keys (W7 uses different casing than XP at least), in addition
// XP may use "Vid_" and "Pid_".
QString data = QString::fromWCharArray(buffer).toUpper();
QRegExp rex("USB\\\\VID_([0-9A-F]{4})&PID_([0-9A-F]{4}).*");
if(rex.indexIn(data) >= 0) {
QRegularExpression regex("^USB\\\\VID_([0-9A-F]{4})&PID_([0-9A-F]{4})&REV_([0-9A-F]{4})$");
QRegularExpressionMatch match = regex.match(data);
if(match.hasMatch()) {
uint32_t id;
id = rex.cap(1).toUInt(0, 16) << 16 | rex.cap(2).toUInt(0, 16);
id = match.captured(1).toUInt(0, 16) << 16 | match.captured(2).toUInt(0, 16);
usbids.insert(id, description);
LOG_INFO() << "USB:" << QString("0x%1").arg(id, 8, 16);
}