1
0
Fork 0
forked from blue/lmdbal

Fix typos, fix some warnings, added more compile options, moved to forgejo CI

This commit is contained in:
Blue 2025-05-02 18:19:06 +03:00
parent 3ae1fd15c0
commit 1585b8e4f5
Signed by untrusted user: blue
GPG key ID: 9B203B252A63EE38
15 changed files with 204 additions and 120 deletions

View file

@ -31,11 +31,33 @@ public:
~Serializer() {};
QString deserialize(const MDB_val& data) {
value = QByteArray((char*)data.mv_data, data.mv_size);
#if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0))
if (data.mv_size > static_cast<size_t>(std::numeric_limits<qsizetype>::max()))
throw std::runtime_error("Data size exceeds QByteArray capacity");
value = QByteArray(static_cast<char *>(data.mv_data), static_cast<qsizetype>(data.mv_size));
#else
if (data.mv_size > static_cast<size_t>(std::numeric_limits<int>::max()))
throw std::runtime_error("Data size exceeds QByteArray capacity");
value = QByteArray(static_cast<char *>(data.mv_data), static_cast<int>(data.mv_size));
#endif
return QString::fromUtf8(value);
};
void deserialize(const MDB_val& data, QString& result) {
value = QByteArray((char*)data.mv_data, data.mv_size);
#if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0))
if (data.mv_size > static_cast<size_t>(std::numeric_limits<qsizetype>::max()))
throw std::runtime_error("Data size exceeds QByteArray capacity");
value = QByteArray(static_cast<char *>(data.mv_data), static_cast<qsizetype>(data.mv_size));
#else
if (data.mv_size > static_cast<size_t>(std::numeric_limits<int>::max()))
throw std::runtime_error("Data size exceeds QByteArray capacity");
value = QByteArray(static_cast<char *>(data.mv_data), static_cast<int>(data.mv_size));
#endif
result = QString::fromUtf8(value);
}
MDB_val setData(const QString& data) {
@ -45,7 +67,7 @@ public:
MDB_val getData() {
MDB_val result;
result.mv_data = value.data();
result.mv_size = value.size();
result.mv_size = static_cast<size_t>(value.size());
return result;
};
void clear() {}; //not possible;
@ -54,4 +76,4 @@ private:
QByteArray value;
};
}
}