1.1 --- a/librazor/razor.h Fri Feb 17 18:35:10 2012 +0000
1.2 +++ b/librazor/razor.h Sat Aug 23 11:13:48 2014 +0100
1.3 @@ -115,12 +115,21 @@
1.4 struct razor_error;
1.5
1.6 struct razor_error *razor_error_new_str(const char *path, const char *str);
1.7 +struct razor_error *razor_error_dup(struct razor_error *src,
1.8 + const char *summary);
1.9
1.10 #define razor_set_error(error, path, str) \
1.11 if (error) \
1.12 *(error) = razor_error_new_str(path, str); \
1.13 else
1.14
1.15 +#define razor_propagate_error(dest, src, summary) \
1.16 + if (dest) \
1.17 + *(dest) = razor_error_dup(src, summary); \
1.18 + else
1.19 +
1.20 +const char *razor_error_get_primary_text(struct razor_error *error);
1.21 +const char *razor_error_get_secondary_text(struct razor_error *error);
1.22 const char *razor_error_get_msg(struct razor_error *error);
1.23 void razor_error_free(struct razor_error *error);
1.24
1.25 @@ -145,6 +154,7 @@
1.26
1.27 struct razor_atomic *razor_atomic_open(const char *description);
1.28 int razor_atomic_commit(struct razor_atomic *atomic);
1.29 +struct razor_error *razor_atomic_get_error(struct razor_atomic *atomic);
1.30 const char *razor_atomic_get_error_msg(struct razor_atomic *atomic);
1.31 void razor_atomic_destroy(struct razor_atomic *atomic);
1.32