26 lines
		
	
	
		
			461 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			461 B
		
	
	
	
		
			C
		
	
	
	
	
	
#include "time32.h"
 | 
						|
#include <sys/timeb.h>
 | 
						|
#include <errno.h>
 | 
						|
#include <stdint.h>
 | 
						|
 | 
						|
struct timeb32 {
 | 
						|
	int32_t time;
 | 
						|
	unsigned short millitm;
 | 
						|
	short timezone, dstflag;
 | 
						|
};
 | 
						|
 | 
						|
int __ftime32(struct timeb32 *tp)
 | 
						|
{
 | 
						|
	struct timeb tb;
 | 
						|
	if (ftime(&tb) < 0) return -1;
 | 
						|
	if (tb.time < INT32_MIN || tb.time > INT32_MAX) {
 | 
						|
		errno = EOVERFLOW;
 | 
						|
		return -1;
 | 
						|
	}
 | 
						|
	tp->time = tb.time;
 | 
						|
	tp->millitm = tb.millitm;
 | 
						|
	tp->timezone = tb.timezone;
 | 
						|
	tp->dstflag = tb.dstflag;
 | 
						|
	return 0;
 | 
						|
}
 |