diff --git a/planner.c b/planner.c
index 2347e22ed..9bb741b6a 100644
--- a/planner.c
+++ b/planner.c
@@ -569,7 +569,7 @@ static void add_plan_to_notes(struct diveplan *diveplan, struct dive *dive, bool
gaschange = true;
if (plan_verbatim) {
if (dp->depth != lastdepth) {
- if (plan_display_transitions || dp->entered || !dp->next || (gaschange && dp->next && dp->depth != dp->next->depth))
+ if (plan_display_transitions || dp->entered || !dp->next || (gaschange && dp->next && (dp->depth != dp->next->depth || !dp->next->time)))
len += snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "Transition to %.*f %s in %d:%02d min - runtime %d:%02u on %s
"),
decimals, depthvalue, depth_unit,
FRACTION(dp->time - lasttime, 60),
@@ -583,7 +583,7 @@ static void add_plan_to_notes(struct diveplan *diveplan, struct dive *dive, bool
gasname(&gasmix));
}
} else {
- if (dp->depth == lastdepth || plan_display_transitions || dp->entered || !dp->next || (gaschange && dp->next && dp->depth != dp->next->depth)) {
+ if (dp->depth == lastdepth || plan_display_transitions || dp->entered || !dp->next || (gaschange && dp->next && (dp->depth != dp->next->depth || !dp->next->time))) {
len += snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "