fix several number overflow issues
This commit is contained in:
parent
eb07f3dc10
commit
84734c73e8
6
sent.c
6
sent.c
@ -318,7 +318,7 @@ void pngdraw(Image *img)
|
|||||||
|
|
||||||
void getfontsize(Slide *s, unsigned int *width, unsigned int *height)
|
void getfontsize(Slide *s, unsigned int *width, unsigned int *height)
|
||||||
{
|
{
|
||||||
size_t i, j;
|
int i, j;
|
||||||
unsigned int curw, imax;
|
unsigned int curw, imax;
|
||||||
float lfac = linespacing * (s->linecount - 1) + 1;
|
float lfac = linespacing * (s->linecount - 1) + 1;
|
||||||
|
|
||||||
@ -326,7 +326,7 @@ void getfontsize(Slide *s, unsigned int *width, unsigned int *height)
|
|||||||
for (j = NUMFONTSCALES - 1; j >= 0; j--)
|
for (j = NUMFONTSCALES - 1; j >= 0; j--)
|
||||||
if (fonts[j]->h * lfac <= xw.uh)
|
if (fonts[j]->h * lfac <= xw.uh)
|
||||||
break;
|
break;
|
||||||
drw_setfontset(d, fonts[j]);
|
drw_setfontset(d, fonts[++j]);
|
||||||
|
|
||||||
/* fit width */
|
/* fit width */
|
||||||
*width = 0;
|
*width = 0;
|
||||||
@ -334,7 +334,7 @@ void getfontsize(Slide *s, unsigned int *width, unsigned int *height)
|
|||||||
curw = drw_fontset_getwidth(d, s->lines[i]);
|
curw = drw_fontset_getwidth(d, s->lines[i]);
|
||||||
if (curw >= *width)
|
if (curw >= *width)
|
||||||
imax = i;
|
imax = i;
|
||||||
while (j >= 0 && curw > xw.uw) {
|
while (j > 0 && curw > xw.uw) {
|
||||||
drw_setfontset(d, fonts[--j]);
|
drw_setfontset(d, fonts[--j]);
|
||||||
curw = drw_fontset_getwidth(d, s->lines[i]);
|
curw = drw_fontset_getwidth(d, s->lines[i]);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user