commit d78ff08d99780a73447d5a95bf1e358e8c23aa3c from: Hiltjo Posthuma date: Fri Aug 20 21:05:53 2021 UTC Revert "Improve speed of drw_text when provided with large strings" This reverts commit c585e8e498ec6f9c423ab8ea07cf853ee5b05fbe. It causes issues with truncation of characters when the text does not fit and so on. The patch should be reworked and properly tested. commit - cd2133a5f66b42f992a9a1b92bbbce11dc26b941 commit + d78ff08d99780a73447d5a95bf1e358e8c23aa3c blob - 9c3908646eb39e36ac5f03defe0b03653446d85a blob + 4cdbcbe51c2945f1f9be817e910f0331e1f1ea64 --- drw.c +++ drw.c @@ -310,11 +310,8 @@ drw_text(Drw *drw, int x, int y, unsigned int w, unsig if (utf8strlen) { drw_font_getexts(usedfont, utf8str, utf8strlen, &ew, NULL); /* shorten text if necessary */ - if (ew > w) - for (ew = 0, len = 0; ew < w - lpad * 2 && len < MIN(utf8strlen, sizeof(buf) - 1); len++) - drw_font_getexts(usedfont, utf8str, len, &ew, NULL); - else - len = MIN(utf8strlen, sizeof(buf) - 1); + for (len = MIN(utf8strlen, sizeof(buf) - 1); len && ew > w; len--) + drw_font_getexts(usedfont, utf8str, len, &ew, NULL); if (len) { memcpy(buf, utf8str, len);