Add option to allocate the samples in fake_dc()

We (ab)use fake_dc() to create a pleasing profile for a manually added
dive. Based on it's intended use, fake_dc() simply handed back a dc
structure that pointed at staticly allocated samples - that's obviously
(now that I think about it) going to blow up in my face if I edit a
manually added dive more than once.

So now we have an option for fake_dc() to actually allocate the samples -
this way the rest of the code can treat these samples as we would treat
samples created any other way. We can free them and replace them with a
new set.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2016-02-20 09:36:14 -08:00
parent 0b0e56edeb
commit 38ab11a6c0
5 changed files with 11 additions and 7 deletions

View file

@ -6,7 +6,7 @@
extern "C" {
#endif
extern struct divecomputer *fake_dc(struct divecomputer *dc);
extern struct divecomputer *fake_dc(struct divecomputer *dc, bool alloc);
extern void create_device_node(const char *model, uint32_t deviceid, const char *serial, const char *firmware, const char *nickname);
extern void call_for_each_dc(void *f, void (*callback)(void *, const char *, uint32_t,
const char *, const char *, const char *), bool select_only);