[PATCH] fwts_pm_method.h: constify some function args, don't inline free_pm_method_vars
Colin King
colin.king at canonical.com
Sat Apr 10 23:39:00 UTC 2021
From: Colin Ian King <colin.king at canonical.com>
Make sone read only function arguments const. Fix some formatting and
don't inline free_pm_method_vars as this leads some some object code bloat.
Signed-off-by: Colin Ian King <colin.king at canonical.com>
---
src/lib/include/fwts_pm_method.h | 28 +++++++---------------------
src/lib/src/fwts_pm_method.c | 18 +++++++++++++++++-
2 files changed, 24 insertions(+), 22 deletions(-)
diff --git a/src/lib/include/fwts_pm_method.h b/src/lib/include/fwts_pm_method.h
index f2175849..e5566b11 100644
--- a/src/lib/include/fwts_pm_method.h
+++ b/src/lib/include/fwts_pm_method.h
@@ -30,8 +30,7 @@
#include "fwts_types.h"
-typedef struct
-{
+typedef struct {
fwts_framework *fw;
time_t t_start;
time_t t_end;
@@ -53,32 +52,19 @@ typedef struct
#define FWTS_HIBERNATE "FWTS_HIBERNATE"
#define FWTS_RESUME "FWTS_RESUME"
-static inline void free_pm_method_vars(fwts_pm_method_vars *var)
-{
- if (!var)
- return;
-#if FWTS_ENABLE_LOGIND
- if (var->logind_proxy)
- g_object_unref(var->logind_proxy);
- if (var->logind_connection)
- g_object_unref(var->logind_connection);
- if (var->gmainloop)
- g_main_loop_unref(var->gmainloop);
- if (var->action)
- free(var->action);
-#endif
- free(var);
-}
-
+void free_pm_method_vars(fwts_pm_method_vars *var);
int fwts_logind_init_proxy(fwts_pm_method_vars *fwts_settings);
-int fwts_logind_wait_for_resume_from_action(fwts_pm_method_vars *fwts_settings, const char *action, int minimum_delay);
+int fwts_logind_wait_for_resume_from_action(
+ fwts_pm_method_vars *fwts_settings, const char *action,
+ int minimum_delay);
bool fwts_logind_can_suspend(fwts_pm_method_vars *fwts_settings);
bool fwts_logind_can_hybrid_suspend(fwts_pm_method_vars *fwts_settings);
bool fwts_logind_can_hibernate(fwts_pm_method_vars *fwts_settings);
bool fwts_sysfs_can_suspend(const fwts_pm_method_vars *fwts_settings);
bool fwts_sysfs_can_hybrid_suspend(const fwts_pm_method_vars *fwts_settings);
bool fwts_sysfs_can_hibernate(const fwts_pm_method_vars *fwts_settings);
-int fwts_sysfs_do_suspend(const fwts_pm_method_vars *fwts_settings, bool s3_hybrid);
+int fwts_sysfs_do_suspend(const fwts_pm_method_vars *fwts_settings,
+ const bool s3_hybrid);
int fwts_sysfs_do_hibernate(const fwts_pm_method_vars *fwts_settings);
#endif
diff --git a/src/lib/src/fwts_pm_method.c b/src/lib/src/fwts_pm_method.c
index b4e1bdf7..ead3f1b6 100644
--- a/src/lib/src/fwts_pm_method.c
+++ b/src/lib/src/fwts_pm_method.c
@@ -415,7 +415,7 @@ bool fwts_sysfs_can_hibernate(const fwts_pm_method_vars *fwts_settings)
*/
int fwts_sysfs_do_suspend(
const fwts_pm_method_vars *fwts_settings,
- bool s3_hybrid)
+ const bool s3_hybrid)
{
int status;
@@ -446,3 +446,19 @@ int fwts_sysfs_do_hibernate(const fwts_pm_method_vars *fwts_settings)
"/sys/power/state", "disk");
}
+void free_pm_method_vars(fwts_pm_method_vars *var)
+{
+ if (!var)
+ return;
+#if FWTS_ENABLE_LOGIND
+ if (var->logind_proxy)
+ g_object_unref(var->logind_proxy);
+ if (var->logind_connection)
+ g_object_unref(var->logind_connection);
+ if (var->gmainloop)
+ g_main_loop_unref(var->gmainloop);
+ if (var->action)
+ free(var->action);
+#endif
+ free(var);
+}
--
2.30.2
More information about the fwts-devel
mailing list