On Fri, Jul 25, 2014 at 04:13:57PM +0800, James wrote:
virTimeFieldsThenRaw will never return negative result, so I clean up the related meaningless judgements to make it better. Signed-off-by: James <james.wangyufei@xxxxxxxxxx> --- src/util/virtime.c | 23 ++++++++--------------- src/util/virtime.h | 8 ++++---- tests/virtimetest.c | 3 +-- 3 files changed, 13 insertions(+), 21 deletions(-) diff --git a/src/util/virtime.c b/src/util/virtime.c index 2a91ea5..a49e287 100644 --- a/src/util/virtime.c +++ b/src/util/virtime.c @@ -94,7 +94,8 @@ int virTimeFieldsNowRaw(struct tm *fields) if (virTimeMillisNowRaw(&now) < 0) return -1; - return virTimeFieldsThenRaw(now, fields); + virTimeFieldsThenRaw(now, fields); + return 0; } @@ -121,9 +122,8 @@ const unsigned short int __mon_yday[2][13] = { * Converts the timestamp @when into broken-down field format. * Time time is always in UTC * - * Returns 0 on success, -1 on error with errno set */ -int virTimeFieldsThenRaw(unsigned long long when, struct tm *fields) +void virTimeFieldsThenRaw(unsigned long long when, struct tm *fields)
Well, it doesn't need to be "Raw" since there is no other variant.
{ /* This code is taken from GLibC under terms of LGPLv2+ */ long int days, rem, y; @@ -171,7 +171,6 @@ int virTimeFieldsThenRaw(unsigned long long when, struct tm *fields) days -= ip[y]; fields->tm_mon = y; fields->tm_mday = days + 1; - return 0; } @@ -209,8 +208,7 @@ int virTimeStringThenRaw(unsigned long long when, char *buf) { struct tm fields; - if (virTimeFieldsThenRaw(when, &fields) < 0) - return -1; + virTimeFieldsThenRaw(when, &fields); fields.tm_year += 1900; fields.tm_mon += 1; @@ -264,7 +262,8 @@ int virTimeFieldsNow(struct tm *fields) if (virTimeMillisNow(&now) < 0) return -1; - return virTimeFieldsThen(now, fields); + virTimeFieldsThen(now, fields); + return 0; } @@ -276,16 +275,10 @@ int virTimeFieldsNow(struct tm *fields) * Converts the timestamp @when into broken-down field format. * Time time is always in UTC * - * Returns 0 on success, -1 on error with error reported */ -int virTimeFieldsThen(unsigned long long when, struct tm *fields) +void virTimeFieldsThen(unsigned long long when, struct tm *fields) { - if (virTimeFieldsThenRaw(when, fields) < 0) { - virReportSystemError(errno, "%s", - _("Unable to break out time format")); - return -1; - } - return 0; + virTimeFieldsThenRaw(when, fields); } diff --git a/src/util/virtime.h b/src/util/virtime.h index 25332db..f9432da 100644 --- a/src/util/virtime.h +++ b/src/util/virtime.h @@ -43,8 +43,8 @@ int virTimeMillisNowRaw(unsigned long long *now) ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK; int virTimeFieldsNowRaw(struct tm *fields) ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK; -int virTimeFieldsThenRaw(unsigned long long when, struct tm *fields) - ATTRIBUTE_NONNULL(2) ATTRIBUTE_RETURN_CHECK; +void virTimeFieldsThenRaw(unsigned long long when, struct tm *fields) + ATTRIBUTE_NONNULL(2);
And it doesn't really go with the comment above these (that's not visible here).
int virTimeStringNowRaw(char *buf) ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK; int virTimeStringThenRaw(unsigned long long when, char *buf) @@ -57,8 +57,8 @@ int virTimeMillisNow(unsigned long long *now) ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK; int virTimeFieldsNow(struct tm *fields) ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK; -int virTimeFieldsThen(unsigned long long when, struct tm *fields) - ATTRIBUTE_NONNULL(2) ATTRIBUTE_RETURN_CHECK; +void virTimeFieldsThen(unsigned long long when, struct tm *fields) + ATTRIBUTE_NONNULL(2);
Same for this one. But these are just a tiny thing, so I fixed them up and pushed (with the following diff: diff --git i/src/libvirt_private.syms w/src/libvirt_private.syms index 51504d1..b1fb7c9 100644 --- i/src/libvirt_private.syms +++ w/src/libvirt_private.syms @@ -2032,7 +2032,6 @@ virThreadPoolSendJob; virTimeFieldsNow; virTimeFieldsNowRaw; virTimeFieldsThen; -virTimeFieldsThenRaw; virTimeLocalOffsetFromUTC; virTimeMillisNow; virTimeMillisNowRaw; diff --git i/src/util/virtime.c w/src/util/virtime.c index a49e287..9fefb67 100644 --- i/src/util/virtime.c +++ w/src/util/virtime.c @@ -94,7 +94,8 @@ int virTimeFieldsNowRaw(struct tm *fields) if (virTimeMillisNowRaw(&now) < 0) return -1; - virTimeFieldsThenRaw(now, fields); + virTimeFieldsThen(now, fields); + return 0; } @@ -115,7 +116,7 @@ const unsigned short int __mon_yday[2][13] = { ((y) % 4 == 0 && ((y) % 100 != 0 || (y) % 400 == 0)) /** - * virTimeFieldsThenRaw: + * virTimeFieldsThen: * @when: the time to convert in milliseconds * @fields: filled with time @when fields * @@ -123,7 +124,7 @@ const unsigned short int __mon_yday[2][13] = { * Time time is always in UTC * */ -void virTimeFieldsThenRaw(unsigned long long when, struct tm *fields) +void virTimeFieldsThen(unsigned long long when, struct tm *fields) { /* This code is taken from GLibC under terms of LGPLv2+ */ long int days, rem, y; @@ -208,7 +209,7 @@ int virTimeStringThenRaw(unsigned long long when, char *buf) { struct tm fields; - virTimeFieldsThenRaw(when, &fields); + virTimeFieldsThen(when, &fields); fields.tm_year += 1900; fields.tm_mon += 1; @@ -268,21 +269,6 @@ int virTimeFieldsNow(struct tm *fields) /** - * virTimeFieldsThen: - * @when: the time to convert in milliseconds - * @fields: filled with time @when fields - * - * Converts the timestamp @when into broken-down field format. - * Time time is always in UTC - * - */ -void virTimeFieldsThen(unsigned long long when, struct tm *fields) -{ - virTimeFieldsThenRaw(when, fields); -} - - -/** * virTimeStringNow: * * Creates a string containing a formatted timestamp diff --git i/src/util/virtime.h w/src/util/virtime.h index f9432da..8ebad38 100644 --- i/src/util/virtime.h +++ w/src/util/virtime.h @@ -37,14 +37,15 @@ (4 + 1 + 2 + 1 + 2 + 1 + 2 + 1 + 2 + 1 + 2 + 1 + 3 + 5 + 1) /* Yr Mon Day Hour Min Sec Ms TZ NULL */ +void virTimeFieldsThen(unsigned long long when, struct tm *fields) + ATTRIBUTE_NONNULL(2); + /* These APIs are async signal safe and return -1, setting * errno on failure */ int virTimeMillisNowRaw(unsigned long long *now) ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK; int virTimeFieldsNowRaw(struct tm *fields) ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK; -void virTimeFieldsThenRaw(unsigned long long when, struct tm *fields) - ATTRIBUTE_NONNULL(2); int virTimeStringNowRaw(char *buf) ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK; int virTimeStringThenRaw(unsigned long long when, char *buf) @@ -57,8 +58,6 @@ int virTimeMillisNow(unsigned long long *now) ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK; int virTimeFieldsNow(struct tm *fields) ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK; -void virTimeFieldsThen(unsigned long long when, struct tm *fields) - ATTRIBUTE_NONNULL(2); char *virTimeStringNow(void); char *virTimeStringThen(unsigned long long when); -- Martin
Attachment:
signature.asc
Description: Digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list