From e4809181f2798154c71d5b3fc779f2dee3df8f1c Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Sun, 17 Feb 2013 22:12:22 +0100 Subject: [PATCH] [masm] Fix function name replacement in disassembly on ia32 Cast the void* to a quintptr, to make sure we call the right QByteArray::number overload depending on the size of a pointer on the archicture. Otherwise we generate 0x1324 strings that we can't successfully replace with the function names in the disassembler output. Change-Id: Iddc82534487d93547b597d39286b92ffdff6da6c Reviewed-by: Erik Verbruggen --- src/v4/qv4isel_masm.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/v4/qv4isel_masm.cpp b/src/v4/qv4isel_masm.cpp index bf1d129..0d8d2ae 100644 --- a/src/v4/qv4isel_masm.cpp +++ b/src/v4/qv4isel_masm.cpp @@ -360,7 +360,7 @@ static void printDisassembledOutputWithCalls(const char* output, const QHash::ConstIterator it = functions.begin(), end = functions.end(); it != end; ++it) { - QByteArray ptrString = QByteArray::number(qlonglong(it.key()), 16); + QByteArray ptrString = QByteArray::number(quintptr(it.key()), 16); ptrString.prepend("0x"); processedOutput = processedOutput.replace(ptrString, it.value()); } -- 2.7.4