Make sure we don't create multiple dive sites with the same uuid

This shouldn't happen, but in case there is a logic error higher up in the
code somewhere, this will prevent it from happening, period.

If the code asks for a new dive site with a specific uuid, simply return
the existing dive site with that uuid.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2015-09-29 12:58:16 -04:00
parent 7ad1485c39
commit edac07554c
5 changed files with 28 additions and 14 deletions

View file

@ -83,7 +83,7 @@ void TestParse::testParseDivingLog()
// Parsing of DivingLog import from SQLite database
sqlite3 *handle;
struct dive_site *ds = alloc_dive_site(0xdeadbeef);
struct dive_site *ds = alloc_or_get_dive_site(0xdeadbeef);
ds->name = copy_string("Suomi - - Hälvälä");
QCOMPARE(sqlite3_open(SUBSURFACE_SOURCE "/dives/TestDivingLog4.1.1.sql", &handle), 0);