summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2018-06-27 13:26:50 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2018-06-27 11:35:36 +0000
commitfd797fc9441261d0679d60b0af3682966c862875 (patch)
treeb035f82b58764798dea30794b58115752c7c3938
parentb1b91813664212cceef46192feec06fab265eadc (diff)
downloadqttools-fd797fc9441261d0679d60b0af3682966c862875.tar.gz
windeployqt: Fix Elf parser
The code did not correctly step over sections other than the DT_NEEDED it was looking for. Fix this in case plans for a universal deployment tool are revived. Task-number: QTBUG-69151 Change-Id: Ia2075f15b9cedef35ebc39bba33260ce6cc98615 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
-rw-r--r--src/windeployqt/elfreader.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/windeployqt/elfreader.cpp b/src/windeployqt/elfreader.cpp
index b175e87d6..ab2242619 100644
--- a/src/windeployqt/elfreader.cpp
+++ b/src/windeployqt/elfreader.cpp
@@ -430,6 +430,8 @@ QList<QByteArray> ElfReader::dependencies()
dynamicData += sizeof(quint32); // past d_ptr.
const char *name = mapper.start + dynStrOffset + offset;
result.push_back(name);
+ } else {
+ dynamicData += m_elfData.elfclass == Elf_ELFCLASS64 ? 8 : 4;
}
}
return result;