aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main.c10
-rw-r--r--src/mm-context.c18
-rw-r--r--src/mm-context.h11
3 files changed, 32 insertions, 7 deletions
diff --git a/src/main.c b/src/main.c
index 9963c7cc..928078a3 100644
--- a/src/main.c
+++ b/src/main.c
@@ -195,9 +195,13 @@ main (int argc, char *argv[])
{
MMSleepMonitor *sleep_monitor;
- sleep_monitor = mm_sleep_monitor_get ();
- g_signal_connect (sleep_monitor, MM_SLEEP_MONITOR_SLEEPING, G_CALLBACK (sleeping_cb), NULL);
- g_signal_connect (sleep_monitor, MM_SLEEP_MONITOR_RESUMING, G_CALLBACK (resuming_cb), NULL);
+ if (mm_context_get_test_no_suspend_resume())
+ mm_dbg ("Suspend/resume support disabled at runtime");
+ else {
+ sleep_monitor = mm_sleep_monitor_get ();
+ g_signal_connect (sleep_monitor, MM_SLEEP_MONITOR_SLEEPING, G_CALLBACK (sleeping_cb), NULL);
+ g_signal_connect (sleep_monitor, MM_SLEEP_MONITOR_RESUMING, G_CALLBACK (resuming_cb), NULL);
+ }
}
#endif
diff --git a/src/mm-context.c b/src/mm-context.c
index 890734ea..6561127e 100644
--- a/src/mm-context.c
+++ b/src/mm-context.c
@@ -225,6 +225,9 @@ static gchar *test_plugin_dir;
#if defined WITH_UDEV
static gboolean test_no_udev;
#endif
+#if defined WITH_SYSTEMD_SUSPEND_RESUME
+static gboolean test_no_suspend_resume;
+#endif
static const GOptionEntry test_entries[] = {
{
@@ -249,6 +252,13 @@ static const GOptionEntry test_entries[] = {
NULL
},
#endif
+#if defined WITH_SYSTEMD_SUSPEND_RESUME
+ {
+ "test-no-suspend-resume", 0, 0, G_OPTION_ARG_NONE, &test_no_suspend_resume,
+ "Disable suspend/resume support at runtime even if available",
+ NULL
+ },
+#endif
{ NULL }
};
@@ -292,6 +302,14 @@ mm_context_get_test_no_udev (void)
}
#endif
+#if defined WITH_SYSTEMD_SUSPEND_RESUME
+gboolean
+mm_context_get_test_no_suspend_resume (void)
+{
+ return test_no_suspend_resume;
+}
+#endif
+
/*****************************************************************************/
static void
diff --git a/src/mm-context.h b/src/mm-context.h
index 1d02e296..721fee88 100644
--- a/src/mm-context.h
+++ b/src/mm-context.h
@@ -43,11 +43,14 @@ gboolean mm_context_get_log_timestamps (void);
gboolean mm_context_get_log_relative_timestamps (void);
/* Testing support */
-gboolean mm_context_get_test_session (void);
-gboolean mm_context_get_test_enable (void);
-const gchar *mm_context_get_test_plugin_dir (void);
+gboolean mm_context_get_test_session (void);
+gboolean mm_context_get_test_enable (void);
+const gchar *mm_context_get_test_plugin_dir (void);
#if defined WITH_UDEV
-gboolean mm_context_get_test_no_udev (void);
+gboolean mm_context_get_test_no_udev (void);
+#endif
+#if defined WITH_SYSTEMD_SUSPEND_RESUME
+gboolean mm_context_get_test_no_suspend_resume (void);
#endif
#endif /* MM_CONTEXT_H */