]> git.tdb.fi Git - ext/subsurface.git/blobdiff - profile.c
Correctly plot the tank end pressure if it was set manually
[ext/subsurface.git] / profile.c
index 9fab8b2e89f5ae72cf4732f91e48d4a3cb73de00..df1b22b30caeedad3cd81220ed4d6529a00d277d 100644 (file)
--- a/profile.c
+++ b/profile.c
@@ -717,7 +717,7 @@ static void plot_pressure_value(struct graphics_context *gc, int mbar, int sec,
        plot_text(gc, &tro, sec, mbar, "%d %s", pressure, unit);
 }
 
-static void plot_cylinder_pressure_text(struct graphics_context *gc, struct plot_info *pi)
+static void plot_cylinder_pressure_text(struct graphics_context *gc, struct plot_info *pi, struct dive *dive)
 {
        int i;
        int mbar, cyl;
@@ -763,7 +763,10 @@ static void plot_cylinder_pressure_text(struct graphics_context *gc, struct plot
 
        for (cyl = 0; cyl < MAX_CYLINDERS; cyl++) {
                if (last_time[cyl]) {
-                       plot_pressure_value(gc, last_pressure[cyl], last_time[cyl], CENTER, TOP);
+                       if (dive->cylinder[cyl].end.mbar)
+                               plot_pressure_value(gc, dive->cylinder[cyl].end.mbar, last_time[cyl], CENTER, TOP);
+                       else
+                               plot_pressure_value(gc, last_pressure[cyl], last_time[cyl], CENTER, TOP);
                }
        }
 }
@@ -1322,7 +1325,7 @@ void plot(struct graphics_context *gc, cairo_rectangle_int_t *drawing_area, stru
        /* Text on top of all graphs.. */
        plot_temperature_text(gc, pi);
        plot_depth_text(gc, pi);
-       plot_cylinder_pressure_text(gc, pi);
+       plot_cylinder_pressure_text(gc, pi, dive);
 
        /* Bounding box last */
        gc->leftx = 0; gc->rightx = 1.0;