El dl. 15 de 11 de 2021 a les 20:46 -0800, en/na Bill Kendrick va escriure:
> On Tue, Nov 16, 2021 at 12:16:57AM +0100, Pere Pujal i Carabantes wrote:
> <snip>
> > I am able to crash Tux Paint with the Fill tool
> > and with the same starter on my android phone,
> > instead in Linux it performs fine when called with the size
> > of the phone.
> >
> > Instead, if I call Tux Paint with an unreasonable size
> > like 3000x2000, then also in Linux I am able to crash.
>
> Ah, confirmed! I added a simple hack to have the flood fill
> stop iterating any deeper than 20,000, which is a lot.
>
> I think an even less recursion-heavy method of filling
> is in order. I wonder what professional apps like GIMP do.
> (I was able to load the SVG at 3000px wide, and even scale it
> up to 6000px, which exceeded the max. memory limit setting,
> and it was able to fill successfully. :) )
>
> We already walk left & right, and then recurse to fill up
> and down one row. Obviously that's not the best solution. ;)
>
> In any case, hopefully this helps stop the crash for
> most users that it might be affecting...? Pere, can you
> check on your end? (I should remind myself how to restrict
> process resources on Un*x & Linux, it's been decades. :) )
I tested in Linux and Android, I will need some more time to compile and test in Windows:
Linux performs fine even with Tux Paint running a window of 4000x3000
For Android things are different:
cnt=20000 seems too much for my phone(lineage cm 14.1 AKA Android 7)
and it still crashes,
I had to low it to 2000 to not crash, it crashes still at 3000
Off course, with a too low recursivity allowed, the fill tool doesn't
perform fine and stops filling far before the limits of the area.
Thanks
Pere
>
> Thanks again, Yang!
>
> -bill!
>
>
> _______________________________________________
> Tuxpaint-users mailing list
> Tux...@li...
> https://lists.sourceforge.net/lists/listinfo/tuxpaint-users
|