If we don't deactivate the renderer before hiding the splash, the
drm renderer may scan out the buffer contents to the fbcon buffer;
since we only hide the splash when dumping details or when
--retain-splash is *not* given to quit, this is exactly the
opposite of what we want.
The effect of not doing this is partial splash contents behind the
details in cases of error, or when using quit. This doesn't affect
plymouth quit --retain-splash.
state->showing_details = false;
on_escape_pressed (state);
+ if (state->renderer != NULL)
+ ply_renderer_deactivate (state->renderer);
if (state->boot_splash != NULL)
ply_boot_splash_hide (state->boot_splash);
if (!state->should_retain_splash)
{
ply_trace ("hiding splash");
+ if (state->renderer != NULL)
+ ply_renderer_deactivate (state->renderer);
if (state->boot_splash != NULL)
ply_boot_splash_hide (state->boot_splash);
}