From: Linus Torvalds Date: Thu, 22 Sep 2011 15:09:21 +0000 (-0700) Subject: In summary printout, show divemaster if there was no buddy X-Git-Url: http://git.tdb.fi/?p=ext%2Fsubsurface.git;a=commitdiff_plain;h=1d36085b41f836c94549e04b8d06d1f880102655 In summary printout, show divemaster if there was no buddy Signed-off-by: Linus Torvalds --- diff --git a/print.c b/print.c index 0346cca..36ceca6 100644 --- a/print.c +++ b/print.c @@ -31,7 +31,7 @@ static void show_dive_text(struct dive *dive, cairo_t *cr, double w, double h, P int len, decimals, width, height, maxwidth, maxheight; PangoLayout *layout; struct tm *tm; - char buffer[1024], divenr[20]; + char buffer[80], divenr[20], *people; maxwidth = w * PANGO_SCALE; maxheight = h * PANGO_SCALE * 0.9; @@ -44,7 +44,6 @@ static void show_dive_text(struct dive *dive, cairo_t *cr, double w, double h, P if (dive->number) snprintf(divenr, sizeof(divenr), "Dive #%d - ", dive->number); - tm = gmtime(&dive->when); len = snprintf(buffer, sizeof(buffer), "%s%s, %s %d, %d %d:%02d", @@ -61,11 +60,13 @@ static void show_dive_text(struct dive *dive, cairo_t *cr, double w, double h, P cairo_move_to(cr, 0, 0); pango_cairo_show_layout(cr, layout); - /* - * This is still problematic: a long dive location will clash - * with the depth/duration information. Need to mask that or - * create a box or something. - */ + people = dive->buddy; + if (!people || !*people) { + people = dive->divemaster; + if (!people) + people = ""; + } + depth = get_depth_units(dive->maxdepth.mm, &decimals, &unit); snprintf(buffer, sizeof(buffer), "Max depth: %.*f %s\n" @@ -73,7 +74,7 @@ static void show_dive_text(struct dive *dive, cairo_t *cr, double w, double h, P "%s", decimals, depth, unit, (dive->duration.seconds+59) / 60, - dive->buddy ? :""); + people); set_font(layout, font, FONT_SMALL, PANGO_ALIGN_RIGHT); pango_layout_set_text(layout, buffer, -1);