summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Linus Torvalds <torvalds@linux-foundation.org>2011-10-29 15:57:26 -0700
committerGravatar Linus Torvalds <torvalds@linux-foundation.org>2011-10-29 15:57:26 -0700
commitceed8b6bc91872dec83b9c02223d72ac137c7335 (patch)
tree16d3c7efc552c9ce07c05533a3ce2e30ec137af3
parent7c1deb37c702ad668f40ae6a9a14cd2faf918ae4 (diff)
downloadsubsurface-ceed8b6bc91872dec83b9c02223d72ac137c7335.tar.gz
Fix up end conditions for dives
We used to have the dive plot have two "filler" entries at the beginning and the end, and indeed that is how they are allocated. However, we fix up "pi->nr" later to be "lastindex+1", where "lastindex" is the index of the time we surface. So when we loop over the plot entries, we actually need to loop all the way to the end: use "i < pi->nr" instead of "i < pi->nr-2". We still do have the two extra filler entries at the beginning, though. So depending on the loop, we might want to start at entry 2. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--profile.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/profile.c b/profile.c
index 9952b18e3..a7ea885a1 100644
--- a/profile.c
+++ b/profile.c
@@ -660,7 +660,7 @@ static void plot_cylinder_pressure_text(struct graphics_context *gc, struct plot
return;
/* only loop over the actual events from the dive computer */
- for (i = 2; i < pi->nr - 2; i++) {
+ for (i = 2; i < pi->nr; i++) {
entry = pi->entry + i;
if (!entry->same_cylinder) {
@@ -887,8 +887,9 @@ static void fill_missing_tank_pressures(struct dive *dive, struct plot_info *pi,
for (cyl = 0; cyl < MAX_CYLINDERS; cyl++) {
cur_pr[cyl] = track_pr[cyl]->start;
}
- /* The first two and last two entries are "fillers" */
- for (i = 2; i < pi->nr-2; i++) {
+
+ /* The first two are "fillers" */
+ for (i = 2; i < pi->nr; i++) {
entry = pi->entry + i;
if (SENSOR_PRESSURE(entry)) {
cur_pr[entry->cylinderindex] = SENSOR_PRESSURE(entry);
@@ -1084,8 +1085,6 @@ static struct plot_info *create_plot_info(struct dive *dive, int nr_samples, str
pr_track->end = pr;
}
}
- if (lastdepth)
- lastindex = i + 2;
/* Fill in the last two entries with empty values but valid times */
i = nr_samples + 2;
pi->entry[i].sec = sec + 20;