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(a)huawei.com>
---
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