summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorunknown <msvensson@pilot.blaudden>2007-03-01 18:12:56 +0100
committerunknown <msvensson@pilot.blaudden>2007-03-01 18:12:56 +0100
commit4a9edcc32c7addea01e7e5b80e452939e7de07c7 (patch)
treedd839a6db9e2985054d2bc99faaafdc4440866fc /include
parentb9c36948f44b39cb2a9d4c80ea3bbb321ec1e045 (diff)
parent3616b5e3d574de6863cb9aaa6a642ba67401956b (diff)
downloadmariadb-git-4a9edcc32c7addea01e7e5b80e452939e7de07c7.tar.gz
Merge pilot.blaudden:/home/msvensson/mysql/mysql-5.0
into pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint BitKeeper/etc/ignore: auto-union client/mysqltest.c: Auto merged extra/comp_err.c: Auto merged include/my_time.h: Auto merged mysql-test/r/innodb.result: Auto merged mysql-test/r/mysqltest.result: Auto merged mysql-test/r/type_blob.result: Auto merged mysql-test/t/mysqltest.test: Auto merged sql/item.cc: Auto merged sql/item_cmpfunc.cc: Auto merged sql/item_cmpfunc.h: Auto merged sql/item_strfunc.cc: Auto merged sql/log.cc: Auto merged sql/mysql_priv.h: Auto merged sql/mysqld.cc: Auto merged sql/set_var.cc: Auto merged sql/sql_class.cc: Auto merged sql/sql_class.h: Auto merged sql/sql_load.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged sql/tztime.cc: Auto merged client/mysql_upgrade.c: Manual merge mysql-test/mysql-test-run.pl: Manual merge mysql-test/r/ctype_cp932.result: Manual merge mysql-test/r/mysqlbinlog.result: Manual merge mysql-test/t/ctype_cp932.test: Manual merge mysql-test/t/mysql.test: Manual merge mysql-test/t/mysqlbinlog.test: Manual merge
Diffstat (limited to 'include')
-rw-r--r--include/m_ctype.h2
-rw-r--r--include/my_dbug.h2
-rw-r--r--include/my_global.h19
-rw-r--r--include/my_pthread.h16
-rw-r--r--include/my_sys.h7
-rw-r--r--include/my_time.h10
-rw-r--r--include/mysql.h3
7 files changed, 39 insertions, 20 deletions
diff --git a/include/m_ctype.h b/include/m_ctype.h
index a8a395a3207..50a50b7ed12 100644
--- a/include/m_ctype.h
+++ b/include/m_ctype.h
@@ -90,7 +90,7 @@ typedef struct
{
uint beg;
uint end;
- uint mblen;
+ uint mb_len;
} my_match_t;
enum my_lex_states
diff --git a/include/my_dbug.h b/include/my_dbug.h
index a3591f0151a..31fd507ec73 100644
--- a/include/my_dbug.h
+++ b/include/my_dbug.h
@@ -74,6 +74,7 @@ extern void _db_unlock_file(void);
#define DBUG_ASSERT(A) assert(A)
#define DBUG_EXECUTE_IF(keyword,a1) \
{if (_db_on_) {if (_db_strict_keyword_ (keyword)) { a1 }}}
+#define IF_DBUG(A) A
#else /* No debugger */
#define DBUG_ENTER(a1)
@@ -98,6 +99,7 @@ extern void _db_unlock_file(void);
#define DBUG_OUTPUT(A)
#define DBUG_ASSERT(A) {}
#define DBUG_LEAVE
+#define IF_DBUG(A)
#endif
#ifdef __cplusplus
}
diff --git a/include/my_global.h b/include/my_global.h
index b91ff8a9e5b..21fe1ebc3cb 100644
--- a/include/my_global.h
+++ b/include/my_global.h
@@ -540,7 +540,7 @@ typedef unsigned short ushort;
duplicate declaration of __cxa_pure_virtual, solved by declaring it a
weak symbol.
*/
-#ifdef USE_MYSYS_NEW
+#if defined(USE_MYSYS_NEW) && ! defined(DONT_DECLARE_CXA_PURE_VIRTUAL)
C_MODE_START
int __cxa_pure_virtual () __attribute__ ((weak));
C_MODE_END
@@ -846,6 +846,21 @@ typedef long long my_ptrdiff_t;
#define ADD_TO_PTR(ptr,size,type) (type) ((byte*) (ptr)+size)
#define PTR_BYTE_DIFF(A,B) (my_ptrdiff_t) ((byte*) (A) - (byte*) (B))
+/*
+ Custom version of standard offsetof() macro which can be used to get
+ offsets of members in class for non-POD types (according to the current
+ version of C++ standard offsetof() macro can't be used in such cases and
+ attempt to do so causes warnings to be emitted, OTOH in many cases it is
+ still OK to assume that all instances of the class has the same offsets
+ for the same members).
+
+ This is temporary solution which should be removed once File_parser class
+ and related routines are refactored.
+*/
+
+#define my_offsetof(TYPE, MEMBER) \
+ ((size_t)((char *)&(((TYPE *)0x10)->MEMBER) - (char*)0x10))
+
#define NullS (char *) 0
/* Nowdays we do not support MessyDos */
#ifndef NEAR
@@ -1078,7 +1093,7 @@ typedef char bool; /* Ordinary boolean values 0 1 */
*/
#define uint3korr(A) (long) (*((unsigned int *) (A)) & 0xFFFFFF)
#endif
-#define uint4korr(A) (*((unsigned long *) (A)))
+#define uint4korr(A) (*((uint32 *) (A)))
#define uint5korr(A) ((ulonglong)(((uint32) ((uchar) (A)[0])) +\
(((uint32) ((uchar) (A)[1])) << 8) +\
(((uint32) ((uchar) (A)[2])) << 16) +\
diff --git a/include/my_pthread.h b/include/my_pthread.h
index f5c7ad62a16..30c48b42c7f 100644
--- a/include/my_pthread.h
+++ b/include/my_pthread.h
@@ -370,14 +370,14 @@ int sigwait(sigset_t *setp, int *sigp); /* Use our implemention */
we want to make sure that no such flags are set.
*/
#if defined(HAVE_SIGACTION) && !defined(my_sigset)
-#define my_sigset(A,B) do { struct sigaction s; sigset_t set; int rc; \
- DBUG_ASSERT((A) != 0); \
- sigemptyset(&set); \
- s.sa_handler = (B); \
- s.sa_mask = set; \
- s.sa_flags = 0; \
- rc= sigaction((A), &s, (struct sigaction *) NULL);\
- DBUG_ASSERT(rc == 0); \
+#define my_sigset(A,B) do { struct sigaction l_s; sigset_t l_set; int l_rc; \
+ DBUG_ASSERT((A) != 0); \
+ sigemptyset(&l_set); \
+ l_s.sa_handler = (B); \
+ l_s.sa_mask = l_set; \
+ l_s.sa_flags = 0; \
+ l_rc= sigaction((A), &l_s, (struct sigaction *) NULL);\
+ DBUG_ASSERT(l_rc == 0); \
} while (0)
#elif defined(HAVE_SIGSET) && !defined(my_sigset)
#define my_sigset(A,B) sigset((A),(B))
diff --git a/include/my_sys.h b/include/my_sys.h
index c7c15e1606d..533d50cb25f 100644
--- a/include/my_sys.h
+++ b/include/my_sys.h
@@ -260,9 +260,10 @@ extern my_bool NEAR my_disable_locking,NEAR my_disable_async_io,
NEAR my_disable_flush_key_blocks, NEAR my_disable_symlinks;
extern char wild_many,wild_one,wild_prefix;
extern const char *charsets_dir;
-extern char *defaults_extra_file;
-extern const char *defaults_group_suffix;
-extern const char *defaults_file;
+/* from default.c */
+extern char *my_defaults_extra_file;
+extern const char *my_defaults_group_suffix;
+extern const char *my_defaults_file;
extern my_bool timed_mutexes;
diff --git a/include/my_time.h b/include/my_time.h
index 3c8f4274409..0e57b3d4af4 100644
--- a/include/my_time.h
+++ b/include/my_time.h
@@ -79,16 +79,16 @@ str_to_datetime(const char *str, uint length, MYSQL_TIME *l_time,
uint flags, int *was_cut);
longlong number_to_datetime(longlong nr, MYSQL_TIME *time_res,
uint flags, int *was_cut);
-ulonglong TIME_to_ulonglong_datetime(const MYSQL_TIME *time);
-ulonglong TIME_to_ulonglong_date(const MYSQL_TIME *time);
-ulonglong TIME_to_ulonglong_time(const MYSQL_TIME *time);
-ulonglong TIME_to_ulonglong(const MYSQL_TIME *time);
+ulonglong TIME_to_ulonglong_datetime(const MYSQL_TIME *);
+ulonglong TIME_to_ulonglong_date(const MYSQL_TIME *);
+ulonglong TIME_to_ulonglong_time(const MYSQL_TIME *);
+ulonglong TIME_to_ulonglong(const MYSQL_TIME *);
my_bool str_to_time(const char *str,uint length, MYSQL_TIME *l_time,
int *warning);
-int check_time_range(struct st_mysql_time *time, int *warning);
+int check_time_range(struct st_mysql_time *, int *warning);
long calc_daynr(uint year,uint month,uint day);
uint calc_days_in_year(uint year);
diff --git a/include/mysql.h b/include/mysql.h
index c612bdf175a..a153d0b51db 100644
--- a/include/mysql.h
+++ b/include/mysql.h
@@ -87,6 +87,7 @@ extern char *mysql_unix_port;
#define IS_NUM(t) ((t) <= FIELD_TYPE_INT24 || (t) == FIELD_TYPE_YEAR || (t) == FIELD_TYPE_NEWDECIMAL)
#define IS_NUM_FIELD(f) ((f)->flags & NUM_FLAG)
#define INTERNAL_NUM_FIELD(f) (((f)->type <= FIELD_TYPE_INT24 && ((f)->type != FIELD_TYPE_TIMESTAMP || (f)->length == 14 || (f)->length == 8)) || (f)->type == FIELD_TYPE_YEAR)
+#define IS_LONGDATA(t) ((t) >= MYSQL_TYPE_TINY_BLOB && (t) <= MYSQL_TYPE_STRING)
typedef struct st_mysql_field {
@@ -783,7 +784,7 @@ int STDCALL mysql_stmt_prepare(MYSQL_STMT *stmt, const char *query,
unsigned long length);
int STDCALL mysql_stmt_execute(MYSQL_STMT *stmt);
int STDCALL mysql_stmt_fetch(MYSQL_STMT *stmt);
-int STDCALL mysql_stmt_fetch_column(MYSQL_STMT *stmt, MYSQL_BIND *bind,
+int STDCALL mysql_stmt_fetch_column(MYSQL_STMT *stmt, MYSQL_BIND *bind_arg,
unsigned int column,
unsigned long offset);
int STDCALL mysql_stmt_store_result(MYSQL_STMT *stmt);