diff options
author | Pablo MartÃnez <58857054+elpekenin@users.noreply.github.com> | 2023-07-07 16:51:19 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-08 00:51:19 +1000 |
commit | d13925be9abe02438f3c74ffcbc65ce74dde3de8 (patch) | |
tree | 95589fc51b49cb050a28dfc2970c60ffeaef1ce1 /quantum/painter/qp_draw_text.c | |
parent | 9b3ac793bca14dc5efd424ba28324937b7bed40d (diff) |
[Bugfix] Check `NULL` pointers on QP (#20481)
Diffstat (limited to 'quantum/painter/qp_draw_text.c')
-rw-r--r-- | quantum/painter/qp_draw_text.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/quantum/painter/qp_draw_text.c b/quantum/painter/qp_draw_text.c index a70caac6f4..ff6fc01d11 100644 --- a/quantum/painter/qp_draw_text.c +++ b/quantum/painter/qp_draw_text.c @@ -136,7 +136,7 @@ painter_font_handle_t qp_load_font_mem(const void *buffer) { bool qp_close_font(painter_font_handle_t font) { qff_font_handle_t *qff_font = (qff_font_handle_t *)font; - if (!qff_font->validate_ok) { + if (!qff_font || !qff_font->validate_ok) { qp_dprintf("qp_close_font: fail (invalid font)\n"); return false; } @@ -380,7 +380,7 @@ static inline bool qp_font_code_point_handler_drawglyph(qff_font_handle_t *qff_f int16_t qp_textwidth(painter_font_handle_t font, const char *str) { qff_font_handle_t *qff_font = (qff_font_handle_t *)font; - if (!qff_font->validate_ok) { + if (!qff_font || !qff_font->validate_ok) { qp_dprintf("qp_textwidth: fail (invalid font)\n"); return false; } @@ -406,13 +406,13 @@ int16_t qp_drawtext(painter_device_t device, uint16_t x, uint16_t y, painter_fon int16_t qp_drawtext_recolor(painter_device_t device, uint16_t x, uint16_t y, painter_font_handle_t font, const char *str, uint8_t hue_fg, uint8_t sat_fg, uint8_t val_fg, uint8_t hue_bg, uint8_t sat_bg, uint8_t val_bg) { qp_dprintf("qp_drawtext_recolor: entry\n"); painter_driver_t *driver = (painter_driver_t *)device; - if (!driver->validate_ok) { + if (!driver || !driver->validate_ok) { qp_dprintf("qp_drawtext_recolor: fail (validation_ok == false)\n"); return 0; } qff_font_handle_t *qff_font = (qff_font_handle_t *)font; - if (!qff_font->validate_ok) { + if (!qff_font || !qff_font->validate_ok) { qp_dprintf("qp_drawtext_recolor: fail (invalid font)\n"); return false; } |