devdraw: fix topnwindows() panic when images are not windows (thanks aiju)
Crashes drawterm and native: #include <u.h> #include <libc.h> #include <draw.h> void main(int argc, char **argv) { initdraw(nil, nil, nil); Image *a[] = {screen, display->black}; topnwindows(a, nelem(a)); flushimage(display, 1); }
This commit is contained in:
parent
5254e41f6b
commit
16784a2e45
1 changed files with 4 additions and 4 deletions
|
@ -2022,13 +2022,13 @@ drawmesg(Client *client, void *av, int n)
|
|||
free(lp);
|
||||
nexterror();
|
||||
}
|
||||
for(j=0; j<nw; j++)
|
||||
for(j=0; j<nw; j++){
|
||||
lp[j] = drawimage(client, a+1+1+2+j*4);
|
||||
if(lp[0]->layer == 0)
|
||||
error("images are not windows");
|
||||
for(j=1; j<nw; j++)
|
||||
if(lp[j]->layer == 0)
|
||||
error("images are not windows");
|
||||
if(lp[j]->layer->screen != lp[0]->layer->screen)
|
||||
error("images not on same screen");
|
||||
}
|
||||
if(a[1])
|
||||
memltofrontn(lp, nw);
|
||||
else
|
||||
|
|
Loading…
Reference in a new issue