From 4b6cae0fcd8728d6b1895e8d67254bbd67879d6b Mon Sep 17 00:00:00 2001 From: Felix Geyer Date: Sun, 8 Jul 2012 10:56:56 +0200 Subject: [PATCH] Fix some compiler warnings. Implements parts of https://gitorious.org/keepassx/keepassx/merge_requests/18 --- src/format/KeePass1Reader.cpp | 8 ++++---- src/format/KeePass2Writer.cpp | 5 ++++- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/format/KeePass1Reader.cpp b/src/format/KeePass1Reader.cpp index 47b44e0a9..73ea564da 100644 --- a/src/format/KeePass1Reader.cpp +++ b/src/format/KeePass1Reader.cpp @@ -694,7 +694,7 @@ bool KeePass1Reader::parseGroupTreeState(const QByteArray& data) quint32 num = Endian::bytesToUInt32(data.mid(pos, 4), KeePass1::BYTEORDER); pos += 4; - if ((data.size() - 4) != (num * 5)) { + if (static_cast(data.size() - 4) != (num * 5)) { return false; } @@ -739,7 +739,7 @@ bool KeePass1Reader::parseCustomIcons4(const QByteArray& data) quint32 iconSize = Endian::bytesToUInt32(data.mid(pos, 4), KeePass1::BYTEORDER); pos += 4; - if (data.size() < (pos + iconSize)) { + if (static_cast(data.size()) < (pos + iconSize)) { return false; } QImage icon = QImage::fromData(data.mid(pos, iconSize)); @@ -754,7 +754,7 @@ bool KeePass1Reader::parseCustomIcons4(const QByteArray& data) m_db->metadata()->addCustomIcon(uuid, icon); } - if (data.size() < (pos + numEntries * 20)) { + if (static_cast(data.size()) < (pos + numEntries * 20)) { return false; } @@ -770,7 +770,7 @@ bool KeePass1Reader::parseCustomIcons4(const QByteArray& data) } } - if (data.size() < (pos + numGroups * 8)) { + if (static_cast(data.size()) < (pos + numGroups * 8)) { return false; } diff --git a/src/format/KeePass2Writer.cpp b/src/format/KeePass2Writer.cpp index 295ffce90..027cc1945 100644 --- a/src/format/KeePass2Writer.cpp +++ b/src/format/KeePass2Writer.cpp @@ -121,10 +121,13 @@ bool KeePass2Writer::writeData(const QByteArray& data) bool KeePass2Writer::writeHeaderField(KeePass2::HeaderFieldID fieldId, const QByteArray& data) { + Q_ASSERT(data.size() <= 65535); + QByteArray fieldIdArr; fieldIdArr[0] = fieldId; CHECK_RETURN_FALSE(writeData(fieldIdArr)); - CHECK_RETURN_FALSE(writeData(Endian::int16ToBytes(data.size(), KeePass2::BYTEORDER))); + CHECK_RETURN_FALSE(writeData(Endian::int16ToBytes(static_cast(data.size()), + KeePass2::BYTEORDER))); CHECK_RETURN_FALSE(writeData(data)); return true;