| Line | Source Code | Coverage |
|---|
| 1 | | - |
| 2 | | - |
| 3 | | - |
| 4 | | - |
| 5 | | - |
| 6 | | - |
| 7 | | - |
| 8 | | - |
| 9 | | - |
| 10 | __attribute__((visibility("default"))) bool qDecodeDataUrl(const QUrl &uri, QString &mimeType, QByteArray &payload) | - |
| 11 | { | - |
| 12 | if (uri.scheme() != QLatin1String("data") || !uri.host().isEmpty()) evaluated: uri.scheme() != QLatin1String("data")| yes Evaluation Count:1 | yes Evaluation Count:32 |
partially evaluated: !uri.host().isEmpty()| no Evaluation Count:0 | yes Evaluation Count:32 |
| 0-32 |
| 13 | return false; executed: return false;Execution Count:1 | 1 |
| 14 | | - |
| 15 | mimeType = QLatin1String("text/plain;charset=US-ASCII"); | - |
| 16 | | - |
| 17 | | - |
| 18 | | - |
| 19 | | - |
| 20 | | - |
| 21 | QByteArray data = QByteArray::fromPercentEncoding(uri.url(QUrl::FullyEncoded | QUrl::RemoveScheme).toLatin1()); | - |
| 22 | | - |
| 23 | | - |
| 24 | int pos = data.indexOf(','); | - |
| 25 | if (pos != -1) { evaluated: pos != -1| yes Evaluation Count:31 | yes Evaluation Count:1 |
| 1-31 |
| 26 | payload = data.mid(pos + 1); | - |
| 27 | data.truncate(pos); | - |
| 28 | data = data.trimmed(); | - |
| 29 | | - |
| 30 | | - |
| 31 | if (data.endsWith(";base64")) { evaluated: data.endsWith(";base64")| yes Evaluation Count:11 | yes Evaluation Count:20 |
| 11-20 |
| 32 | payload = QByteArray::fromBase64(payload); | - |
| 33 | data.chop(7); | - |
| 34 | } executed: }Execution Count:11 | 11 |
| 35 | | - |
| 36 | if (data.toLower().startsWith("charset")) { evaluated: data.toLower().startsWith("charset")| yes Evaluation Count:4 | yes Evaluation Count:27 |
| 4-27 |
| 37 | int i = 7; | - |
| 38 | while (data.at(i) == ' ') evaluated: data.at(i) == ' '| yes Evaluation Count:1 | yes Evaluation Count:4 |
| 1-4 |
| 39 | ++i; executed: ++i;Execution Count:1 | 1 |
| 40 | if (data.at(i) == '=') partially evaluated: data.at(i) == '='| yes Evaluation Count:4 | no Evaluation Count:0 |
| 0-4 |
| 41 | data.prepend("text/plain;"); executed: data.prepend("text/plain;");Execution Count:4 | 4 |
| 42 | } executed: }Execution Count:4 | 4 |
| 43 | | - |
| 44 | if (!data.isEmpty()) evaluated: !data.isEmpty()| yes Evaluation Count:16 | yes Evaluation Count:15 |
| 15-16 |
| 45 | mimeType = QLatin1String(data.trimmed()); executed: mimeType = QLatin1String(data.trimmed());Execution Count:16 | 16 |
| 46 | | - |
| 47 | } executed: }Execution Count:31 | 31 |
| 48 | | - |
| 49 | return true; executed: return true;Execution Count:32 | 32 |
| 50 | } | - |
| 51 | | - |
| 52 | | - |
| 53 | | - |
| | |