[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