767da6cc7e
Related: #870695
69 lines
2.0 KiB
Diff
69 lines
2.0 KiB
Diff
From 6ccedf7b6ecdc8314ed97355cfe5499fffb13a1e Mon Sep 17 00:00:00 2001
|
|
From: Ray Strode <rstrode@redhat.com>
|
|
Date: Thu, 1 Nov 2012 17:04:33 -0400
|
|
Subject: [PATCH 1/2] main: if deactivate when already deactivated return
|
|
immediately
|
|
|
|
We were trying to ignore second deactivate requests, but
|
|
were instead crashing because we're trying to use a nullified
|
|
trigger.
|
|
|
|
This commit makes sure things don't go crashy when a user
|
|
does "plymouth deactivate" on an already deactivated plymouthd.
|
|
---
|
|
src/main.c | 8 +++++++-
|
|
1 file changed, 7 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/src/main.c b/src/main.c
|
|
index 88e5002..60ca28f 100644
|
|
--- a/src/main.c
|
|
+++ b/src/main.c
|
|
@@ -1135,7 +1135,13 @@ static void
|
|
on_deactivate (state_t *state,
|
|
ply_trigger_t *deactivate_trigger)
|
|
{
|
|
- if ((state->deactivate_trigger != NULL) || state->is_inactive)
|
|
+ if (state->is_inactive)
|
|
+ {
|
|
+ ply_trigger_pull (deactivate_trigger, NULL);
|
|
+ return;
|
|
+ }
|
|
+
|
|
+ if (state->deactivate_trigger != NULL)
|
|
{
|
|
ply_trigger_add_handler (state->deactivate_trigger,
|
|
(ply_trigger_handler_t)
|
|
--
|
|
1.7.12.1
|
|
|
|
|
|
From b3548ebaf76d222f56d6a7b34c5940b930d47609 Mon Sep 17 00:00:00 2001
|
|
From: Ray Strode <rstrode@redhat.com>
|
|
Date: Thu, 1 Nov 2012 17:16:07 -0400
|
|
Subject: [PATCH 2/2] two-step: don't update progress when idle
|
|
|
|
We've already reach a state where we aren't drawing anymore, etc,
|
|
so don't update progress and potentially fire off animations
|
|
that won't be seen.
|
|
---
|
|
src/plugins/splash/two-step/plugin.c | 3 +++
|
|
1 file changed, 3 insertions(+)
|
|
|
|
diff --git a/src/plugins/splash/two-step/plugin.c b/src/plugins/splash/two-step/plugin.c
|
|
index 2998beb..541a108 100644
|
|
--- a/src/plugins/splash/two-step/plugin.c
|
|
+++ b/src/plugins/splash/two-step/plugin.c
|
|
@@ -1067,6 +1067,9 @@ on_boot_progress (ply_boot_splash_plugin_t *plugin,
|
|
if (plugin->state != PLY_BOOT_SPLASH_DISPLAY_NORMAL)
|
|
return;
|
|
|
|
+ if (plugin->is_idle)
|
|
+ return;
|
|
+
|
|
if (percent_done >= SHOW_ANIMATION_PERCENT)
|
|
{
|
|
if (plugin->stop_trigger == NULL)
|
|
--
|
|
1.7.12.1
|
|
|