QElfParser: don't use int for the enum

An enum shows the proper values in the debugger...

Pick-to: 6.2
Change-Id: I2de1b4dfacd443148279fffd16a3a5848196983c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
This commit is contained in:
Thiago Macieira 2021-09-10 20:04:38 -07:00
parent 96d21faa01
commit 55e565c763
3 changed files with 5 additions and 4 deletions

View File

@ -63,7 +63,8 @@ const char *QElfParser::parseSectionHeader(const char *data, ElfSectionHeader *s
return data;
}
int QElfParser::parse(const char *dataStart, ulong fdlen, const QString &library, QLibraryPrivate *lib, qsizetype *pos, qsizetype *sectionlen)
auto QElfParser::parse(const char *dataStart, ulong fdlen, const QString &library,
QLibraryPrivate *lib, qsizetype *pos, qsizetype *sectionlen) -> ScanResult
{
#if defined(QELFPARSER_DEBUG)
qDebug() << "QElfParser::parse " << library;

View File

@ -71,7 +71,7 @@ typedef quintptr qelfaddr_t;
class QElfParser
{
public:
enum { QtMetaDataSection, NoQtSection, NotElf, Corrupt };
enum ScanResult { QtMetaDataSection, NoQtSection, NotElf, Corrupt };
enum { ElfLittleEndian = 0, ElfBigEndian = 1 };
struct ElfSectionHeader
@ -96,7 +96,7 @@ public:
}
const char *parseSectionHeader(const char* s, ElfSectionHeader *sh);
int parse(const char *m_s, ulong fdlen, const QString &library, QLibraryPrivate *lib, qsizetype *pos, qsizetype *sectionlen);
ScanResult parse(const char *m_s, ulong fdlen, const QString &library, QLibraryPrivate *lib, qsizetype *pos, qsizetype *sectionlen);
};
QT_END_NAMESPACE

View File

@ -274,7 +274,7 @@ static bool findPatternUnloaded(const QString &library, QLibraryPrivate *lib)
pattern[0] = 'Q'; // Ensure the pattern "QTMETADATA" is not found in this library should QPluginLoader ever encounter it.
const ulong plen = ulong(qstrlen(pattern));
#if defined (Q_OF_ELF) && defined(Q_CC_GNU)
int r = QElfParser().parse(filedata, fdlen, library, lib, &pos, &fdlen);
QElfParser::ScanResult r = QElfParser().parse(filedata, fdlen, library, lib, &pos, &fdlen);
if (r == QElfParser::Corrupt || r == QElfParser::NotElf) {
if (lib && qt_debug_component()) {
qWarning("QElfParser: %ls", qUtf16Printable(lib->errorString));