Some

C++ comments cleanup
parent dacf75a4
......@@ -70,3 +70,4 @@ zak@linux.local
salle@geopard.(none)
walrus@mysql.com
zgreant@mysql.com
salle@geopard.online.bg
......@@ -64,10 +64,10 @@
#define NO_FCNTL_NONBLOCK
#define EFBIG E2BIG
//#define ENFILE EMFILE
//#define ENAMETOOLONG (EOS2ERR+2)
//#define ETIMEDOUT 145
//#define EPIPE 146
/*#define ENFILE EMFILE */
/*#define ENAMETOOLONG (EOS2ERR+2) */
/*#define ETIMEDOUT 145 */
/*#define EPIPE 146 */
#define EROFS 147
#define sleep(A) DosSleep((A)*1000)
......@@ -129,7 +129,7 @@ typedef unsigned long long os_off_t;
#define HAVE_ALLOCA 1
/* Define if you have <alloca.h> and it should be used (not on Ultrix). */
//#define HAVE_ALLOCA_H 1
/* #define HAVE_ALLOCA_H 1 */
/* Define if you don't have vprintf but do have _doprnt. */
/* #undef HAVE_DOPRNT */
......@@ -145,7 +145,7 @@ typedef unsigned long long os_off_t;
#define HAVE_ST_RDEV 1
/* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
//#define HAVE_SYS_WAIT_H 1
/* #define HAVE_SYS_WAIT_H 1 */
/* Define if you don't have tm_zone but do have the external array
tzname. */
......@@ -216,7 +216,7 @@ typedef unsigned long long os_off_t;
#define HAVE_BOOL 1
/* Have berkeley db installed */
//#define HAVE_BERKELEY_DB 1
/* #define HAVE_BERKELEY_DB 1 */
/* DSB style signals ? */
/* #undef HAVE_BSD_SIGNALS */
......@@ -395,7 +395,7 @@ typedef unsigned long long os_off_t;
#define HAVE_CHSIZE 1
/* Define if you have the cuserid function. */
//#define HAVE_CUSERID 1
/* #define HAVE_CUSERID 1 */
/* Define if you have the dlerror function. */
#define HAVE_DLERROR 1
......@@ -407,7 +407,7 @@ typedef unsigned long long os_off_t;
/* #undef HAVE_FCHMOD */
/* Define if you have the fcntl function. */
//#define HAVE_FCNTL 1
/* #define HAVE_FCNTL 1 */
/* Define if you have the fconvert function. */
/* #undef HAVE_FCONVERT */
......@@ -425,7 +425,7 @@ typedef unsigned long long os_off_t;
/* #undef HAVE_FSEEKO */
/* Define if you have the ftruncate function. */
//#define HAVE_FTRUNCATE 1
/* #define HAVE_FTRUNCATE 1 */
/* Define if you have the getcwd function. */
#define HAVE_GETCWD 1
......@@ -440,16 +440,16 @@ typedef unsigned long long os_off_t;
#define HAVE_GETPAGESIZE 1
/* Define if you have the getpass function. */
//#define HAVE_GETPASS 1
/*#define HAVE_GETPASS 1 */
/* Define if you have the getpassphrase function. */
/* #undef HAVE_GETPASSPHRASE */
/* Define if you have the getpwnam function. */
//#define HAVE_GETPWNAM 1
/* #define HAVE_GETPWNAM 1 */
/* Define if you have the getpwuid function. */
//#define HAVE_GETPWUID 1
/* #define HAVE_GETPWUID 1 */
/* Define if you have the getrlimit function. */
/* #undef HAVE_GETRLIMIT */
......@@ -491,7 +491,7 @@ typedef unsigned long long os_off_t;
#define HAVE_MEMMOVE 1
/* Define if you have the mkstemp function. */
//#define HAVE_MKSTEMP 1
/* #define HAVE_MKSTEMP 1 */
/* Define if you have the mlockall function. */
/* #undef HAVE_MLOCKALL */
......@@ -581,7 +581,7 @@ typedef unsigned long long os_off_t;
/* #undef HAVE_SIGTHREADMASK */
/* Define if you have the snprintf function. */
//#define HAVE_SNPRINTF 1
/* #define HAVE_SNPRINTF 1 */
/* Define if you have the socket function. */
#define HAVE_SOCKET 1
......@@ -635,7 +635,7 @@ typedef unsigned long long os_off_t;
/* #undef HAVE_VIDATTR */
/* Define if you have the <alloca.h> header file. */
//#define HAVE_ALLOCA_H 1
/* #define HAVE_ALLOCA_H 1 */
/* Define if you have the <arpa/inet.h> header file. */
#define HAVE_ARPA_INET_H 1
......@@ -647,10 +647,10 @@ typedef unsigned long long os_off_t;
#define HAVE_CRYPT_H 1
/* Define if you have the <curses.h> header file. */
//#define HAVE_CURSES_H 1
/* #define HAVE_CURSES_H 1 */
/* Define if you have the <dirent.h> header file. */
//#define HAVE_DIRENT_H 1
/* #define HAVE_DIRENT_H 1 */
/* Define if you have the <fcntl.h> header file. */
#define HAVE_FCNTL_H 1
......@@ -662,7 +662,7 @@ typedef unsigned long long os_off_t;
/* #undef HAVE_FLOATINGPOINT_H */
/* Define if you have the <grp.h> header file. */
//#define HAVE_GRP_H 1
/* #define HAVE_GRP_H 1 */
/* Define if you have the <ieeefp.h> header file. */
/* #undef HAVE_IEEEFP_H */
......@@ -686,7 +686,7 @@ typedef unsigned long long os_off_t;
/* #undef HAVE_PATHS_H */
/* Define if you have the <pwd.h> header file. */
//#define HAVE_PWD_H 1
/* #define HAVE_PWD_H 1 */
/* Define if you have the <sched.h> header file. */
/* #undef HAVE_SCHED_H */
......@@ -707,16 +707,16 @@ typedef unsigned long long os_off_t;
#define HAVE_STRING_H 1
/* Define if you have the <strings.h> header file. */
//#define HAVE_STRINGS_H 1
/* #define HAVE_STRINGS_H 1 */
/* Define if you have the <synch.h> header file. */
/* #undef HAVE_SYNCH_H */
/* Define if you have the <sys/dir.h> header file. */
//#define HAVE_SYS_DIR_H 1
/* #define HAVE_SYS_DIR_H 1 */
/* Define if you have the <sys/file.h> header file. */
//#define HAVE_SYS_FILE_H 1
/* #define HAVE_SYS_FILE_H 1 */
/* Define if you have the <sys/ioctl.h> header file. */
#define HAVE_SYS_IOCTL_H 1
......@@ -758,7 +758,7 @@ typedef unsigned long long os_off_t;
/* #undef HAVE_SYS_VADVISE_H */
/* Define if you have the <sys/wait.h> header file. */
//#define HAVE_SYS_WAIT_H 1
/* #define HAVE_SYS_WAIT_H 1 */
/* Define if you have the <term.h> header file. */
/* #undef HAVE_TERM_H */
......@@ -767,13 +767,13 @@ typedef unsigned long long os_off_t;
/* #undef HAVE_TERMBITS_H */
/* Define if you have the <termcap.h> header file. */
//#define HAVE_TERMCAP_H 1
/* #define HAVE_TERMCAP_H 1 */
/* Define if you have the <termio.h> header file. */
//#define HAVE_TERMIO_H 1
/* /#define HAVE_TERMIO_H 1 */
/* Define if you have the <termios.h> header file. */
//#define HAVE_TERMIOS_H 1
/* #define HAVE_TERMIOS_H 1 */
/* Define if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H 1
......@@ -826,4 +826,4 @@ typedef unsigned long long os_off_t;
/* Define for large files, on AIX-style hosts. */
/* #undef _LARGE_FILES */
#endif // __CONFIG_OS2_H__
#endif /* __CONFIG_OS2_H__ */
......@@ -20,8 +20,8 @@
break;
case OPT_SSL_KEY:
opt_use_ssl = 1; /* true */
//QQ to be removed??? my_free(opt_ssl_key, MYF(MY_ALLOW_ZERO_PTR));
//QQ to be removed??? opt_ssl_key = my_strdup(optarg, MYF(0));
/* QQ to be removed??? my_free(opt_ssl_key, MYF(MY_ALLOW_ZERO_PTR)); */
/* QQ to be removed??? opt_ssl_key = my_strdup(optarg, MYF(0)); */
break;
case OPT_SSL_CERT:
opt_use_ssl = 1; /* true */
......
......@@ -122,10 +122,10 @@ File create_temp_file(char *to, const char *dir, const char *prefix,
dir=to;
}
#ifdef OS2
// changing environ variable doesn't work with VACPP
/* changing environ variable doesn't work with VACPP */
char buffer[256];
sprintf( buffer, "TMP=%s", dir);
// remove ending backslash
/* remove ending backslash */
if (buffer[strlen(buffer)-1] == '\\')
buffer[strlen(buffer)-1] = '\0';
putenv( buffer);
......
......@@ -37,20 +37,20 @@ public:
static void *operator new(size_t size) {return (void*) sql_alloc((uint) size); }
static void operator delete(void *ptr_arg, size_t size) {} /*lint -e715 */
char *ptr; // Position to field in record
uchar *null_ptr; // Byte where null_bit is
struct st_table *table; // Pointer for table
char *ptr; /* Position to field in record */
uchar *null_ptr; /* Byte where null_bit is */
struct st_table *table; /* Pointer for table */
const char *table_name,*field_name;
ulong query_id; // For quick test of used fields
// Field is part of the following keys
ulong query_id; /* For quick test of used fields */
/* Field is part of the following keys */
key_map key_start,part_of_key,part_of_sortkey;
enum utype { NONE,DATE,SHIELD,NOEMPTY,CASEUP,PNR,BGNR,PGNR,YES,NO,REL,
CHECK,EMPTY,UNKNOWN_FIELD,CASEDN,NEXT_NUMBER,INTERVAL_FIELD,
BIT_FIELD, TIMESTAMP_FIELD,CAPITALIZE,BLOB_FIELD};
utype unireg_check;
uint32 field_length; // Length of field
uint32 field_length; /* Length of field */
uint16 flags;
uchar null_bit; // Bit used to test null bit
uchar null_bit; /* Bit used to test null bit */
Field(char *ptr_arg,uint32 length_arg,uchar *null_ptr_arg,uchar null_bit_arg,
utype unireg_check_arg, const char *field_name_arg,
......@@ -90,11 +90,12 @@ public:
{ return cmp(ptr,(char*) str); }
virtual uint decimals() const { return 0; }
virtual void sql_type(String &str) const =0;
// Caller beware: sql_type can change str.Ptr, so check
// ptr() to see if it changed if you are using your own buffer
// in str and restore it with set() if needed
virtual uint size_of() const =0; // For new field
/*
Caller beware: sql_type can change str.Ptr, so check
ptr() to see if it changed if you are using your own buffer
in str and restore it with set() if needed
*/
virtual uint size_of() const =0; /* For new field */
inline bool is_null(uint row_offset=0)
{ return null_ptr ? (null_ptr[row_offset] & null_bit ? 1 : 0) : table->null_row; }
inline bool is_real_null(uint row_offset=0)
......@@ -186,7 +187,7 @@ public:
{ return cmp(a,b); }
virtual int pack_cmp(const char *b, uint key_length_arg)
{ return cmp(ptr,b); }
uint offset(); // Should be inline ...
uint offset(); /* Should be inline ... */
void copy_from_tmp(int offset);
uint fill_cache_field(struct st_cache_field *copy);
virtual bool get_date(TIME *ltime,bool fuzzydate);
......@@ -211,7 +212,7 @@ public:
class Field_num :public Field {
public:
const uint8 dec;
bool zerofill,unsigned_flag; // Purify cannot handle bit fields
bool zerofill,unsigned_flag; /* Purify cannot handle bit fields */
Field_num(char *ptr_arg,uint32 len_arg, uchar *null_ptr_arg,
uchar null_bit_arg, utype unireg_check_arg,
const char *field_name_arg,
......@@ -823,7 +824,7 @@ public:
class Field_blob :public Field_str {
uint packlength;
String value; // For temporaries
String value; /* For temporaries */
bool binary_flag;
public:
Field_blob(char *ptr_arg, uchar *null_ptr_arg, uchar null_bit_arg,
......@@ -975,23 +976,23 @@ public:
/*
** Create field class for CREATE TABLE
Create field class for CREATE TABLE
*/
class create_field :public Sql_alloc {
public:
const char *field_name;
const char *change; // If done with alter table
const char *after; // Put column after this one
Item *def; // Default value
const char *change; /* If done with alter table */
const char *after; /* Put column after this one */
Item *def; /* Default value */
enum enum_field_types sql_type;
uint32 length;
uint decimals,flags,pack_length;
Field::utype unireg_check;
TYPELIB *interval; // Which interval to use
Field *field; // For alter table
TYPELIB *interval; /* Which interval to use */
Field *field; /* For alter table */
uint8 row,col,sc_length,interval_id; // For rea_create_table
uint8 row,col,sc_length,interval_id; /* For rea_create_table */
uint offset,pack_flag;
create_field() :after(0) {}
create_field(Field *field, Field *orig_field);
......@@ -999,7 +1000,7 @@ public:
/*
** A class for sending info to the client
A class for sending info to the client
*/
class Send_field {
......@@ -1024,14 +1025,14 @@ public:
uint from_bit,to_bit;
uint from_length,to_length;
Field *from_field,*to_field;
String tmp; // For items
String tmp; /* For items */
Copy_field() {}
~Copy_field() {}
void set(Field *to,Field *from,bool save); // Field to field
void set(char *to,Field *from); // Field to string
void set(Field *to,Field *from,bool save); /* Field to field */
void set(char *to,Field *from); /* Field to string */
void (*do_copy)(Copy_field *);
void (*do_copy2)(Copy_field *); // Used to handle null values
void (*do_copy2)(Copy_field *); /* Used to handle null values */
};
......@@ -1052,18 +1053,18 @@ bool test_if_int(const char *str,int length);
*/
#define FIELDFLAG_DECIMAL 1
#define FIELDFLAG_BINARY 1 // Shares same flag
#define FIELDFLAG_BINARY 1 /*Shares same flag */
#define FIELDFLAG_NUMBER 2
#define FIELDFLAG_ZEROFILL 4
#define FIELDFLAG_PACK 120 // Bits used for packing
#define FIELDFLAG_PACK 120 /* Bits used for packing */
#define FIELDFLAG_INTERVAL 256
#define FIELDFLAG_BITFIELD 512 // mangled with dec!
#define FIELDFLAG_BLOB 1024 // mangled with dec!
#define FIELDFLAG_BITFIELD 512 /* mangled with dec! */
#define FIELDFLAG_BLOB 1024 /* mangled with dec! */
#define FIELDFLAG_LEFT_FULLSCREEN 8192
#define FIELDFLAG_RIGHT_FULLSCREEN 16384
#define FIELDFLAG_FORMAT_NUMBER 16384 // predit: ###,,## in output
#define FIELDFLAG_SUM ((uint) 32768)// predit: +#fieldflag
#define FIELDFLAG_MAYBE_NULL ((uint) 32768)// sql
#define FIELDFLAG_FORMAT_NUMBER 16384 /* predit: ###,,## in output */
#define FIELDFLAG_SUM ((uint) 32768)/* predit: +#fieldflag */
#define FIELDFLAG_MAYBE_NULL ((uint) 32768)/* sql */
#define FIELDFLAG_PACK_SHIFT 3
#define FIELDFLAG_DEC_SHIFT 8
#define FIELDFLAG_MAX_DEC 31
......
......@@ -24,11 +24,11 @@
#include <myisam.h>
#include <ft_global.h>
#define HA_RECOVER_NONE 0 // No automatic recover
#define HA_RECOVER_DEFAULT 1 // Automatic recover active
#define HA_RECOVER_BACKUP 2 // Make a backupfile on recover
#define HA_RECOVER_FORCE 4 // Recover even if we loose rows
#define HA_RECOVER_QUICK 8 // Don't check rows in data file
#define HA_RECOVER_NONE 0 /* No automatic recover */
#define HA_RECOVER_DEFAULT 1 /* Automatic recover active */
#define HA_RECOVER_BACKUP 2 /* Make a backupfile on recover */
#define HA_RECOVER_FORCE 4 /* Recover even if we loose rows */
#define HA_RECOVER_QUICK 8 /* Don't check rows in data file */
extern ulong myisam_sort_buffer_size;
extern TYPELIB myisam_recover_typelib;
......
......@@ -29,7 +29,7 @@
#include <my_bitmap.h>
#ifdef __EMX__
#undef write // remove pthread.h macro definition for EMX
#undef write /* remove pthread.h macro definition for EMX */
#endif
typedef ulong table_map; /* Used for table bits in join */
......
......@@ -77,11 +77,11 @@ typedef struct st_relay_log_info
cur_log_fd - file descriptor of the current read relay log
*/
File info_fd,cur_log_fd;
// name of current read relay log
/* name of current read relay log */
char relay_log_name[FN_REFLEN];
// master log name corresponding to current read position
/* master log name corresponding to current read position */
char master_log_name[FN_REFLEN];
// original log position of last processed event
/* original log position of last processed event */
volatile my_off_t master_log_pos;
/*
......@@ -92,9 +92,9 @@ typedef struct st_relay_log_info
LOG_INFO linfo;
IO_CACHE cache_buf,*cur_log;
/*** The following variables are safe to read any time ***/
/* The following variables are safe to read any time */
// IO_CACHE of the info file - set only during init or end
/* IO_CACHE of the info file - set only during init or end */
IO_CACHE info_file;
/*
......@@ -117,7 +117,7 @@ typedef struct st_relay_log_info
*/
pthread_cond_t start_cond, stop_cond, data_cond;
// parent master info structure
/* parent master info structure */
struct st_master_info *mi;
/*
......@@ -153,7 +153,7 @@ typedef struct st_relay_log_info
#endif
char last_slave_error[MAX_SLAVE_ERRMSG];
// if not set, the value of other members of the structure are undefined
/* if not set, the value of other members of the structure are undefined */
bool inited;
volatile bool abort_slave, slave_running;
bool log_pos_current;
......@@ -189,7 +189,7 @@ typedef struct st_relay_log_info
{
pending += val;
}
// TODO: this probably needs to be fixed
/* TODO: this probably needs to be fixed */
inline void inc_pos(ulonglong val, ulonglong log_pos, bool skip_lock=0)
{
if (!skip_lock)
......@@ -254,7 +254,7 @@ typedef struct st_master_info
File fd;
IO_CACHE file;
// the variables below are needed because we can change masters on the fly
/* the variables below are needed because we can change masters on the fly */
char host[HOSTNAME_LENGTH+1];
char user[USERNAME_LENGTH+1];
char password[HASH_PASSWORD_LENGTH+1];
......@@ -262,7 +262,7 @@ typedef struct st_master_info
pthread_cond_t data_cond,start_cond,stop_cond;
THD *io_thd;
MYSQL* mysql;
uint32 file_id; // for 3.23 load data infile
uint32 file_id; /* for 3.23 load data infile */
RELAY_LOG_INFO rli;
uint port;
uint connect_retry;
......@@ -270,7 +270,7 @@ typedef struct st_master_info
int events_till_abort;
#endif
bool inited;
bool old_format; // master binlog is in 3.23 format
bool old_format; /* master binlog is in 3.23 format */
volatile bool abort_slave, slave_running;
bool ignore_stop_event;
......@@ -352,18 +352,18 @@ int start_slave_thread(pthread_handler h_func, pthread_mutex_t* start_lock,
volatile bool* slave_running,
MASTER_INFO* mi);
// If fd is -1, dump to NET
/* If fd is -1, dump to NET */
int mysql_table_dump(THD* thd, const char* db,
const char* tbl_name, int fd = -1);
// retrieve non-exitent table from master
/* retrieve non-exitent table from master */
int fetch_master_table(THD* thd, const char* db_name, const char* table_name,
MASTER_INFO* mi, MYSQL* mysql);
int show_master_info(THD* thd, MASTER_INFO* mi);
int show_binlog_info(THD* thd);
// See if the query uses any tables that should not be replicated
/* See if the query uses any tables that should not be replicated */
int tables_ok(THD* thd, TABLE_LIST* tables);
/*
......@@ -382,7 +382,7 @@ int check_expected_error(THD* thd, RELAY_LOG_INFO* rli, int error_code);
void skip_load_data_infile(NET* net);
void slave_print_error(RELAY_LOG_INFO* rli,int err_code, const char* msg, ...);
void end_slave(); // clean up
void end_slave(); /* clean up */
int init_master_info(MASTER_INFO* mi, const char* master_info_fname,
const char* slave_info_fname);
void end_master_info(MASTER_INFO* mi);
......@@ -400,7 +400,7 @@ extern bool opt_log_slave_updates ;
pthread_handler_decl(handle_slave_io,arg);
pthread_handler_decl(handle_slave_sql,arg);
extern bool volatile abort_loop;
extern MASTER_INFO main_mi, *active_mi; // active_mi for multi-master
extern MASTER_INFO main_mi, *active_mi; /* active_mi for multi-master */
extern volatile int active_mi_in_use;
extern LIST master_list;
extern HASH replicate_do_table, replicate_ignore_table;
......@@ -411,7 +411,7 @@ extern bool table_rules_on;
extern int disconnect_slave_event_count, abort_slave_event_count ;
// the master variables are defaults read from my.cnf or command line
/* the master variables are defaults read from my.cnf or command line */
extern uint master_port, master_connect_retry, report_port;
extern my_string master_user, master_password, master_host,
master_info_file, relay_log_info_file, report_user, report_host,
......
......@@ -145,7 +145,7 @@ terribly wrong...\n");
fprintf(stderr, "Warning: Alpha stacks are difficult -\
will be taking some wild guesses, stack trace may be incorrect or \
terminate abruptly\n");
// On Alpha, we need to get pc
/* On Alpha, we need to get pc */
__asm __volatile__ ("bsr %0, do_next; do_next: "
:"=r"(pc)
:"r"(pc));
......@@ -210,8 +210,8 @@ resolve it\n");
void write_core(int sig)
{
signal(sig, SIG_DFL);
if (fork() != 0) exit(1); // Abort main program
// Core will be written at exit
if (fork() != 0) exit(1); /* Abort main program */
/* Core will be written at exit */
}
#else
void write_core(int sig)
......
......@@ -50,14 +50,14 @@ typedef struct st_keyfile_info { /* used with ha_info() */
typedef struct st_key_part_info { /* Info about a key part */
Field *field;
uint offset; /* offset in record (from 0) */
uint null_offset; // Offset to null_bit in record
uint null_offset; /* Offset to null_bit in record */
uint16 length; /* Length of key_part */
uint16 store_length;
uint16 key_type;
uint16 fieldnr; /* Fieldnum in UNIREG */
uint8 key_part_flag; /* 0 or HA_REVERSE_SORT */
uint8 type;
uint8 null_bit; // Position to null_bit
uint8 null_bit; /* Position to null_bit */
} KEY_PART_INFO ;
......
......@@ -84,7 +84,7 @@ long my_gmt_sec(TIME *t)
/* Get difference in days */
int days= t->day - l_time->tm_mday;
if (days < -1)
days= 1; // Month has wrapped
days= 1; /* Month has wrapped */
else if (days > 1)
days= -1;
diff=(3600L*(long) (days*24+((int) t->hour - (int) l_time->tm_hour)) +
......@@ -100,15 +100,15 @@ long my_gmt_sec(TIME *t)
{
int days= t->day - l_time->tm_mday;
if (days < -1)
days=1; // Month has wrapped
days=1; /* Month has wrapped */
else if (days > 1)
days= -1;
diff=(3600L*(long) (days*24+((int) t->hour - (int) l_time->tm_hour))+
(long) (60*((int) t->minute - (int) l_time->tm_min)));
if (diff == 3600)
tmp+=3600 - t->minute*60 - t->second; // Move to next hour
tmp+=3600 - t->minute*60 - t->second; /* Move to next hour */
else if (diff == -3600)
tmp-=t->minute*60 + t->second; // Move to next hour
tmp-=t->minute*60 + t->second; /* Move to next hour */
}
if ((my_time_zone >=0 ? my_time_zone: -my_time_zone) > 3600L*12)
my_time_zone=0; /* Wrong date */
......@@ -183,7 +183,7 @@ uint calc_week(TIME *l_time, bool with_year, bool sunday_first_day_of_week,
/* Last week of the previous year */
if (!with_year)
return 0;
with_year=0; // Don't check the week again
with_year=0; /* Don't check the week again */
(*year)--;
first_daynr-= (days=calc_days_in_year(*year));
weekday= (weekday + 53*7- days) % 7;
......@@ -198,7 +198,7 @@ uint calc_week(TIME *l_time, bool with_year, bool sunday_first_day_of_week,
/* Check if we are on the first week of the next year (or week 53) */
weekday= (weekday + calc_days_in_year(*year)) % 7;
if (weekday < 4)
{ // We are at first week on next year
{ /* We are at first week on next year */
(*year)++;
return 1;
}
......@@ -434,7 +434,7 @@ str_to_TIME(const char *str, uint length, TIME *l_time,bool fuzzy_date)
DBUG_ENTER("str_to_TIME");
DBUG_PRINT("enter",("str: %.*s",length,str));
for (; str != end && !isdigit(*str) ; str++) ; // Skip garbage
for (; str != end && !isdigit(*str) ; str++) ; /* Skip garbage */
if (str == end)
DBUG_RETURN(TIMESTAMP_NONE);
/*
......@@ -456,18 +456,18 @@ str_to_TIME(const char *str, uint length, TIME *l_time,bool fuzzy_date)
}
date[i]=tmp_value;
if (i == 2 && str != end && *str == 'T')
str++; // ISO8601: CCYYMMDDThhmmss
else if ( i != 5 ) // Skip inter-field delimiters
str++; /* ISO8601: CCYYMMDDThhmmss */
else if ( i != 5 ) /* Skip inter-field delimiters */
{
while (str != end && (ispunct(*str) || isspace(*str)))
{
// Only allow space between days and hours
/* Only allow space between days and hours */
if (isspace(*str) && i != 2)
DBUG_RETURN(TIMESTAMP_NONE);
str++;
}
}
field_length=1; // Rest fields can only be 2
field_length=1; /* Rest fields can only be 2 */
}
/* Handle second fractions */
if (i == 6 && (uint) (end-str) >= 2 && *str == '.' && isdigit(str[1]))
......@@ -572,9 +572,9 @@ bool str_to_time(const char *str,uint length,TIME *l_time)
/* Check first if this is a full TIMESTAMP */
if (length >= 12)
{ // Probably full timestamp
{ /* Probably full timestamp */
if (str_to_TIME(str,length,l_time,1) == TIMESTAMP_FULL)
return 0; // Was an ok timestamp
return 0; /* Was an ok timestamp */
}
/* Not a timestamp. Try to get this as a DAYS_TO_SECOND string */
......@@ -590,19 +590,19 @@ bool str_to_time(const char *str,uint length,TIME *l_time)
LINT_INIT(state);
found_days=found_hours=0;
if ((uint) (end-str) > 1 && (*str == ' ' && isdigit(str[1])))
{ // days !
{ /* days ! */
date[0]=value;
state=1; // Assume next is hours
state=1; /* Assume next is hours */
found_days=1;
str++; // Skip space;
str++; /* Skip space; */
}
else if ((end-str) > 1 && *str == ':' && isdigit(str[1]))
{
date[0]=0; // Assume we found hours
date[0]=0; /* Assume we found hours */
date[1]=value;
state=2;
found_hours=1;
str++; // skip ':'
str++; /* skip ':' */
}
else
{
......@@ -623,11 +623,11 @@ bool str_to_time(const char *str,uint length,TIME *l_time)
date[state++]=value;
if (state == 4 || (end-str) < 2 || *str != ':' || !isdigit(str[1]))
break;
str++; // Skip ':'
str++; /* Skip ':' */
}
if (state != 4)
{ // Not HH:MM:SS
{ /* Not HH:MM:SS */
/* Fix the date to assume that seconds was given */
if (!found_hours && !found_days)
{
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment