p5 icon indicating copy to clipboard operation
p5 copied to clipboard

Program crashes upon resizing window to 0

Open PsychoticTomato opened this issue 1 year ago • 3 comments

Describe the bug When resizing the p5 program window to a state where either the height or the width are zero, the program crashes with a ZeroDivisionError.

To Reproduce This is my code:

import p5


class DrawSquare():
    def __init__(self):
        p5.size(600, 600)
        p5.no_stroke()
        p5.background(204)


if __name__ == '__main__':
    p5.run(renderer="vispy")
    square = DrawSquare()

Expected behavior The program keeps running for a second with the window turning black, then crashes.

Screenshots image

System information:

  • p5 release (version number or latest commit): 0.8.4
  • Python version: 3.10
  • Operating system: Windows

PsychoticTomato avatar Oct 10 '24 11:10 PsychoticTomato

Thank you for submitting your first issue to p5py

github-actions[bot] avatar Oct 10 '24 11:10 github-actions[bot]

I am curious to know the use case behind setting height or width to 0.

tushar5526 avatar Oct 16 '24 11:10 tushar5526

It's not a use case, it's a normal occurence when manually resizing the window with your cursor. Try resizing it in a way that minimizes one of the axes and the program crashes. Seems to happen because some of the screen update functions divide length by width or width by length. Having a minimum number of pixels for height/width would solve the issue.

PsychoticTomato avatar Oct 16 '24 15:10 PsychoticTomato