diff options
author | unknown <bell@sanja.is.com.ua> | 2004-05-11 23:23:49 +0300 |
---|---|---|
committer | unknown <bell@sanja.is.com.ua> | 2004-05-11 23:23:49 +0300 |
commit | e66b74059812d5b7fc898fc370166c878fd635ed (patch) | |
tree | 4a14eff8f720b5252a8bce7d5b88155fd0dabffb /mysys/mf_getdate.c | |
parent | d7938b9fef9e67145d6beeef65ae6e316fc01e07 (diff) | |
download | mariadb-git-e66b74059812d5b7fc898fc370166c878fd635ed.tar.gz |
file parser for new .frm
include/my_sys.h:
names for get_date format flags
include/mysqld_error.h:
error of parser
libmysqld/Makefile.am:
parser file added
mysys/mf_getdate.c:
function comment for get_date()
2 new flags added
names for get_date format flags
sql/Makefile.am:
parser file added
sql/mysql_priv.h:
parser file added
sql/share/czech/errmsg.txt:
file parser errors
sql/share/danish/errmsg.txt:
file parser errors
sql/share/dutch/errmsg.txt:
file parser errors
sql/share/english/errmsg.txt:
file parser errors
sql/share/estonian/errmsg.txt:
file parser errors
sql/share/french/errmsg.txt:
file parser errors
sql/share/german/errmsg.txt:
file parser errors
sql/share/greek/errmsg.txt:
file parser errors
sql/share/hungarian/errmsg.txt:
file parser errors
sql/share/italian/errmsg.txt:
file parser errors
sql/share/japanese/errmsg.txt:
file parser errors
sql/share/korean/errmsg.txt:
file parser errors
sql/share/norwegian-ny/errmsg.txt:
file parser errors
sql/share/norwegian/errmsg.txt:
file parser errors
sql/share/polish/errmsg.txt:
file parser errors
sql/share/portuguese/errmsg.txt:
file parser errors
sql/share/romanian/errmsg.txt:
file parser errors
sql/share/russian/errmsg.txt:
file parser errors
sql/share/serbian/errmsg.txt:
file parser errors
sql/share/slovak/errmsg.txt:
file parser errors
sql/share/spanish/errmsg.txt:
file parser errors
sql/share/swedish/errmsg.txt:
file parser errors
sql/share/ukrainian/errmsg.txt:
file parser errors
BitKeeper/etc/ignore:
Added libmysqld/parse_file.cc to the ignore list
Diffstat (limited to 'mysys/mf_getdate.c')
-rw-r--r-- | mysys/mf_getdate.c | 42 |
1 files changed, 30 insertions, 12 deletions
diff --git a/mysys/mf_getdate.c b/mysys/mf_getdate.c index 189d43e782a..b12e68cc1f9 100644 --- a/mysys/mf_getdate.c +++ b/mysys/mf_getdate.c @@ -19,11 +19,20 @@ #include "mysys_priv.h" #include <m_string.h> - /* - If flag & 1 Return date and time - If flag & 2 Return short date format YYMMDD - if flag & 4 Return time in HHMMDD format. - */ +/* + get date as string + + SYNOPSIS + get_date() + to - string where date will be written + flag - format of date: + If flag & GETDATE_TIME Return date and time + If flag & GETDATE_SHORT_DATE Return short date format YYMMDD + If flag & GETDATE_HHMMSSTIME Return time in HHMMDD format. + If flag & GETDATE_GMT Date/time in GMT + If flag & GETDATE_FIXEDLENGTH Return fixed length date/time + date - for conversion +*/ void get_date(register my_string to, int flag, time_t date) @@ -36,27 +45,36 @@ void get_date(register my_string to, int flag, time_t date) skr=date ? (time_t) date : time((time_t*) 0); #if defined(HAVE_LOCALTIME_R) && defined(_REENTRANT) - localtime_r(&skr,&tm_tmp); + if (flag & GETDATE_GMT) + localtime_r(&skr,&tm_tmp); + else + gmtime_r(&skr,&tm_tmp); start_time= &tm_tmp; #else - start_time=localtime(&skr); + if (flag & GETDATE_GMT) + start_time= localtime(&skr); + else + gmtime(&skr,&tm_tmp); #endif - if (flag & 2) + if (flag & GETDATE_SHORT_DATE) sprintf(to,"%02d%02d%02d", start_time->tm_year % 100, start_time->tm_mon+1, start_time->tm_mday); else - sprintf(to,"%d-%02d-%02d", + sprintf(to, ((flag & GETDATE_FIXEDLENGTH) ? + "%4d-%02d-%02d" : "%d-%02d-%02d"), start_time->tm_year+1900, start_time->tm_mon+1, start_time->tm_mday); - if (flag & 1) - sprintf(strend(to)," %2d:%02d:%02d", + if (flag & GETDATE_DATE_TIME) + sprintf(strend(to), + ((flag & GETDATE_FIXEDLENGTH) ? + " %02d:%02d:%02d" : " %2d:%02d:%02d"), start_time->tm_hour, start_time->tm_min, start_time->tm_sec); - else if (flag & 4) + else if (flag & GETDATE_HHMMSSTIME) sprintf(strend(to),"%02d%02d%02d", start_time->tm_hour, start_time->tm_min, |