Fix mix of new[] / malloc in QTest::toHexRepresentation
toHexRepresentation is used in QTest::toString(), whose results are deallocated with free(). So we shouldn't allocate with new[]. Change-Id: I3e9d35b3f28a1b9bfe740a13b5daa414b67853c6 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
This commit is contained in:
parent
b5241296f8
commit
57d36d3f0c
@ -1893,7 +1893,7 @@ char *toHexRepresentation(const char *ba, int length)
|
|||||||
|
|
||||||
if (length > maxLen) {
|
if (length > maxLen) {
|
||||||
const int size = len * 3 + 4;
|
const int size = len * 3 + 4;
|
||||||
result = new char[size];
|
result = static_cast<char *>(malloc(size));
|
||||||
|
|
||||||
char *const forElipsis = result + size - 5;
|
char *const forElipsis = result + size - 5;
|
||||||
forElipsis[0] = ' ';
|
forElipsis[0] = ' ';
|
||||||
@ -1901,10 +1901,9 @@ char *toHexRepresentation(const char *ba, int length)
|
|||||||
forElipsis[2] = '.';
|
forElipsis[2] = '.';
|
||||||
forElipsis[3] = '.';
|
forElipsis[3] = '.';
|
||||||
result[size - 1] = '\0';
|
result[size - 1] = '\0';
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
const int size = len * 3;
|
const int size = len * 3;
|
||||||
result = new char[size];
|
result = static_cast<char *>(malloc(size));
|
||||||
result[size - 1] = '\0';
|
result[size - 1] = '\0';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user