mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Cleanup: Remove hash field from picture-structure
The hash field in the picture-structure was in principle non-operational. It was set on loading, but never actually changed. The authoritative hash comes from the filename->hash map. Therefore, make this explicit by removing the hash field from the picture structure. Instead of filling the picture structure on loading, add the hash directly to the filename->hash map. This is done in the register_hash() function, which does not overwrite old entries. I.e. the local hash has priority over the save-file. This policy might be refined in the future. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
parent
e5dcd9fc16
commit
bdc470a80e
8 changed files with 61 additions and 46 deletions
|
|
@ -44,8 +44,6 @@ void TestPicture::addPicture()
|
|||
QVERIFY(pic1->longitude.udeg == 11334500);
|
||||
QVERIFY(pic2->offset.seconds == 1321);
|
||||
|
||||
QVERIFY(pic1->hash == NULL);
|
||||
QVERIFY(pic2->hash == NULL);
|
||||
QByteArray hash1 = hashFile(localFilePath(pic1->filename));
|
||||
QByteArray hash2 = hashFile(localFilePath(pic2->filename));
|
||||
learnHash(pic1->filename, PIC1_NAME, hash1);
|
||||
|
|
@ -54,8 +52,8 @@ void TestPicture::addPicture()
|
|||
QCOMPARE(hashstring(pic2->filename), PIC2_HASH);
|
||||
QCOMPARE(hashstring(PIC1_NAME), PIC1_HASH);
|
||||
QCOMPARE(hashstring(PIC2_NAME), PIC2_HASH);
|
||||
QCOMPARE(fileFromHash(PIC1_HASH), QString(PIC1_NAME));
|
||||
QCOMPARE(fileFromHash(PIC2_HASH), QString(PIC2_NAME));
|
||||
QCOMPARE(localFilePath(pic1->filename), QString(PIC1_NAME));
|
||||
QCOMPARE(localFilePath(pic2->filename), QString(PIC2_NAME));
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue