mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Remove 'tripflag' from dive trips
Both dives and dive trips have the same 'tripflag' thing, but they are used very differently. In particular, for dive trips, the only case that has any meaning is the TF_AUTOGEN case, so instead of having that trip flag, replace it with a bitfield that says whether the trip was auto-generated or not. And make the one-bit bitfields explicitly unsigned. Signed bitfields are almost always a mistake, and can be confusing. Also remove a few now stale macros that are no longer needed now that we don't do the GList thing for dive list handling, and our autogen logic has been simplified. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
e544ca5f6a
commit
3f197336aa
2 changed files with 6 additions and 9 deletions
|
@ -46,7 +46,7 @@ gboolean autogroup = FALSE;
|
|||
/* this duplicate assignment of "INTRIP" causes the save_xml code
|
||||
* to convert an ASSIGNED_TRIP (which is temporary in memory) to
|
||||
* a statically assigned trip (INTRIP) in file */
|
||||
const char *tripflag_names[NUM_TRIPFLAGS] = { "TF_NONE", "NOTRIP", "INTRIP", "INTRIP", "AUTOGEN_TRIP" };
|
||||
const char *tripflag_names[NUM_TRIPFLAGS] = { "TF_NONE", "NOTRIP", "INTRIP", "INTRIP" };
|
||||
|
||||
/*
|
||||
* The dive list has the dive data in both string format (for showing)
|
||||
|
@ -945,7 +945,7 @@ static void dump_trip_list(void)
|
|||
if (trip->when < last_time)
|
||||
printf("\n\ndive_trip_list OUT OF ORDER!!!\n\n\n");
|
||||
printf("%s trip %d to \"%s\" on %04u-%02u-%02u %02u:%02u:%02u (%d dives - %p)\n",
|
||||
trip->tripflag == AUTOGEN_TRIP ? "autogen " : "",
|
||||
trip->autogen ? "autogen " : "",
|
||||
++i, trip->location,
|
||||
tm.tm_year + 1900, tm.tm_mon+1, tm.tm_mday, tm.tm_hour, tm.tm_min, tm.tm_sec,
|
||||
trip->nrdives, trip);
|
||||
|
@ -1156,7 +1156,7 @@ static void autogroup_dives(void)
|
|||
|
||||
lastdive = dive;
|
||||
trip = create_and_hookup_trip_from_dive(dive);
|
||||
trip->tripflag = AUTOGEN_TRIP;
|
||||
trip->autogen = 1;
|
||||
}
|
||||
|
||||
#ifdef DEBUG_TRIP
|
||||
|
@ -2427,7 +2427,7 @@ void remove_autogen_trips()
|
|||
for_each_dive(i, dive) {
|
||||
dive_trip_t *trip = dive->divetrip;
|
||||
|
||||
if (trip && trip->tripflag == AUTOGEN_TRIP)
|
||||
if (trip && trip->autogen)
|
||||
remove_dive_from_trip(dive);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue