GetData millisec always zero
Monkey Forums/Monkey Bug Reports/GetData millisec always zero| 
 | ||
| When using it on GLFW, the millisec component of getdate is always zero. | 
| 
 | ||
| I wondered about this too and as it turns out the function in the glfw source returns 0. | 
| 
 | ||
| But this can't be right! I mean, shouldn't this be returning proper results? | 
| 
 | ||
| This is the date code in "gametarget.cpp": void BBGame::GetDate( Array<int> date ){
	int n=date.Length();
	if( n>0 ){
		time_t t=time( 0 );
		
#if _MSC_VER
		struct tm tii;
		struct tm *ti=&tii;
		localtime_s( ti,&t );
#else
		struct tm *ti=localtime( &t );
#endif
		date[0]=ti->tm_year+1900;
		if( n>1 ){ 
			date[1]=ti->tm_mon+1;
			if( n>2 ){
				date[2]=ti->tm_mday;
				if( n>3 ){
					date[3]=ti->tm_hour;
					if( n>4 ){
						date[4]=ti->tm_min;
						if( n>5 ){
							date[5]=ti->tm_sec;
							if( n>6 ){
								date[6]=0;
							}
						}
					}
				}
			}
		}
	}
}With date[6]=0, it will always be zero. Compared to the Flash gametarget.as: if( n>6 ){
	date[6]=t.getMilliseconds();
}Monkey uses ctime for cpp which is only precise to the second. | 
| 
 | ||
| one thing to note then:  Don't rely the millisecs number from GetDate() for adding entropy to the randomizer's seed if you're on desktop.  Using Millisecs() in combination with GetDate() should be slightly better | 
| 
 | ||
| I'm developing a clock app for one client (yes, there are people that pay for this!) and I was expecting different behavior on GLFW. This should be noted in the docs. |