Skip to content

Commit 5fad464

Browse files
committed
Fix potential integer overflow
1 parent 71e1f43 commit 5fad464

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

dwm.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -903,13 +903,13 @@ geticonprop(Window win, unsigned int *picw, unsigned int *pich)
903903
unsigned long *i; const unsigned long *end = p + n;
904904
uint32_t bstd = UINT32_MAX, d, m;
905905
for (i = p; i < end - 1; i += sz) {
906-
if ((w = *i++) > UINT16_MAX || (h = *i++) > UINT16_MAX) { XFree(p); return None; }
906+
if ((w = *i++) >= 16384 || (h = *i++) >= 16384) { XFree(p); return None; }
907907
if ((sz = w * h) > end - i) break;
908908
if ((m = w > h ? w : h) >= ICONSIZE && (d = m - ICONSIZE) < bstd) { bstd = d; bstp = i; }
909909
}
910910
if (!bstp) {
911911
for (i = p; i < end - 1; i += sz) {
912-
if ((w = *i++) > UINT16_MAX || (h = *i++) > UINT16_MAX) { XFree(p); return None; }
912+
if ((w = *i++) >= 16384 || (h = *i++) >= 16384) { XFree(p); return None; }
913913
if ((sz = w * h) > end - i) break;
914914
if ((d = ICONSIZE - (w > h ? w : h)) < bstd) { bstd = d; bstp = i; }
915915
}

0 commit comments

Comments
 (0)