diff --git a/gfx/drivers_font/ctr_font.c b/gfx/drivers_font/ctr_font.c index 94f7d7c24d..b9de6fdbff 100644 --- a/gfx/drivers_font/ctr_font.c +++ b/gfx/drivers_font/ctr_font.c @@ -334,25 +334,18 @@ static void ctr_font_render_message( for (;;) { const char* delim = strchr(msg, '\n'); + unsigned msg_len = delim ? + (unsigned)(delim - msg) : strlen(msg); /* Draw the line */ - if (delim) - { - unsigned msg_len = delim - msg; - ctr_font_render_line(ctr, font, msg, msg_len, - scale, color, pos_x, pos_y - (float)lines * line_height, - width, height, text_align); - msg += msg_len + 1; - lines++; - } - else - { - unsigned msg_len = strlen(msg); - ctr_font_render_line(ctr, font, msg, msg_len, - scale, color, pos_x, pos_y - (float)lines * line_height, - width, height, text_align); + ctr_font_render_line(ctr, font, msg, msg_len, + scale, color, pos_x, pos_y - (float)lines * line_height, + width, height, text_align); + if (!delim) break; - } + + msg += msg_len + 1; + lines++; } } diff --git a/gfx/drivers_font/d3d10_font.c b/gfx/drivers_font/d3d10_font.c index a3bedcdbb3..10f897b272 100644 --- a/gfx/drivers_font/d3d10_font.c +++ b/gfx/drivers_font/d3d10_font.c @@ -259,27 +259,20 @@ static void d3d10_font_render_message( for (;;) { const char* delim = strchr(msg, '\n'); + unsigned msg_len = delim ? + (unsigned)(delim - msg) : strlen(msg); /* Draw the line */ - if (delim) - { - unsigned msg_len = delim - msg; - d3d10_font_render_line(d3d10, - font, msg, msg_len, scale, color, pos_x, - pos_y - (float)lines * line_height, - width, height, text_align); - msg += msg_len + 1; - lines++; - } - else - { - unsigned msg_len = strlen(msg); - d3d10_font_render_line(d3d10, - font, msg, msg_len, scale, color, pos_x, - pos_y - (float)lines * line_height, - width, height, text_align); + d3d10_font_render_line(d3d10, + font, msg, msg_len, scale, color, pos_x, + pos_y - (float)lines * line_height, + width, height, text_align); + + if (!delim) break; - } + + msg += msg_len + 1; + lines++; } } diff --git a/gfx/drivers_font/d3d11_font.c b/gfx/drivers_font/d3d11_font.c index 1a037523e6..5c1b638f78 100644 --- a/gfx/drivers_font/d3d11_font.c +++ b/gfx/drivers_font/d3d11_font.c @@ -256,27 +256,20 @@ static void d3d11_font_render_message( for (;;) { const char* delim = strchr(msg, '\n'); + unsigned msg_len = delim ? + (unsigned)(delim - msg) : strlen(msg); /* Draw the line */ - if (delim) - { - unsigned msg_len = delim - msg; - d3d11_font_render_line(d3d11, - font, msg, msg_len, scale, color, pos_x, - pos_y - (float)lines * line_height, - width, height, text_align); - msg += msg_len + 1; - lines++; - } - else - { - unsigned msg_len = strlen(msg); - d3d11_font_render_line(d3d11, - font, msg, msg_len, scale, color, pos_x, - pos_y - (float)lines * line_height, - width, height, text_align); + d3d11_font_render_line(d3d11, + font, msg, msg_len, scale, color, pos_x, + pos_y - (float)lines * line_height, + width, height, text_align); + + if (!delim) break; - } + + msg += msg_len + 1; + lines++; } } diff --git a/gfx/drivers_font/d3d12_font.c b/gfx/drivers_font/d3d12_font.c index 7ed6634d05..61a1db54a3 100644 --- a/gfx/drivers_font/d3d12_font.c +++ b/gfx/drivers_font/d3d12_font.c @@ -270,25 +270,19 @@ static void d3d12_font_render_message( for (;;) { const char* delim = strchr(msg, '\n'); + unsigned msg_len = delim ? + (unsigned)(delim - msg) : strlen(msg); /* Draw the line */ - if (delim) - { - unsigned msg_len = delim - msg; - d3d12_font_render_line(d3d12, - font, msg, msg_len, scale, color, pos_x, - pos_y - (float)lines * line_height, width, height, text_align); - msg += msg_len + 1; - lines++; - } - else - { - unsigned msg_len = strlen(msg); - d3d12_font_render_line(d3d12, - font, msg, msg_len, scale, color, pos_x, - pos_y - (float)lines * line_height, width, height, text_align); + d3d12_font_render_line(d3d12, + font, msg, msg_len, scale, color, pos_x, + pos_y - (float)lines * line_height, width, height, text_align); + + if (!delim) break; - } + + msg += msg_len + 1; + lines++; } } diff --git a/gfx/drivers_font/metal_raster_font.m b/gfx/drivers_font/metal_raster_font.m index 724d8d4fff..235f5831f3 100644 --- a/gfx/drivers_font/metal_raster_font.m +++ b/gfx/drivers_font/metal_raster_font.m @@ -365,34 +365,24 @@ static INLINE void write_quad6(SpriteVertex *pv, for (;;) { - const char *delim = strchr(msg, '\n'); + const char *delim = strchr(msg, '\n'); + NSUInteger msg_len = delim ? + (unsigned)(delim - msg) : strlen(msg); /* Draw the line */ - if (delim) - { - NSUInteger msg_len = delim - msg; - [self _renderLine:msg - length:msg_len - scale:scale - color:color - posX:posX - posY:posY - (float)lines * line_height - aligned:aligned]; - msg += msg_len + 1; - lines++; - } - else - { - NSUInteger msg_len = strlen(msg); - [self _renderLine:msg - length:msg_len - scale:scale - color:color - posX:posX - posY:posY - (float)lines * line_height - aligned:aligned]; + [self _renderLine:msg + length:msg_len + scale:scale + color:color + posX:posX + posY:posY - (float)lines * line_height + aligned:aligned]; + + if (!delim) break; - } + + msg += msg_len + 1; + lines++; } } diff --git a/gfx/drivers_font/switch_font.c b/gfx/drivers_font/switch_font.c index 5759c65f02..d5db2ecc82 100644 --- a/gfx/drivers_font/switch_font.c +++ b/gfx/drivers_font/switch_font.c @@ -197,7 +197,7 @@ static void switch_font_render_message( int lines = 0; float line_height; - if (!msg || !*msg) + if (!msg || !*msg || !sw) return; /* If font line metrics are not supported just draw as usual */ @@ -218,33 +218,20 @@ static void switch_font_render_message( for (;;) { const char *delim = strchr(msg, '\n'); + unsigned msg_len = delim ? + (unsigned)(delim - msg) : strlen(msg); /* Draw the line */ - if (delim) - { - unsigned msg_len = delim - msg; - if (msg_len <= AVG_GLPYH_LIMIT) - { - if (sw) - switch_font_render_line(sw, font, msg, msg_len, - scale, color, pos_x, pos_y - (float)lines * line_height, - text_align); - } - msg += msg_len + 1; - lines++; - } - else - { - unsigned msg_len = strlen(msg); - if (msg_len <= AVG_GLPYH_LIMIT) - { - if (sw) - switch_font_render_line(sw, font, msg, msg_len, - scale, color, pos_x, pos_y - (float)lines * line_height, - text_align); - } + if (msg_len <= AVG_GLPYH_LIMIT) + switch_font_render_line(sw, font, msg, msg_len, + scale, color, pos_x, pos_y - (float)lines * line_height, + text_align); + + if (!delim) break; - } + + msg += msg_len + 1; + lines++; } } diff --git a/gfx/drivers_font/vita2d_font.c b/gfx/drivers_font/vita2d_font.c index cdd434822d..b1db41edda 100644 --- a/gfx/drivers_font/vita2d_font.c +++ b/gfx/drivers_font/vita2d_font.c @@ -246,13 +246,14 @@ static void vita2d_font_render_message( for (;;) { const char *delim = strchr(msg, '\n'); - unsigned msg_len = (delim) ? (delim - msg) : strlen(msg); + unsigned msg_len = (delim) ? + (unsigned)(delim - msg) : strlen(msg); + /* Draw the line */ vita2d_font_render_line(font, msg, msg_len, scale, color, pos_x, pos_y - (float)lines * line_height, width, height, text_align); - /* Draw the line */ if (!delim) break; diff --git a/gfx/drivers_font/vulkan_raster_font.c b/gfx/drivers_font/vulkan_raster_font.c index 3ba6567a5b..70d10c9c5b 100644 --- a/gfx/drivers_font/vulkan_raster_font.c +++ b/gfx/drivers_font/vulkan_raster_font.c @@ -244,9 +244,8 @@ static void vulkan_raster_font_render_message( if (!font->font_driver->get_line_metrics || !font->font_driver->get_line_metrics(font->font_data, &line_metrics)) { - if (font->vk) - vulkan_raster_font_render_line(font, msg, strlen(msg), - scale, color, pos_x, pos_y, text_align); + vulkan_raster_font_render_line(font, msg, strlen(msg), + scale, color, pos_x, pos_y, text_align); return; } @@ -255,27 +254,19 @@ static void vulkan_raster_font_render_message( for (;;) { const char *delim = strchr(msg, '\n'); + unsigned msg_len = delim + ? (unsigned)(delim - msg) : (unsigned)strlen(msg); /* Draw the line */ - if (delim) - { - unsigned msg_len = delim - msg; - if (font->vk) - vulkan_raster_font_render_line(font, msg, msg_len, - scale, color, pos_x, pos_y - (float)lines * line_height, - text_align); - msg += msg_len + 1; - lines++; - } - else - { - unsigned msg_len = strlen(msg); - if (font->vk) - vulkan_raster_font_render_line(font, msg, msg_len, - scale, color, pos_x, pos_y - (float)lines * line_height, - text_align); + vulkan_raster_font_render_line(font, msg, msg_len, + scale, color, pos_x, pos_y - (float)lines * line_height, + text_align); + + if (!delim) break; - } + + msg += msg_len + 1; + lines++; } } diff --git a/gfx/drivers_font/wiiu_font.c b/gfx/drivers_font/wiiu_font.c index e9c80c0779..b9ba5369bc 100644 --- a/gfx/drivers_font/wiiu_font.c +++ b/gfx/drivers_font/wiiu_font.c @@ -263,25 +263,19 @@ static void wiiu_font_render_message( for (;;) { const char* delim = strchr(msg, '\n'); + unsigned msg_len = delim ? + (unsigned)(delim - msg) : strlen(msg); /* Draw the line */ - if (delim) - { - unsigned msg_len = delim - msg; - wiiu_font_render_line(wiiu, font, msg, msg_len, - scale, color, pos_x, pos_y - (float)lines * line_height, - width, height, text_align); - msg += msg_len + 1; - lines++; - } - else - { - unsigned msg_len = strlen(msg); - wiiu_font_render_line(wiiu, font, msg, msg_len, - scale, color, pos_x, pos_y - (float)lines * line_height, - width, height, text_align); + wiiu_font_render_line(wiiu, font, msg, msg_len, + scale, color, pos_x, pos_y - (float)lines * line_height, + width, height, text_align); + + if (!delim) break; - } + + msg += msg_len + 1; + lines++; } }