… when the new buffer is too small to contain the current number of particles.
From the forums, posted by cval here.
Something funny goes on when i'm trying to change ParticleSystem's buffer size when it has active particles in it. When i change it at runtime to a greater value than its current buffer size, or particle count (greatest value between them from math.max function), it's perfectly fine, however when i'm trying to change it to a value which is less than current particle count, or buffer size, the program runs just fine, but once i try to quit, it crashes somewhere after processing quit event (which is currently completely blank btw). Yeah, sometimes i create weird use cases that break the engine but it's fine since i can easily do without it. Idk, maybe this information will be helpful to someone who does same thing and wonders what's going on.