Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
fee9c135
Commit
fee9c135
authored
Oct 13, 2005
by
bar@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge abarkov@bk-internal:/home/bk/mysql-5.0
into mysql.com:/usr/home/bar/mysql-5.0.b9278
parents
4a7324a4
38a5d34a
Changes
24
Hide whitespace changes
Inline
Side-by-side
Showing
24 changed files
with
156 additions
and
107 deletions
+156
-107
configure.in
configure.in
+3
-13
include/config-win.h
include/config-win.h
+1
-1
include/m_string.h
include/m_string.h
+0
-9
include/my_pthread.h
include/my_pthread.h
+21
-14
myisam/mi_search.c
myisam/mi_search.c
+1
-1
mysql-test/r/ctype_big5.result
mysql-test/r/ctype_big5.result
+19
-0
mysql-test/r/select.result
mysql-test/r/select.result
+10
-0
mysql-test/r/wait_timeout.result
mysql-test/r/wait_timeout.result
+8
-0
mysql-test/t/ctype_big5.test
mysql-test/t/ctype_big5.test
+15
-0
mysql-test/t/select.test
mysql-test/t/select.test
+10
-0
mysql-test/t/wait_timeout-master.opt
mysql-test/t/wait_timeout-master.opt
+1
-0
mysql-test/t/wait_timeout.test
mysql-test/t/wait_timeout.test
+11
-0
mysys/my_pthread.c
mysys/my_pthread.c
+0
-17
mysys/thr_alarm.c
mysys/thr_alarm.c
+7
-17
netware/BUILD/mwenv
netware/BUILD/mwenv
+2
-2
netware/pack_isam.def
netware/pack_isam.def
+1
-0
scripts/make_binary_distribution.sh
scripts/make_binary_distribution.sh
+4
-0
sql/mysqld.cc
sql/mysqld.cc
+5
-15
strings/ctype-big5.c
strings/ctype-big5.c
+11
-10
strings/ctype-tis620.c
strings/ctype-tis620.c
+1
-1
strings/my_strtoll10.c
strings/my_strtoll10.c
+4
-1
strings/xml.c
strings/xml.c
+1
-1
vio/vio.c
vio/vio.c
+12
-4
vio/viosocket.c
vio/viosocket.c
+8
-1
No files found.
configure.in
View file @
fee9c135
...
...
@@ -1021,7 +1021,7 @@ case $SYSTEM_TYPE in
*
darwin5
*
)
if
test
"
$ac_cv_prog_gcc
"
=
"yes"
then
FLAGS
=
"-traditional-cpp -DHAVE_DARWIN_THREADS -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DHAVE_BROKEN_REALPATH"
FLAGS
=
"-traditional-cpp -DHAVE_DARWIN
5
_THREADS -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DHAVE_BROKEN_REALPATH"
CFLAGS
=
"
$CFLAGS
$FLAGS
"
CXXFLAGS
=
"
$CXXFLAGS
$FLAGS
"
MAX_C_OPTIMIZE
=
"-O"
...
...
@@ -1031,23 +1031,13 @@ case $SYSTEM_TYPE in
*
darwin6
*
)
if
test
"
$ac_cv_prog_gcc
"
=
"yes"
then
FLAGS
=
"-D
HAVE_DARWIN_THREADS -D
_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DHAVE_BROKEN_REALPATH"
FLAGS
=
"-D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DHAVE_BROKEN_REALPATH"
CFLAGS
=
"
$CFLAGS
$FLAGS
"
CXXFLAGS
=
"
$CXXFLAGS
$FLAGS
"
MAX_C_OPTIMIZE
=
"-O"
fi
;;
*
darwin[[7-8]]
*
)
# don't forget to escape [] like above
if
test
"
$ac_cv_prog_gcc
"
=
"yes"
then
FLAGS
=
"-DHAVE_DARWIN_THREADS -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DIGNORE_SIGHUP_SIGQUIT"
CFLAGS
=
"
$CFLAGS
$FLAGS
"
CXXFLAGS
=
"
$CXXFLAGS
$FLAGS
"
MAX_C_OPTIMIZE
=
"-O"
fi
;;
*
darwin9
*
)
*
darwin
*
)
if
test
"
$ac_cv_prog_gcc
"
=
"yes"
then
FLAGS
=
"-D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DIGNORE_SIGHUP_SIGQUIT"
...
...
include/config-win.h
View file @
fee9c135
...
...
@@ -193,7 +193,7 @@ typedef uint rf_SetTimer;
/* Convert some simple functions to Posix */
#define sigset(A,B) signal((A),(B))
#define
my_
sigset(A,B) signal((A),(B))
#define finite(A) _finite(A)
#define sleep(A) Sleep((A)*1000)
#define popen(A) popen(A,B) _popen((A),(B))
...
...
include/m_string.h
View file @
fee9c135
...
...
@@ -129,15 +129,6 @@ extern void bmove_align(gptr dst,const gptr src,uint len);
#define bmove512(A,B,C) memcpy(A,B,C)
#endif
#ifdef HAVE_purify
#define memcpy_overlap(A,B,C) \
DBUG_ASSERT((A) <= (B) || ((B)+(C)) <= (A)); \
bmove((byte*) (A),(byte*) (B),(size_t) (C));
#else
#define memcpy_overlap(A,B,C) memcpy((A), (B), (C))
#endif
/* HAVE_purify */
/* Prototypes for string functions */
#if !defined(bfill) && !defined(HAVE_BFILL)
...
...
include/my_pthread.h
View file @
fee9c135
...
...
@@ -292,8 +292,6 @@ extern int my_pthread_create_detached;
#undef HAVE_PTHREAD_RWLOCK_RDLOCK
#undef HAVE_SNPRINTF
#define sigset(A,B) pthread_signal((A),(void (*)(int)) (B))
#define signal(A,B) pthread_signal((A),(void (*)(int)) (B))
#define my_pthread_attr_setprio(A,B)
#endif
/* defined(PTHREAD_SCOPE_GLOBAL) && !defined(PTHREAD_SCOPE_SYSTEM) */
...
...
@@ -325,14 +323,26 @@ extern int my_pthread_cond_init(pthread_cond_t *mp,
#if !defined(HAVE_SIGWAIT) && !defined(HAVE_mit_thread) && !defined(HAVE_rts_threads) && !defined(sigwait) && !defined(alpha_linux_port) && !defined(HAVE_NONPOSIX_SIGWAIT) && !defined(HAVE_DEC_3_2_THREADS) && !defined(_AIX)
int
sigwait
(
sigset_t
*
setp
,
int
*
sigp
);
/* Use our implemention */
#endif
#if !defined(HAVE_SIGSET) && !defined(HAVE_mit_thread) && !defined(sigset)
#define sigset(A,B) do { struct sigaction s; sigset_t set; \
sigemptyset(&set); \
s.sa_handler = (B); \
s.sa_mask = set; \
s.sa_flags = 0; \
sigaction((A), &s, (struct sigaction *) NULL); \
} while (0)
/*
We define my_sigset() and use that instead of the system sigset() so that
we can favor an implementation based on sigaction(). On some systems, such
as Mac OS X, sigset() results in flags such as SA_RESTART being set, and
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; \
sigemptyset(&set); \
s.sa_handler = (B); \
s.sa_mask = set; \
s.sa_flags = 0; \
sigaction((A), &s, (struct sigaction *) NULL); \
} while (0)
#elif defined(HAVE_SIGSET) && !defined(my_sigset)
#define my_sigset(A,B) sigset((A),(B))
#elif !defined(my_sigset)
#define my_sigset(A,B) signal((A),(B))
#endif
#ifndef my_pthread_setprio
...
...
@@ -412,16 +422,13 @@ struct tm *gmtime_r(const time_t *clock, struct tm *res);
#define pthread_detach_this_thread() { pthread_t tmp=pthread_self() ; pthread_detach(&tmp); }
#endif
#ifdef HAVE_DARWIN_THREADS
#ifdef HAVE_DARWIN
5
_THREADS
#define pthread_sigmask(A,B,C) sigprocmask((A),(B),(C))
#define pthread_kill(A,B) pthread_dummy(0)
#define pthread_condattr_init(A) pthread_dummy(0)
#define pthread_condattr_destroy(A) pthread_dummy(0)
#define pthread_signal(A,B) pthread_dummy(0)
#undef pthread_detach_this_thread
#define pthread_detach_this_thread() { pthread_t tmp=pthread_self() ; pthread_detach(tmp); }
#undef sigset
#define sigset(A,B) pthread_signal((A),(void (*)(int)) (B))
#endif
#if ((defined(HAVE_PTHREAD_ATTR_CREATE) && !defined(HAVE_SIGWAIT)) || defined(HAVE_DEC_3_2_THREADS)) && !defined(HAVE_CTHREADS_WRAPPER)
...
...
myisam/mi_search.c
View file @
fee9c135
...
...
@@ -986,7 +986,7 @@ uint _mi_get_binary_pack_key(register MI_KEYDEF *keyinfo, uint nod_flag,
}
DBUG_PRINT
(
"info"
,(
"key: %lx from: %lx length: %u"
,
(
long
)
key
,
(
long
)
from
,
length
));
mem
cpy_overlap
((
byte
*
)
key
,
(
byte
*
)
from
,
(
size_t
)
length
);
mem
move
((
byte
*
)
key
,
(
byte
*
)
from
,
(
size_t
)
length
);
key
+=
length
;
from
+=
length
;
}
...
...
mysql-test/r/ctype_big5.result
View file @
fee9c135
...
...
@@ -170,3 +170,22 @@ SELECT HEX(a) FROM t1 WHERE MATCH(a) AGAINST (0xA741ADCCA66EB6DC IN BOOLEAN MODE
HEX(a)
A741ADCCA66EB6DC20A7DAADCCABDCA66E
DROP TABLE t1;
set names big5;
create table t1 (a char character set big5);
insert into t1 values (0xF9D6),(0xF9D7),(0xF9D8),(0xF9D9);
insert into t1 values (0xF9DA),(0xF9DB),(0xF9DC);
select hex(a) a, hex(@u:=convert(a using utf8)) b,
hex(convert(@u using big5)) c from t1 order by a;
a b c
F9D6 E7A281 F9D6
F9D7 E98AB9 F9D7
F9D8 E8A38F F9D8
F9D9 E5A2BB F9D9
F9DA E68192 F9DA
F9DB E7B2A7 F9DB
F9DC E5ABBA F9DC
alter table t1 convert to character set utf8;
select hex(a) from t1 where a = _big5 0xF9DC;
hex(a)
E5ABBA
drop table t1;
mysql-test/r/select.result
View file @
fee9c135
...
...
@@ -2646,6 +2646,16 @@ select * from t1,t2 where f1=f3 and (f1,f2) <=> (2,null);
f1 f2 f3
2 NULL 2
drop table t1,t2;
create table t1 (f1 int not null auto_increment primary key, f2 varchar(10));
create table t11 like t1;
insert into t1 values(1,""),(2,"");
show table status like 't1%';
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
t1 MyISAM 10 Dynamic 2 20 X X X X X X X X latin1_swedish_ci NULL
t11 MyISAM 10 Dynamic 0 0 X X X X X X X X latin1_swedish_ci NULL
select 123 as a from t1 where f1 is null;
a
drop table t1,t11;
CREATE TABLE t1 ( city char(30) );
INSERT INTO t1 VALUES ('London');
INSERT INTO t1 VALUES ('Paris');
...
...
mysql-test/r/wait_timeout.result
0 → 100644
View file @
fee9c135
select 1;
1
1
select 2;
ERROR HY000: MySQL server has gone away
select 3;
3
3
mysql-test/t/ctype_big5.test
View file @
fee9c135
...
...
@@ -38,4 +38,19 @@ INSERT INTO t1 VALUES(0xA741ADCCA66EB6DC20A7DAADCCABDCA66E);
SELECT
HEX
(
a
)
FROM
t1
WHERE
MATCH
(
a
)
AGAINST
(
0xA741ADCCA66EB6DC
IN
BOOLEAN
MODE
);
DROP
TABLE
t1
;
#
# Bug#12476 Some big5 codes are still missing.
#
set
names
big5
;
create
table
t1
(
a
char
character
set
big5
);
insert
into
t1
values
(
0xF9D6
),(
0xF9D7
),(
0xF9D8
),(
0xF9D9
);
insert
into
t1
values
(
0xF9DA
),(
0xF9DB
),(
0xF9DC
);
# Check round trip
select
hex
(
a
)
a
,
hex
(
@
u
:=
convert
(
a
using
utf8
))
b
,
hex
(
convert
(
@
u
using
big5
))
c
from
t1
order
by
a
;
# Check that there is no "illegal mix of collations" error with Unicode.
alter
table
t1
convert
to
character
set
utf8
;
select
hex
(
a
)
from
t1
where
a
=
_big5
0xF9DC
;
drop
table
t1
;
# End of 4.1 tests
mysql-test/t/select.test
View file @
fee9c135
...
...
@@ -2206,6 +2206,16 @@ select * from t1,t2 where f1=f3 and (f1,f2) = (2,null);
select
*
from
t1
,
t2
where
f1
=
f3
and
(
f1
,
f2
)
<=>
(
2
,
null
);
drop
table
t1
,
t2
;
#
# Bug #13535
#
create
table
t1
(
f1
int
not
null
auto_increment
primary
key
,
f2
varchar
(
10
));
create
table
t11
like
t1
;
insert
into
t1
values
(
1
,
""
),(
2
,
""
);
--
replace_column
7
X
8
X
9
X
10
X
11
X
12
X
13
X
14
X
show
table
status
like
't1%'
;
select
123
as
a
from
t1
where
f1
is
null
;
drop
table
t1
,
t11
;
# End of 4.1 tests
#
...
...
mysql-test/t/wait_timeout-master.opt
0 → 100644
View file @
fee9c135
--wait-timeout=2
mysql-test/t/wait_timeout.test
0 → 100644
View file @
fee9c135
#
# Bug #8731: wait_timeout does not work on Mac OS X
#
--
disable_reconnect
select
1
;
# wait_timeout is 2, so we should get disconnected now
--
sleep
5
--
error
2006
select
2
;
--
enable_reconnect
select
3
;
mysys/my_pthread.c
View file @
fee9c135
...
...
@@ -404,23 +404,6 @@ int sigwait(sigset_t *setp, int *sigp)
#endif
/* DONT_USE_SIGSUSPEND */
#endif
/* HAVE_SIGWAIT */
/*****************************************************************************
** Implement pthread_signal for systems that can't use signal() with threads
** Currently this is only used with BSDI 3.0
*****************************************************************************/
#ifdef USE_PTHREAD_SIGNAL
int
pthread_signal
(
int
sig
,
void
(
*
func
)())
{
struct
sigaction
sact
;
sact
.
sa_flags
=
0
;
sact
.
sa_handler
=
func
;
sigemptyset
(
&
sact
.
sa_mask
);
sigaction
(
sig
,
&
sact
,
(
struct
sigaction
*
)
0
);
return
0
;
}
#endif
/****************************************************************************
The following functions fixes that all pthread functions should work
...
...
mysys/thr_alarm.c
View file @
fee9c135
...
...
@@ -80,17 +80,7 @@ void init_thr_alarm(uint max_alarms)
pthread_mutex_init
(
&
LOCK_alarm
,
MY_MUTEX_INIT_FAST
);
pthread_cond_init
(
&
COND_alarm
,
NULL
);
#if THR_CLIENT_ALARM != SIGALRM || defined(USE_ALARM_THREAD)
#if defined(HAVE_mit_thread)
sigset
(
THR_CLIENT_ALARM
,
thread_alarm
);
/* int. thread system calls */
#else
{
struct
sigaction
sact
;
sact
.
sa_flags
=
0
;
bzero
((
char
*
)
&
sact
,
sizeof
(
sact
));
sact
.
sa_handler
=
thread_alarm
;
sigaction
(
THR_CLIENT_ALARM
,
&
sact
,
(
struct
sigaction
*
)
0
);
}
#endif
my_sigset
(
THR_CLIENT_ALARM
,
thread_alarm
);
#endif
sigemptyset
(
&
s
);
sigaddset
(
&
s
,
THR_SERVER_ALARM
);
...
...
@@ -110,12 +100,12 @@ void init_thr_alarm(uint max_alarms)
#elif defined(USE_ONE_SIGNAL_HAND)
pthread_sigmask
(
SIG_BLOCK
,
&
s
,
NULL
);
/* used with sigwait() */
#if THR_SERVER_ALARM == THR_CLIENT_ALARM
sigset
(
THR_CLIENT_ALARM
,
process_alarm
);
/* Linuxthreads */
my_
sigset
(
THR_CLIENT_ALARM
,
process_alarm
);
/* Linuxthreads */
pthread_sigmask
(
SIG_UNBLOCK
,
&
s
,
NULL
);
#endif
#else
my_sigset
(
THR_SERVER_ALARM
,
process_alarm
);
pthread_sigmask
(
SIG_UNBLOCK
,
&
s
,
NULL
);
sigset
(
THR_SERVER_ALARM
,
process_alarm
);
#endif
DBUG_VOID_RETURN
;
}
...
...
@@ -290,7 +280,7 @@ sig_handler process_alarm(int sig __attribute__((unused)))
printf
(
"thread_alarm
\n
"
);
fflush
(
stdout
);
#endif
#ifdef DONT_REMEMBER_SIGNAL
sigset
(
THR_CLIENT_ALARM
,
process_alarm
);
/* int. thread system calls */
my_
sigset
(
THR_CLIENT_ALARM
,
process_alarm
);
/* int. thread system calls */
#endif
return
;
}
...
...
@@ -310,7 +300,7 @@ sig_handler process_alarm(int sig __attribute__((unused)))
process_alarm_part2
(
sig
);
#ifndef USE_ALARM_THREAD
#if defined(DONT_REMEMBER_SIGNAL) && !defined(USE_ONE_SIGNAL_HAND)
sigset
(
THR_SERVER_ALARM
,
process_alarm
);
my_
sigset
(
THR_SERVER_ALARM
,
process_alarm
);
#endif
pthread_mutex_unlock
(
&
LOCK_alarm
);
pthread_sigmask
(
SIG_SETMASK
,
&
old_mask
,
NULL
);
...
...
@@ -512,7 +502,7 @@ static sig_handler thread_alarm(int sig)
printf
(
"thread_alarm
\n
"
);
fflush
(
stdout
);
#endif
#ifdef DONT_REMEMBER_SIGNAL
sigset
(
sig
,
thread_alarm
);
/* int. thread system calls */
my_
sigset
(
sig
,
thread_alarm
);
/* int. thread system calls */
#endif
}
#endif
...
...
@@ -916,7 +906,7 @@ static sig_handler print_signal_warning(int sig)
printf
(
"Warning: Got signal %d from thread %s
\n
"
,
sig
,
my_thread_name
());
fflush
(
stdout
);
#ifdef DONT_REMEMBER_SIGNAL
sigset
(
sig
,
print_signal_warning
);
/* int. thread system calls */
my_
sigset
(
sig
,
print_signal_warning
);
/* int. thread system calls */
#endif
#ifndef OS2
if
(
sig
==
SIGALRM
)
...
...
netware/BUILD/mwenv
View file @
fee9c135
...
...
@@ -19,9 +19,9 @@ export AR='mwldnlm'
export
AR_FLAGS
=
'-type library -o'
export
AS
=
'mwasmnlm'
export
CC
=
'mwccnlm -gccincludes'
export
CFLAGS
=
'-enum int -
O3 -
align 8 -proc 686 -relax_pointers -dialect c'
export
CFLAGS
=
'-enum int -align 8 -proc 686 -relax_pointers -dialect c'
export
CXX
=
'mwccnlm -gccincludes'
export
CXXFLAGS
=
'-enum int -
O3 -
align 8 -proc 686 -relax_pointers -dialect c++ -bool on -wchar_t on -D_WCHAR_T'
export
CXXFLAGS
=
'-enum int -align 8 -proc 686 -relax_pointers -dialect c++ -bool on -wchar_t on -D_WCHAR_T'
export
LD
=
'mwldnlm'
export
LDFLAGS
=
'-entry _LibCPrelude -exit _LibCPostlude -map -flags pseudopreemption'
export
RANLIB
=
:
...
...
netware/pack_isam.def
View file @
fee9c135
...
...
@@ -4,6 +4,7 @@
MODULE libc.nlm
COPYRIGHT "(c) 2003-2005 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL ISAM Table Pack Tool"
SCREENNAME "MySQL ISAM Table Pack Tool"
VERSION 4, 0
XDCDATA ../netware/mysql.xdc
#DEBUG
...
...
scripts/make_binary_distribution.sh
View file @
fee9c135
...
...
@@ -271,6 +271,10 @@ rm -f $BASE/bin/Makefile* $BASE/bin/*.in $BASE/bin/*.sh \
if
[
$BASE_SYSTEM
=
"netware"
]
;
then
echo
"CREATE DATABASE mysql;"
>
$BASE
/bin/init_db.sql
echo
"CREATE DATABASE test;"
>>
$BASE
/bin/init_db.sql
sh ./scripts/mysql_create_system_tables.sh real
""
"%"
0
\
>>
$BASE
/bin/init_db.sql
sh ./scripts/mysql_create_system_tables.sh
test
""
"%"
0
\
>
$BASE
/bin/test_db.sql
sh ./scripts/mysql_create_system_tables.sh real
>>
$BASE
/bin/init_db.sql
sh ./scripts/mysql_create_system_tables.sh
test
>
$BASE
/bin/test_db.sql
fi
...
...
sql/mysqld.cc
View file @
fee9c135
...
...
@@ -928,7 +928,7 @@ static void __cdecl kill_server(int sig_ptr)
RETURN_FROM_KILL_SERVER
;
kill_in_progress
=
TRUE
;
abort_loop
=
1
;
// This should be set
signal
(
sig
,
SIG_IGN
);
my_sigset
(
sig
,
SIG_IGN
);
if
(
sig
==
MYSQL_KILL_SIGNAL
||
sig
==
0
)
sql_print_information
(
ER
(
ER_NORMAL_SHUTDOWN
),
my_progname
);
else
...
...
@@ -977,11 +977,6 @@ pthread_handler_t kill_server_thread(void *arg __attribute__((unused)))
}
#endif
#if defined(__amiga__)
#undef sigset
#define sigset signal
#endif
extern
"C"
sig_handler
print_signal_warning
(
int
sig
)
{
if
(
!
DBUG_IN_USE
)
...
...
@@ -991,7 +986,7 @@ extern "C" sig_handler print_signal_warning(int sig)
sig
,
my_thread_id
());
}
#ifdef DONT_REMEMBER_SIGNAL
sigset
(
sig
,
print_signal_warning
);
/* int. thread system calls */
my_
sigset
(
sig
,
print_signal_warning
);
/* int. thread system calls */
#endif
#if !defined(__WIN__) && !defined(OS2) && !defined(__NETWARE__)
if
(
sig
==
SIGALRM
)
...
...
@@ -2074,8 +2069,8 @@ static void init_signals(void)
DBUG_ENTER
(
"init_signals"
);
if
(
test_flags
&
TEST_SIGINT
)
sigset
(
THR_KILL_SIGNAL
,
end_thread_signal
);
sigset
(
THR_SERVER_ALARM
,
print_signal_warning
);
// Should never be called!
my_
sigset
(
THR_KILL_SIGNAL
,
end_thread_signal
);
my_
sigset
(
THR_SERVER_ALARM
,
print_signal_warning
);
// Should never be called!
if
(
!
(
test_flags
&
TEST_NO_STACKTRACE
)
||
(
test_flags
&
TEST_CORE_ON_SIGNAL
))
{
...
...
@@ -2109,13 +2104,8 @@ static void init_signals(void)
}
#endif
(
void
)
sigemptyset
(
&
set
);
#ifdef THREAD_SPECIFIC_SIGPIPE
sigset
(
SIGPIPE
,
abort_thread
);
my_sigset
(
SIGPIPE
,
SIG_IGN
);
sigaddset
(
&
set
,
SIGPIPE
);
#else
(
void
)
signal
(
SIGPIPE
,
SIG_IGN
);
// Can't know which thread
sigaddset
(
&
set
,
SIGPIPE
);
#endif
sigaddset
(
&
set
,
SIGINT
);
#ifndef IGNORE_SIGHUP_SIGQUIT
sigaddset
(
&
set
,
SIGQUIT
);
...
...
strings/ctype-big5.c
View file @
fee9c135
...
...
@@ -1711,7 +1711,7 @@ static uint16 tab_big5_uni0[]={
0x2467
,
0x2468
,
0x2469
,
0x2474
,
0x2475
,
0x2476
,
0x2477
,
0x2478
,
0x2479
,
0x247A
,
0x247B
,
0x247C
,
0x247D
};
/* page 1 0xC940-0xF9D
5
*/
/* page 1 0xC940-0xF9D
C
*/
static
uint16
tab_big5_uni1
[]
=
{
0x4E42
,
0x4E5C
,
0x51F5
,
0x531A
,
0x5382
,
0x4E07
,
0x4E0C
,
0x4E47
,
0x4E8D
,
0x56D7
,
0xFA0C
,
0x5C6E
,
0x5F73
,
0x4E0F
,
0x5187
,
0x4E0E
,
...
...
@@ -3267,12 +3267,13 @@ static uint16 tab_big5_uni1[]={
0x9E17
,
0x9F48
,
0x6207
,
0x6B1E
,
0x7227
,
0x864C
,
0x8EA8
,
0x9482
,
0x9480
,
0x9481
,
0x9A69
,
0x9A68
,
0x9B2E
,
0x9E19
,
0x7229
,
0x864B
,
0x8B9F
,
0x9483
,
0x9C79
,
0x9EB7
,
0x7675
,
0x9A6B
,
0x9C7A
,
0x9E1D
,
0x7069
,
0x706A
,
0x9EA4
,
0x9F7E
,
0x9F49
,
0x9F98
};
0x7069
,
0x706A
,
0x9EA4
,
0x9F7E
,
0x9F49
,
0x9F98
,
0x7881
,
0x92B9
,
0x88CF
,
0x58BB
,
0x6052
,
0x7CA7
,
0x5AFA
};
static
int
func_big5_uni_onechar
(
int
code
){
if
((
code
>=
0xA140
)
&&
(
code
<=
0xC7FC
))
return
(
tab_big5_uni0
[
code
-
0xA140
]);
if
((
code
>=
0xC940
)
&&
(
code
<=
0xF9D
5
))
if
((
code
>=
0xC940
)
&&
(
code
<=
0xF9D
C
))
return
(
tab_big5_uni1
[
code
-
0xC940
]);
return
(
0
);
}
...
...
@@ -3901,7 +3902,7 @@ static uint16 tab_uni_big57[]={
0xE54D
,
0xE552
,
0
,
0xE54E
,
0
,
0xE551
,
0xBC5C
,
0
,
0xBEA5
,
0xBC5B
,
0
,
0xE54A
,
0xE550
,
0
,
0xBC5A
,
0xE54F
,
0
,
0xE54C
,
0
,
0xBC58
,
0
,
0
,
0
,
0
,
0
,
0
,
0xE94D
,
0
,
0xE94F
,
0xE94A
,
0xBEC1
,
0xE94C
,
0
,
0
,
0xE94D
,
0xF9D9
,
0xE94F
,
0xE94A
,
0xBEC1
,
0xE94C
,
0
,
0xBEC0
,
0xE94E
,
0
,
0
,
0xBEC3
,
0xE950
,
0xBEC2
,
0xE949
,
0xE94B
,
0
,
0
,
0
,
0
,
0xC0A5
,
0xECCC
,
0
,
0xC0A4
,
0xECCD
,
0xC0A3
,
0xECCB
,
0xC0A2
,
0xECCA
,
0
,
...
...
@@ -3973,7 +3974,7 @@ static uint16 tab_uni_big57[]={
0xE175
,
0xB9DE
,
0xE174
,
0xB9E4
,
0
,
0xE16D
,
0xB9DF
,
0
,
0xE17B
,
0xB9E0
,
0xE16F
,
0xE172
,
0xE177
,
0xE171
,
0xE16C
,
0
,
0
,
0
,
0
,
0xE173
,
0xE555
,
0xBC61
,
0xE558
,
0xE557
,
0xE55A
,
0xE55C
,
0
,
0xBC5F
,
0
,
0xE556
,
0
,
0xE554
,
0xE55A
,
0xE55C
,
0xF9DC
,
0xBC5F
,
0
,
0xE556
,
0
,
0xE554
,
0
,
0xE55D
,
0xE55B
,
0xE559
,
0
,
0xE55F
,
0
,
0xE55E
,
0xBC63
,
0xBC5E
,
0
,
0xBC60
,
0xBC62
,
0
,
0
,
0xE560
,
0xE957
,
0
,
0
,
0xE956
,
0xE955
,
0
,
0xE958
,
0xE951
,
...
...
@@ -4144,7 +4145,7 @@ static uint16 tab_uni_big57[]={
0
,
0xCEC0
,
0
,
0
,
0
,
0
,
0
,
0
,
0xCECA
,
0xD1A1
,
0xCECB
,
0xABEE
,
0xCECE
,
0xCEC4
,
0xABED
,
0xCEC6
,
0
,
0xCEC7
,
0
,
0
,
0xCEC9
,
0xABE9
,
0
,
0
,
0xAEA3
,
0
,
0
,
0xCEC5
,
0xCEC1
,
0xAEA4
,
0
,
0
,
0xAEA3
,
0
,
0xF9DA
,
0xCEC5
,
0xCEC1
,
0xAEA4
,
0
,
0
,
0xCECF
,
0xAE7E
,
0xD17D
,
0xCEC8
,
0
,
0xD17C
,
0xCEC3
,
0xCECC
,
0
,
0
,
0xABEC
,
0xAEA1
,
0xABF2
,
0xAEA2
,
0xCED0
,
0xD17E
,
0xABEB
,
0xAEA6
,
0xABF1
,
0xABF0
,
0xABEF
,
0xAEA5
,
0xCED1
,
0xAEA7
,
...
...
@@ -4918,7 +4919,7 @@ static uint16 tab_uni_big57[]={
0xDACF
,
0xDACE
,
0xDACB
,
0xB2B8
,
0xB577
,
0xDAC9
,
0xDACC
,
0xB578
,
0xDACD
,
0xDACA
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0xDEEE
,
0
,
0xDEF2
,
0xB84E
,
0
,
0xE2F0
,
0xB851
,
0xDEF0
,
0
,
0
,
0xDEED
,
0xDEE8
,
0xDEEA
,
0xDEEB
,
0xDEE4
,
0xDEF0
,
0xF9D6
,
0
,
0xDEED
,
0xDEE8
,
0xDEEA
,
0xDEEB
,
0xDEE4
,
0
,
0xB84D
,
0
,
0
,
0xB84C
,
0
,
0xB848
,
0xDEE7
,
0
,
0xB84F
,
0
,
0xB850
,
0xDEE6
,
0xDEE9
,
0xDEF1
,
0xB84A
,
0xB84B
,
0xDEEF
,
0xDEE5
,
0
,
0
,
0
,
0xE2F2
,
0xBAD0
,
...
...
@@ -5050,7 +5051,7 @@ static uint16 tab_uni_big57[]={
0xD34D
,
0xAFBB
,
0xD34B
,
0
,
0xD34C
,
0xD34E
,
0
,
0
,
0
,
0xD34A
,
0xB2C9
,
0
,
0xD6DE
,
0xB2CB
,
0xD6E0
,
0xB2CA
,
0xD6DF
,
0
,
0
,
0
,
0
,
0
,
0xDAE8
,
0xB5AF
,
0
,
0xDAEA
,
0xDAE7
,
0xD6E1
,
0
,
0xB5B0
,
0
,
0
,
0
,
0xDAEA
,
0xDAE7
,
0xD6E1
,
0
,
0xB5B0
,
0
,
0xF9DB
,
0xDAE9
,
0
,
0
,
0
,
0
,
0
,
0
,
0xDF56
,
0
,
0xB864
,
0xDF54
,
0xB865
,
0xDF55
,
0xB866
,
0
,
0
,
0
,
0xBAE9
,
0xE361
,
0xE35E
,
0xE360
,
0xBAEA
,
0xBAEB
,
0xE35F
,
...
...
@@ -5439,7 +5440,7 @@ static uint16 tab_uni_big57[]={
0
,
0xB5F6
,
0xDBCD
,
0
,
0
,
0
,
0xDBC9
,
0xDBCB
,
0xDBC6
,
0xDBC5
,
0xDBC3
,
0
,
0xDBCA
,
0xDBCC
,
0xDBC8
,
0
,
0xDBC7
,
0xB5F4
,
0xB5F5
,
0
,
0
,
0
,
0
,
0
,
0
,
0xDBCF
,
0xB8CD
,
0xDFF2
,
0xDFF8
,
0xDFF3
,
0xDFF4
,
0
,
0
,
0xDBCF
,
0xB8CD
,
0xDFF2
,
0xDFF8
,
0xDFF3
,
0xDFF4
,
0xF9D8
,
0xDFF9
,
0
,
0xB8CF
,
0
,
0xB8C7
,
0xB8CE
,
0xDFF1
,
0xDBC4
,
0xB8CA
,
0xB8C8
,
0xDFF7
,
0xDFF6
,
0xB8C9
,
0xB8CB
,
0xDFF5
,
0xB8C6
,
0
,
0xB8CC
,
0
,
0
,
0
,
0
,
0
,
0xE3F6
,
...
...
@@ -5757,7 +5758,7 @@ static uint16 tab_uni_big57[]={
0xE47B
,
0xE4AF
,
0xE4AC
,
0xE4A7
,
0xE477
,
0xE476
,
0xE4A1
,
0xE4B4
,
0xBBCF
,
0xE4B7
,
0xE47D
,
0xE4A3
,
0xBE52
,
0
,
0
,
0
,
0
,
0
,
0xBE5A
,
0xBE55
,
0xE8A4
,
0xE8A1
,
0xE867
,
0xBE50
,
0
,
0
,
0
,
0xBE4F
,
0xBE56
,
0
,
0
,
0
,
0
,
0xF9D7
,
0
,
0xBE4F
,
0xBE56
,
0
,
0
,
0
,
0xE865
,
0xBE54
,
0xE871
,
0xE863
,
0xE864
,
0xBE4E
,
0xE8A3
,
0xBE58
,
0xE874
,
0xE879
,
0xE873
,
0xEBEE
,
0xE86F
,
0xE877
,
0xE875
,
0xE868
,
0xE862
,
0xE87D
,
0xBE57
,
0xE87E
,
0
,
0xE878
,
0
,
0xE86D
,
...
...
strings/ctype-tis620.c
View file @
fee9c135
...
...
@@ -498,7 +498,7 @@ static uint thai2sortable(uchar *tstr, uint len)
l2bias use to control position weight of l2char
example (*=l2char) XX*X must come before X*XX
*/
mem
cpy_overlap
((
char
*
)
p
,
(
char
*
)
(
p
+
1
),
tlen
-
1
);
mem
move
((
char
*
)
p
,
(
char
*
)
(
p
+
1
),
tlen
-
1
);
tstr
[
len
-
1
]
=
l2bias
+
t_ctype0
[
1
]
-
L2_GARAN
+
1
;
p
--
;
continue
;
...
...
strings/my_strtoll10.c
View file @
fee9c135
...
...
@@ -19,7 +19,10 @@
#include <m_string.h>
#undef ULONGLONG_MAX
/* Needed under MetroWerks Compiler, since MetroWerks compiler does not properly handle a constant expression containing a mod operator */
/*
Needed under MetroWerks Compiler, since MetroWerks compiler does not
properly handle a constant expression containing a mod operator
*/
#if defined(__NETWARE__) && defined(__MWERKS__)
static
ulonglong
ulonglong_max
=
~
(
ulonglong
)
0
;
#define ULONGLONG_MAX ulonglong_max
...
...
strings/xml.c
View file @
fee9c135
...
...
@@ -81,7 +81,7 @@ static int my_xml_scan(MY_XML_PARSER *p,MY_XML_ATTR *a)
a
->
beg
=
p
->
cur
;
a
->
end
=
p
->
cur
;
if
(
!
bcmp
(
p
->
cur
,
"<!--"
,
4
))
if
(
(
p
->
end
-
p
->
cur
>
3
)
&&
!
bcmp
(
p
->
cur
,
"<!--"
,
4
))
{
for
(
;
(
p
->
cur
<
p
->
end
)
&&
bcmp
(
p
->
cur
,
"-->"
,
3
);
p
->
cur
++
)
{}
...
...
vio/vio.c
View file @
fee9c135
...
...
@@ -149,10 +149,18 @@ Vio *vio_new(my_socket sd, enum enum_vio_type type, uint flags)
vio
->
sd
);
#if !defined(__WIN__) && !defined(__EMX__) && !defined(OS2)
#if !defined(NO_FCNTL_NONBLOCK)
#if defined(__FreeBSD__)
fcntl
(
sd
,
F_SETFL
,
vio
->
fcntl_mode
);
/* Yahoo! FreeBSD patch */
#endif
vio
->
fcntl_mode
=
fcntl
(
sd
,
F_GETFL
);
/*
We call fcntl() to set the flags and then immediately read them back
to make sure that we and the system are in agreement on the state of
things.
An example of why we need to do this is FreeBSD (and apparently some
other BSD-derived systems, like Mac OS X), where the system sometimes
reports that the socket is set for non-blocking when it really will
block.
*/
fcntl
(
sd
,
F_SETFL
,
vio
->
fcntl_mode
);
vio
->
fcntl_mode
=
fcntl
(
sd
,
F_GETFL
);
#elif defined(HAVE_SYS_IOCTL_H)
/* hpux */
/* Non blocking sockets doesn't work good on HPUX 11.0 */
(
void
)
ioctl
(
sd
,
FIOSNBIO
,
0
);
...
...
vio/viosocket.c
View file @
fee9c135
...
...
@@ -138,7 +138,14 @@ int vio_blocking(Vio * vio __attribute__((unused)), my_bool set_blocking_mode,
else
vio
->
fcntl_mode
|=
O_NONBLOCK
;
/* set bit */
if
(
old_fcntl
!=
vio
->
fcntl_mode
)
r
=
fcntl
(
vio
->
sd
,
F_SETFL
,
vio
->
fcntl_mode
);
{
r
=
fcntl
(
vio
->
sd
,
F_SETFL
,
vio
->
fcntl_mode
);
if
(
r
==
-
1
)
{
DBUG_PRINT
(
"info"
,
(
"fcntl failed, errno %d"
,
errno
));
vio
->
fcntl_mode
=
old_fcntl
;
}
}
}
#else
r
=
set_blocking_mode
?
0
:
1
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment