X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fhelper%2Ftime_support.c;h=861889ec695fb54228166db3c01d7b0423c4ea75;hb=334a187e64121cb1f8bf6f07f5400e0e5ba8c0ff;hp=780eb96949e75804d26edd820235450830524faf;hpb=3e07e1cdfac63d5fb93260803d16e79f292dae73;p=fw%2Fopenocd diff --git a/src/helper/time_support.c b/src/helper/time_support.c index 780eb9694..861889ec6 100644 --- a/src/helper/time_support.c +++ b/src/helper/time_support.c @@ -19,9 +19,7 @@ * GNU General Public License for more details. * * * * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the * - * Free Software Foundation, Inc., * - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * + * along with this program. If not, see . * ***************************************************************************/ #ifdef HAVE_CONFIG_H @@ -64,6 +62,21 @@ int timeval_add_time(struct timeval *result, long sec, long usec) return 0; } +/* compare two timevals and return -1/0/+1 accordingly */ +int timeval_compare(const struct timeval *x, const struct timeval *y) +{ + if (x->tv_sec < y->tv_sec) + return -1; + else if (x->tv_sec > y->tv_sec) + return 1; + else if (x->tv_usec < y->tv_usec) + return -1; + else if (x->tv_usec > y->tv_usec) + return 1; + else + return 0; +} + int duration_start(struct duration *duration) { return gettimeofday(&duration->start, NULL); @@ -73,7 +86,7 @@ int duration_measure(struct duration *duration) { struct timeval end; int retval = gettimeofday(&end, NULL); - if (0 == retval) + if (retval == 0) timeval_subtract(&duration->elapsed, &end, &duration->start); return retval; }