The lifespan only tells the renderer whether this decal must be rendered in the current frame. Unlike particles, decals are not doing something, they are just a passive list of objects.
If you had some function in your project that crashes when a new level is loaded, putting a wait(1) before level_load would obviously not help - it would then only crash 1 frame later. But if you have a while loop that is generating decals, stop that loop 1 frame before level change. Otherwise, placing a decal on an invalid terrain pointer can indeed cause a crash.