From 4012549c5ea5c9192189b6cc29000a9634c38798 Mon Sep 17 00:00:00 2001 From: rubidium Date: Sun, 22 Mar 2009 23:54:36 +0000 Subject: (svn r15824) -Fix: determine the actual length of the strings to draw in the viewport --- src/viewport.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/viewport.cpp') diff --git a/src/viewport.cpp b/src/viewport.cpp index 666708b71..2ee1726e3 100644 --- a/src/viewport.cpp +++ b/src/viewport.cpp @@ -1460,11 +1460,15 @@ static void ViewportDrawStrings(DrawPixelInfo *dpi, const StringSpriteToDrawVect /* The maximum width of the string */ int w = GB(ss->width, 0, 15); - if (w == 0) w = UINT16_MAX; + if (w == 0) { + char buffer[DRAW_STRING_BUFFER]; + GetString(buffer, ss->string, lastof(buffer)); + w = GetStringBoundingBox(buffer).width; + } DrawString( UnScaleByZoom(ss->x, zoom), UnScaleByZoom(ss->x, zoom) + w, UnScaleByZoom(ss->y, zoom) - (ss->width & 0x8000 ? 2 : 0), - ss->string, colour + ss->string, colour, SA_CENTER ); } } -- cgit v1.2.3-54-g00ecf