diff --git a/src/servers/app/server/Painter/font_support/AGGTextRenderer.cpp b/src/servers/app/server/Painter/font_support/AGGTextRenderer.cpp index 1792be8174..28f90f3d0a 100644 --- a/src/servers/app/server/Painter/font_support/AGGTextRenderer.cpp +++ b/src/servers/app/server/Painter/font_support/AGGTextRenderer.cpp @@ -193,6 +193,7 @@ AGGTextRenderer::PostScriptName() const // RenderString void AGGTextRenderer::RenderString(const char* string, + uint32 length, font_renderer_solid_type* solidRenderer, font_renderer_bin_type* binRenderer, const Transformable& transform, @@ -217,7 +218,7 @@ AGGTextRenderer::RenderString(const char* string, conv_font_trans_type ftrans(fcurves, transform); - int32 srcLength = strlen(string); + int32 srcLength = min_c(length, strlen(string)); int32 dstLength = srcLength * 4; char* buffer = new char[dstLength]; diff --git a/src/servers/app/server/Painter/font_support/AGGTextRenderer.h b/src/servers/app/server/Painter/font_support/AGGTextRenderer.h index 2402452da8..9fa93c5c15 100644 --- a/src/servers/app/server/Painter/font_support/AGGTextRenderer.h +++ b/src/servers/app/server/Painter/font_support/AGGTextRenderer.h @@ -30,6 +30,7 @@ class AGGTextRenderer : public TextRenderer { virtual const char* PostScriptName() const; virtual void RenderString(const char* utf8String, + uint32 length, font_renderer_solid_type* solidRenderer, font_renderer_bin_type* binRenderer, const Transformable& transform,