summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2019-04-25 07:53:48 +0200
committerThomas Haller <thaller@redhat.com>2019-04-25 07:53:48 +0200
commitbee4d30becc223c645a205b1636ebbf0f24fd70a (patch)
tree6a3462fc3cc608013193de85eaee014f365e98bd
parentd76f3748de954510bb4fcd6b5e0f507f72fd28cf (diff)
downloadNetworkManager-bee4d30becc223c645a205b1636ebbf0f24fd70a.tar.gz
cli: add RETURN_STR_TEMPORARY() macro to "clients/common/nm-meta-setting-desc.c"
Will be used next.
-rw-r--r--clients/common/nm-meta-setting-desc.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/clients/common/nm-meta-setting-desc.c b/clients/common/nm-meta-setting-desc.c
index e5759e5358..658e250bed 100644
--- a/clients/common/nm-meta-setting-desc.c
+++ b/clients/common/nm-meta-setting-desc.c
@@ -699,9 +699,21 @@ _SET_FCN_DO_REMOVE (char modifier, const char *value)
#define RETURN_STR_TO_FREE(val) \
G_STMT_START { \
char *_val = (val); \
+ \
return ((*(out_to_free)) = _val); \
} G_STMT_END
+#define RETURN_STR_TEMPORARY(val) \
+ G_STMT_START { \
+ const char *_val = (val); \
+ \
+ if (_val == NULL) \
+ return NULL; \
+ if (_val[0] == '\0') \
+ return ""; \
+ return ((*(out_to_free)) = g_strdup (_val)); \
+ } G_STMT_END
+
static gboolean
_gobject_property_is_default (NMSetting *setting, const char *prop_name)
{