diff --git a/src/animation/client.h b/src/animation/client.h index e1fc551..a1d7a62 100644 --- a/src/animation/client.h +++ b/src/animation/client.h @@ -618,7 +618,9 @@ void fadeout_client_animation_next_tick(Client *c) { BufferData buffer_data; double animation_passed = - (double)c->animation.passed_frames / c->animation.total_frames; + c->animation.total_frames + ? (double)c->animation.passed_frames / c->animation.total_frames + : 1.0; int type = c->animation.action = c->animation.action; double factor = find_animation_curve_at(animation_passed, type); unsigned int width = @@ -674,7 +676,9 @@ void fadeout_client_animation_next_tick(Client *c) { void client_animation_next_tick(Client *c) { double animation_passed = - (double)c->animation.passed_frames / c->animation.total_frames; + c->animation.total_frames + ? (double)c->animation.passed_frames / c->animation.total_frames + : 1.0; int type = c->animation.action == NONE ? MOVE : c->animation.action; double factor = find_animation_curve_at(animation_passed, type); diff --git a/src/animation/layer.h b/src/animation/layer.h index 755b3e0..3b81fc2 100644 --- a/src/animation/layer.h +++ b/src/animation/layer.h @@ -235,7 +235,9 @@ void fadeout_layer_animation_next_tick(LayerSurface *l) { return; double animation_passed = - (double)l->animation.passed_frames / l->animation.total_frames; + l->animation.total_frames + ? (double)l->animation.passed_frames / l->animation.total_frames + : 1.0; int type = l->animation.action = l->animation.action; double factor = find_animation_curve_at(animation_passed, type); unsigned int width = @@ -294,7 +296,9 @@ void layer_animation_next_tick(LayerSurface *l) { return; double animation_passed = - (double)l->animation.passed_frames / l->animation.total_frames; + l->animation.total_frames + ? (double)l->animation.passed_frames / l->animation.total_frames + : 1.0; int type = l->animation.action == NONE ? MOVE : l->animation.action; double factor = find_animation_curve_at(animation_passed, type);