diff options
author | Ori Bernstein <ori@eigenstate.org> | 2019-12-04 12:37:07 -0800 |
---|---|---|
committer | Ori Bernstein <ori@eigenstate.org> | 2019-12-04 12:37:07 -0800 |
commit | 2b5db0d9d451dafa70039dc0a668cde68e59d4f3 (patch) | |
tree | 7c3ff9ae34b33f7ec243adb84e13b1eee8f9a07e /sys/src/cmd/acme | |
parent | a181f3dd3e922e7acc5a3f4982584e845bddec3c (diff) |
acme: avoid division by zero when resizing col (#189)
To reproduce, create a column with at least two windows and resize
acme to have almost zero height.
(imported from plan9port commit 76b9347a5fa3a0970527c6ee1b97ef1c714f636b)
Diffstat (limited to 'sys/src/cmd/acme')
-rw-r--r-- | sys/src/cmd/acme/cols.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/src/cmd/acme/cols.c b/sys/src/cmd/acme/cols.c index a5e0fbd28..f66634d57 100644 --- a/sys/src/cmd/acme/cols.c +++ b/sys/src/cmd/acme/cols.c @@ -197,8 +197,11 @@ colresize(Column *c, Rectangle r) w->maxlines = 0; if(i == c->nw-1) r1.max.y = r.max.y; - else - r1.max.y = r1.min.y+(Dy(w->r)+Border)*Dy(r)/Dy(c->r); + else { + r1.max.y = r1.min.y; + if(Dy(c->r) != 0) + r1.max.y += (Dy(w->r)+Border)*Dy(r)/Dy(c->r); + } r2 = r1; r2.max.y = r2.min.y+Border; draw(screen, r2, display->black, nil, ZP); |