mirror of
https://github.com/subsurface/subsurface.git
synced 2024-12-02 23:20:20 +00:00
core: move invalidate_dive_cache() to struct dive
Seems natural in a C++ code base. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
parent
1b593dc56c
commit
72bb38601d
11 changed files with 42 additions and 44 deletions
|
@ -239,7 +239,7 @@ static void renumberDives(QVector<QPair<dive *, int>> &divesToRenumber)
|
||||||
continue;
|
continue;
|
||||||
std::swap(d->number, pair.second);
|
std::swap(d->number, pair.second);
|
||||||
dives.push_back(d);
|
dives.push_back(d);
|
||||||
invalidate_dive_cache(d);
|
d->invalidate_cache();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Send signals.
|
// Send signals.
|
||||||
|
@ -268,7 +268,7 @@ static std::unique_ptr<dive_trip> moveDiveToTrip(DiveToTrip &diveToTrip)
|
||||||
std::swap(trip, diveToTrip.trip);
|
std::swap(trip, diveToTrip.trip);
|
||||||
if (trip)
|
if (trip)
|
||||||
trip->add_dive(diveToTrip.dive);
|
trip->add_dive(diveToTrip.dive);
|
||||||
invalidate_dive_cache(diveToTrip.dive); // Ensure that dive is written in git_save()
|
diveToTrip.dive->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -149,7 +149,7 @@ void EditBase<T>::undo()
|
||||||
for (dive *d: dives) {
|
for (dive *d: dives) {
|
||||||
set(d, value);
|
set(d, value);
|
||||||
fulltext_register(d); // Update the fulltext cache
|
fulltext_register(d); // Update the fulltext cache
|
||||||
invalidate_dive_cache(d); // Ensure that dive is written in git_save()
|
d->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
|
|
||||||
std::swap(old, value);
|
std::swap(old, value);
|
||||||
|
@ -540,7 +540,7 @@ void EditTagsBase::undo()
|
||||||
}
|
}
|
||||||
set(d, tags);
|
set(d, tags);
|
||||||
fulltext_register(d); // Update the fulltext cache
|
fulltext_register(d); // Update the fulltext cache
|
||||||
invalidate_dive_cache(d); // Ensure that dive is written in git_save()
|
d->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
|
|
||||||
std::swap(tagsToAdd, tagsToRemove);
|
std::swap(tagsToAdd, tagsToRemove);
|
||||||
|
@ -741,7 +741,7 @@ void PasteDives::undo()
|
||||||
for (PasteState &state: dives) {
|
for (PasteState &state: dives) {
|
||||||
divesToNotify.push_back(state.d);
|
divesToNotify.push_back(state.d);
|
||||||
state.swap(what);
|
state.swap(what);
|
||||||
invalidate_dive_cache(state.d); // Ensure that dive is written in git_save()
|
state.d->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Send signals.
|
// Send signals.
|
||||||
|
@ -825,7 +825,7 @@ void ReplanDive::undo()
|
||||||
std::swap(d->duration, duration);
|
std::swap(d->duration, duration);
|
||||||
std::swap(d->salinity, salinity);
|
std::swap(d->salinity, salinity);
|
||||||
divelog.dives.fixup_dive(*d);
|
divelog.dives.fixup_dive(*d);
|
||||||
invalidate_dive_cache(d); // Ensure that dive is written in git_save()
|
d->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
|
|
||||||
QVector<dive *> divesToNotify = { d };
|
QVector<dive *> divesToNotify = { d };
|
||||||
// Note that we have to emit cylindersReset before divesChanged, because the divesChanged
|
// Note that we have to emit cylindersReset before divesChanged, because the divesChanged
|
||||||
|
@ -900,7 +900,7 @@ void EditProfile::undo()
|
||||||
std::swap(d->meandepth, meandepth);
|
std::swap(d->meandepth, meandepth);
|
||||||
std::swap(d->duration, duration);
|
std::swap(d->duration, duration);
|
||||||
divelog.dives.fixup_dive(*d);
|
divelog.dives.fixup_dive(*d);
|
||||||
invalidate_dive_cache(d); // Ensure that dive is written in git_save()
|
d->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
|
|
||||||
QVector<dive *> divesToNotify = { d };
|
QVector<dive *> divesToNotify = { d };
|
||||||
emit diveListNotifier.divesChanged(divesToNotify, DiveField::DURATION | DiveField::DEPTH);
|
emit diveListNotifier.divesChanged(divesToNotify, DiveField::DURATION | DiveField::DEPTH);
|
||||||
|
@ -936,7 +936,7 @@ void AddWeight::undo()
|
||||||
continue;
|
continue;
|
||||||
d->weightsystems.pop_back();
|
d->weightsystems.pop_back();
|
||||||
emit diveListNotifier.weightRemoved(d, d->weightsystems.size());
|
emit diveListNotifier.weightRemoved(d, d->weightsystems.size());
|
||||||
invalidate_dive_cache(d); // Ensure that dive is written in git_save()
|
d->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -945,7 +945,7 @@ void AddWeight::redo()
|
||||||
for (dive *d: dives) {
|
for (dive *d: dives) {
|
||||||
d->weightsystems.emplace_back();
|
d->weightsystems.emplace_back();
|
||||||
emit diveListNotifier.weightAdded(d, d->weightsystems.size() - 1);
|
emit diveListNotifier.weightAdded(d, d->weightsystems.size() - 1);
|
||||||
invalidate_dive_cache(d); // Ensure that dive is written in git_save()
|
d->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1011,7 +1011,7 @@ void RemoveWeight::undo()
|
||||||
for (size_t i = 0; i < dives.size(); ++i) {
|
for (size_t i = 0; i < dives.size(); ++i) {
|
||||||
add_to_weightsystem_table(&dives[i]->weightsystems, indices[i], ws);
|
add_to_weightsystem_table(&dives[i]->weightsystems, indices[i], ws);
|
||||||
emit diveListNotifier.weightAdded(dives[i], indices[i]);
|
emit diveListNotifier.weightAdded(dives[i], indices[i]);
|
||||||
invalidate_dive_cache(dives[i]); // Ensure that dive is written in git_save()
|
dives[i]->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1020,7 +1020,7 @@ void RemoveWeight::redo()
|
||||||
for (size_t i = 0; i < dives.size(); ++i) {
|
for (size_t i = 0; i < dives.size(); ++i) {
|
||||||
remove_weightsystem(dives[i], indices[i]);
|
remove_weightsystem(dives[i], indices[i]);
|
||||||
emit diveListNotifier.weightRemoved(dives[i], indices[i]);
|
emit diveListNotifier.weightRemoved(dives[i], indices[i]);
|
||||||
invalidate_dive_cache(dives[i]); // Ensure that dive is written in git_save()
|
dives[i]->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1063,7 +1063,7 @@ void EditWeight::redo()
|
||||||
add_weightsystem_description(new_ws); // This updates the weightsystem info table
|
add_weightsystem_description(new_ws); // This updates the weightsystem info table
|
||||||
set_weightsystem(dives[i], indices[i], new_ws);
|
set_weightsystem(dives[i], indices[i], new_ws);
|
||||||
emit diveListNotifier.weightEdited(dives[i], indices[i]);
|
emit diveListNotifier.weightEdited(dives[i], indices[i]);
|
||||||
invalidate_dive_cache(dives[i]); // Ensure that dive is written in git_save()
|
dives[i]->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
std::swap(ws, new_ws);
|
std::swap(ws, new_ws);
|
||||||
}
|
}
|
||||||
|
@ -1103,7 +1103,7 @@ void AddCylinder::undo()
|
||||||
remove_cylinder(dives[i], indexes[i]);
|
remove_cylinder(dives[i], indexes[i]);
|
||||||
divelog.dives.update_cylinder_related_info(*dives[i]);
|
divelog.dives.update_cylinder_related_info(*dives[i]);
|
||||||
emit diveListNotifier.cylinderRemoved(dives[i], indexes[i]);
|
emit diveListNotifier.cylinderRemoved(dives[i], indexes[i]);
|
||||||
invalidate_dive_cache(dives[i]); // Ensure that dive is written in git_save()
|
dives[i]->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1116,7 +1116,7 @@ void AddCylinder::redo()
|
||||||
add_cylinder(&d->cylinders, index, cyl);
|
add_cylinder(&d->cylinders, index, cyl);
|
||||||
divelog.dives.update_cylinder_related_info(*d);
|
divelog.dives.update_cylinder_related_info(*d);
|
||||||
emit diveListNotifier.cylinderAdded(d, index);
|
emit diveListNotifier.cylinderAdded(d, index);
|
||||||
invalidate_dive_cache(d); // Ensure that dive is written in git_save()
|
d->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1203,7 +1203,7 @@ void RemoveCylinder::undo()
|
||||||
cylinder_renumber(*dives[i], &mapping[0]);
|
cylinder_renumber(*dives[i], &mapping[0]);
|
||||||
divelog.dives.update_cylinder_related_info(*dives[i]);
|
divelog.dives.update_cylinder_related_info(*dives[i]);
|
||||||
emit diveListNotifier.cylinderAdded(dives[i], indexes[i]);
|
emit diveListNotifier.cylinderAdded(dives[i], indexes[i]);
|
||||||
invalidate_dive_cache(dives[i]); // Ensure that dive is written in git_save()
|
dives[i]->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1215,7 +1215,7 @@ void RemoveCylinder::redo()
|
||||||
cylinder_renumber(*dives[i], &mapping[0]);
|
cylinder_renumber(*dives[i], &mapping[0]);
|
||||||
divelog.dives.update_cylinder_related_info(*dives[i]);
|
divelog.dives.update_cylinder_related_info(*dives[i]);
|
||||||
emit diveListNotifier.cylinderRemoved(dives[i], indexes[i]);
|
emit diveListNotifier.cylinderRemoved(dives[i], indexes[i]);
|
||||||
invalidate_dive_cache(dives[i]); // Ensure that dive is written in git_save()
|
dives[i]->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1275,7 +1275,7 @@ void EditCylinder::redo()
|
||||||
std::swap(*dives[i]->get_cylinder(indexes[i]), cyl[i]);
|
std::swap(*dives[i]->get_cylinder(indexes[i]), cyl[i]);
|
||||||
divelog.dives.update_cylinder_related_info(*dives[i]);
|
divelog.dives.update_cylinder_related_info(*dives[i]);
|
||||||
emit diveListNotifier.cylinderEdited(dives[i], indexes[i]);
|
emit diveListNotifier.cylinderEdited(dives[i], indexes[i]);
|
||||||
invalidate_dive_cache(dives[i]); // Ensure that dive is written in git_save()
|
dives[i]->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1306,7 +1306,7 @@ void EditSensors::mapSensors(int toCyl, int fromCyl)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
emit diveListNotifier.diveComputerEdited(dc);
|
emit diveListNotifier.diveComputerEdited(dc);
|
||||||
invalidate_dive_cache(d); // Ensure that dive is written in git_save()
|
d->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
}
|
}
|
||||||
|
|
||||||
void EditSensors::undo()
|
void EditSensors::undo()
|
||||||
|
@ -1435,7 +1435,7 @@ void EditDive::exchangeDives()
|
||||||
if (newDiveSite)
|
if (newDiveSite)
|
||||||
newDiveSite->add_dive(oldDive);
|
newDiveSite->add_dive(oldDive);
|
||||||
newDiveSite = oldDiveSite; // remember the previous dive site
|
newDiveSite = oldDiveSite; // remember the previous dive site
|
||||||
invalidate_dive_cache(oldDive);
|
oldDive->invalidate_cache();
|
||||||
|
|
||||||
// Changing times may have unsorted the dive and trip tables
|
// Changing times may have unsorted the dive and trip tables
|
||||||
QVector<dive *> dives = { oldDive };
|
QVector<dive *> dives = { oldDive };
|
||||||
|
|
|
@ -31,7 +31,7 @@ void EventBase::undo()
|
||||||
|
|
||||||
void EventBase::updateDive()
|
void EventBase::updateDive()
|
||||||
{
|
{
|
||||||
invalidate_dive_cache(d);
|
d->invalidate_cache();
|
||||||
emit diveListNotifier.eventsChanged(d);
|
emit diveListNotifier.eventsChanged(d);
|
||||||
setSelection({ d }, d, dcNr);
|
setSelection({ d }, d, dcNr);
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,7 +36,7 @@ void SetPictureOffset::redo()
|
||||||
// If someone complains about speed, do our usual "smart" thing.
|
// If someone complains about speed, do our usual "smart" thing.
|
||||||
std::sort(d->pictures.begin(), d->pictures.end());
|
std::sort(d->pictures.begin(), d->pictures.end());
|
||||||
emit diveListNotifier.pictureOffsetChanged(d, filename, newOffset);
|
emit diveListNotifier.pictureOffsetChanged(d, filename, newOffset);
|
||||||
invalidate_dive_cache(d);
|
d->invalidate_cache();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Undo and redo do the same thing
|
// Undo and redo do the same thing
|
||||||
|
@ -83,7 +83,7 @@ static std::vector<PictureListForAddition> removePictures(std::vector<PictureLis
|
||||||
}
|
}
|
||||||
if (!toAdd.pics.empty())
|
if (!toAdd.pics.empty())
|
||||||
res.push_back(toAdd);
|
res.push_back(toAdd);
|
||||||
invalidate_dive_cache(list.d);
|
list.d->invalidate_cache();
|
||||||
emit diveListNotifier.picturesRemoved(list.d, std::move(filenames));
|
emit diveListNotifier.picturesRemoved(list.d, std::move(filenames));
|
||||||
}
|
}
|
||||||
picturesToRemove.clear();
|
picturesToRemove.clear();
|
||||||
|
@ -113,7 +113,7 @@ static std::vector<PictureListForDeletion> addPictures(std::vector<PictureListFo
|
||||||
}
|
}
|
||||||
if (!toRemove.filenames.empty())
|
if (!toRemove.filenames.empty())
|
||||||
res.push_back(toRemove);
|
res.push_back(toRemove);
|
||||||
invalidate_dive_cache(list.d);
|
list.d->invalidate_cache();
|
||||||
emit diveListNotifier.picturesAdded(list.d, std::move(picsForSignal));
|
emit diveListNotifier.picturesAdded(list.d, std::move(picsForSignal));
|
||||||
}
|
}
|
||||||
picturesToAdd.clear();
|
picturesToAdd.clear();
|
||||||
|
|
|
@ -208,7 +208,7 @@ void copy_dive(const struct dive *s, struct dive *d)
|
||||||
{
|
{
|
||||||
/* simply copy things over, but then clear fulltext cache and dive cache. */
|
/* simply copy things over, but then clear fulltext cache and dive cache. */
|
||||||
*d = *s;
|
*d = *s;
|
||||||
invalidate_dive_cache(d);
|
d->invalidate_cache();
|
||||||
}
|
}
|
||||||
|
|
||||||
#define CONDITIONAL_COPY_STRING(_component) \
|
#define CONDITIONAL_COPY_STRING(_component) \
|
||||||
|
@ -2402,15 +2402,15 @@ fraction_t best_he(depth_t depth, const struct dive *dive, bool o2narcotic, frac
|
||||||
return fhe;
|
return fhe;
|
||||||
}
|
}
|
||||||
|
|
||||||
void invalidate_dive_cache(struct dive *dive)
|
static constexpr std::array<unsigned char, 20> null_id = {};
|
||||||
|
void dive::invalidate_cache()
|
||||||
{
|
{
|
||||||
memset(dive->git_id, 0, 20);
|
git_id = null_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool dive_cache_is_valid(const struct dive *dive)
|
bool dive::cache_is_valid() const
|
||||||
{
|
{
|
||||||
static const unsigned char null_id[20] = { 0, };
|
return git_id != null_id;
|
||||||
return !!memcmp(dive->git_id, null_id, 20);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int get_surface_pressure_in_mbar(const struct dive *dive, bool non_null)
|
int get_surface_pressure_in_mbar(const struct dive *dive, bool non_null)
|
||||||
|
|
10
core/dive.h
10
core/dive.h
|
@ -66,7 +66,7 @@ struct dive {
|
||||||
std::vector<divecomputer> dcs; // Attn: pointers to divecomputers are not stable!
|
std::vector<divecomputer> dcs; // Attn: pointers to divecomputers are not stable!
|
||||||
int id = 0; // unique ID for this dive
|
int id = 0; // unique ID for this dive
|
||||||
picture_table pictures;
|
picture_table pictures;
|
||||||
unsigned char git_id[20] = {};
|
std::array<unsigned char, 20> git_id = {};
|
||||||
bool notrip = false; /* Don't autogroup this dive to a trip */
|
bool notrip = false; /* Don't autogroup this dive to a trip */
|
||||||
bool selected = false;
|
bool selected = false;
|
||||||
bool hidden_by_filter = false;
|
bool hidden_by_filter = false;
|
||||||
|
@ -79,6 +79,9 @@ struct dive {
|
||||||
dive(dive &&);
|
dive(dive &&);
|
||||||
dive &operator=(const dive &);
|
dive &operator=(const dive &);
|
||||||
|
|
||||||
|
void invalidate_cache();
|
||||||
|
bool cache_is_valid() const;
|
||||||
|
|
||||||
void fixup_no_cylinder(); /* to fix cylinders, we need the divelist (to calculate cns) */
|
void fixup_no_cylinder(); /* to fix cylinders, we need the divelist (to calculate cns) */
|
||||||
timestamp_t endtime() const; /* maximum over divecomputers (with samples) */
|
timestamp_t endtime() const; /* maximum over divecomputers (with samples) */
|
||||||
duration_t totaltime() const; /* maximum over divecomputers (with samples) */
|
duration_t totaltime() const; /* maximum over divecomputers (with samples) */
|
||||||
|
@ -121,9 +124,6 @@ struct dive_or_trip {
|
||||||
struct dive_trip *trip;
|
struct dive_trip *trip;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern void invalidate_dive_cache(struct dive *dive);
|
|
||||||
extern bool dive_cache_is_valid(const struct dive *dive);
|
|
||||||
|
|
||||||
extern void cylinder_renumber(struct dive &dive, int mapping[]);
|
extern void cylinder_renumber(struct dive &dive, int mapping[]);
|
||||||
extern int same_gasmix_cylinder(const cylinder_t &cyl, int cylid, const struct dive *dive, bool check_unused);
|
extern int same_gasmix_cylinder(const cylinder_t &cyl, int cylid, const struct dive *dive, bool check_unused);
|
||||||
|
|
||||||
|
@ -205,8 +205,6 @@ extern bool cylinder_with_sensor_sample(const struct dive *dive, int cylinder_id
|
||||||
|
|
||||||
/* UI related protopypes */
|
/* UI related protopypes */
|
||||||
|
|
||||||
extern void invalidate_dive_cache(struct dive *dc);
|
|
||||||
|
|
||||||
extern int total_weight(const struct dive *);
|
extern int total_weight(const struct dive *);
|
||||||
|
|
||||||
extern void update_setpoint_events(const struct dive *dive, struct divecomputer *dc);
|
extern void update_setpoint_events(const struct dive *dive, struct divecomputer *dc);
|
||||||
|
|
|
@ -730,8 +730,8 @@ struct dive *dive_table::register_dive(std::unique_ptr<dive> d)
|
||||||
// dives have been added, their status will be updated.
|
// dives have been added, their status will be updated.
|
||||||
d->hidden_by_filter = true;
|
d->hidden_by_filter = true;
|
||||||
|
|
||||||
fulltext_register(d.get()); // Register the dive's fulltext cache
|
fulltext_register(d.get()); // Register the dive's fulltext cache
|
||||||
invalidate_dive_cache(d.get()); // Ensure that dive is written in git_save()
|
d->invalidate_cache(); // Ensure that dive is written in git_save()
|
||||||
auto [res, idx] = put(std::move(d));
|
auto [res, idx] = put(std::move(d));
|
||||||
|
|
||||||
return res;
|
return res;
|
||||||
|
|
|
@ -1512,7 +1512,7 @@ static int dive_directory(const char *root, const git_tree_entry *entry, const c
|
||||||
|
|
||||||
finish_active_dive(state);
|
finish_active_dive(state);
|
||||||
create_new_dive(utc_mktime(&tm), state);
|
create_new_dive(utc_mktime(&tm), state);
|
||||||
memcpy(state->active_dive->git_id, git_tree_entry_id(entry)->id, 20);
|
memcpy(state->active_dive->git_id.data(), git_tree_entry_id(entry)->id, 20);
|
||||||
return GIT_WALK_OK;
|
return GIT_WALK_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -659,9 +659,9 @@ static int save_one_dive(git_repository *repo, struct dir *tree, struct dive &di
|
||||||
* If the dive git ID is valid, we just create the whole directory
|
* If the dive git ID is valid, we just create the whole directory
|
||||||
* with that ID
|
* with that ID
|
||||||
*/
|
*/
|
||||||
if (cached_ok && dive_cache_is_valid(&dive)) {
|
if (cached_ok && dive.cache_is_valid()) {
|
||||||
git_oid oid;
|
git_oid oid;
|
||||||
git_oid_fromraw(&oid, dive.git_id);
|
git_oid_fromraw(&oid, dive.git_id.data());
|
||||||
ret = tree_insert(tree->files, mb_cstring(&name), 1,
|
ret = tree_insert(tree->files, mb_cstring(&name), 1,
|
||||||
&oid, GIT_FILEMODE_TREE);
|
&oid, GIT_FILEMODE_TREE);
|
||||||
if (ret)
|
if (ret)
|
||||||
|
|
|
@ -1571,8 +1571,8 @@ void MainWindow::hideProgressBar()
|
||||||
void MainWindow::divesChanged(const QVector<dive *> &dives, DiveField)
|
void MainWindow::divesChanged(const QVector<dive *> &dives, DiveField)
|
||||||
{
|
{
|
||||||
for (struct dive *d: dives) {
|
for (struct dive *d: dives) {
|
||||||
report_info("dive #%d changed, cache is %s", d->number, dive_cache_is_valid(d) ? "valid" : "invalidated");
|
report_info("dive #%d changed, cache is %s", d->number, d->cache_is_valid() ? "valid" : "invalidated");
|
||||||
// a brute force way to deal with that would of course be to call
|
// a brute force way to deal with that would of course be to call
|
||||||
// invalidate_dive_cache(d);
|
// d->invalidate_cache();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2311,9 +2311,9 @@ void QMLManager::rememberOldStatus()
|
||||||
void QMLManager::divesChanged(const QVector<dive *> &dives, DiveField)
|
void QMLManager::divesChanged(const QVector<dive *> &dives, DiveField)
|
||||||
{
|
{
|
||||||
for (struct dive *d: dives) {
|
for (struct dive *d: dives) {
|
||||||
report_info("dive #%d changed, cache is %s", d->number, dive_cache_is_valid(d) ? "valid" : "invalidated");
|
report_info("dive #%d changed, cache is %s", d->number, d->cache_is_valid() ? "valid" : "invalidated");
|
||||||
// a brute force way to deal with that would of course be to call
|
// a brute force way to deal with that would of course be to call
|
||||||
// invalidate_dive_cache(d);
|
// d->invalidate_cache();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue