Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/owncloud/client.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Kamm <mail@ckamm.de>2017-12-11 16:47:49 +0300
committerckamm <mail@ckamm.de>2017-12-12 12:30:54 +0300
commitdcf0baa9de7b0a2bad65742ea380102d87bdca65 (patch)
tree2ba08b721c00713e2c11bdf8f3fdea60574e5b3f /test/testsyncjournaldb.cpp
parent3e294d5339865363f86262660f580ca39af88ae7 (diff)
Journal: 64bit inodes, fix storing uint64s generally
In addition to using the right function when retrieving inodes this *also* fixes a more general bug ownsql had with storing uint64 values that didn't fit into an int64.
Diffstat (limited to 'test/testsyncjournaldb.cpp')
-rw-r--r--test/testsyncjournaldb.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/test/testsyncjournaldb.cpp b/test/testsyncjournaldb.cpp
index 0575c0ed5..cb86a1655 100644
--- a/test/testsyncjournaldb.cpp
+++ b/test/testsyncjournaldb.cpp
@@ -50,7 +50,9 @@ private slots:
QVERIFY(!record.isValid());
record._path = "foo";
- record._inode = 1234;
+ // Use a value that exceeds uint32 and isn't representable by the
+ // signed int being cast to uint64 either (like uint64::max would be)
+ record._inode = std::numeric_limits<quint32>::max() + 12ull;
record._modtime = dropMsecs(QDateTime::currentDateTime());
record._type = 5;
record._etag = "789789";
@@ -71,8 +73,9 @@ private slots:
QVERIFY(storedRecord == record);
// Update metadata
- record._inode = 12345;
record._modtime = dropMsecs(QDateTime::currentDateTime().addDays(1));
+ // try a value that only fits uint64, not int64
+ record._inode = std::numeric_limits<quint64>::max() - std::numeric_limits<quint32>::max() - 1;
record._type = 7;
record._etag = "789FFF";
record._fileId = "efg";