[augeas-devel] augeas: master - * src/syntax.h (dup_string): duplicate a string
David Lutterkort
lutter at fedoraproject.org
Thu Mar 12 18:08:27 UTC 2009
Gitweb: http://git.fedorahosted.org/git/augeas.git?p=augeas.git;a=commitdiff;h=44afcf37bd5f2b7ed293e78149a6fc3931153eaa
Commit: 44afcf37bd5f2b7ed293e78149a6fc3931153eaa
Parent: 22cb8ecc61abf08304762fd19bef3cf77207321a
Author: David Lutterkort <lutter at redhat.com>
AuthorDate: Mon Mar 9 14:59:44 2009 -0700
Committer: David Lutterkort <lutter at redhat.com>
CommitterDate: Mon Mar 9 15:38:13 2009 -0700
* src/syntax.h (dup_string): duplicate a string
---
src/syntax.c | 12 ++++++++++++
src/syntax.h | 3 +++
2 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/src/syntax.c b/src/syntax.c
index 176de2b..04a1a87 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -359,6 +359,18 @@ struct string *make_string(char *str) {
return string;
}
+struct string *dup_string(const char *str) {
+ struct string *string;
+ make_ref(string);
+ if (str == NULL)
+ string->str = strdup("");
+ else
+ string->str = strdup(str);
+ if (string->str == NULL)
+ unref(string, string);
+ return string;
+}
+
struct term *make_app_term(struct term *lambda, struct term *arg,
struct info *info) {
struct term *app = make_term(A_APP, info);
diff --git a/src/syntax.h b/src/syntax.h
index b458bc6..3abe540 100644
--- a/src/syntax.h
+++ b/src/syntax.h
@@ -320,6 +320,9 @@ struct term *make_app_term(struct term *func, struct term *arg,
struct info *info);
struct term *make_app_ident(char *id, struct term *func, struct info *info);
+/* Duplicate a string; if STR is NULL, use the empty string "" */
+struct string *dup_string(const char *str);
+
/* Make an EXN value
* Receive ownership of INFO
*
More information about the augeas-devel
mailing list