summaryrefslogtreecommitdiff
path: root/mysys
diff options
context:
space:
mode:
authorunknown <greg@mysql.com>2003-04-27 21:16:20 -0400
committerunknown <greg@mysql.com>2003-04-27 21:16:20 -0400
commitbec53039d30ea8709e4b22d63b327033ab0e6cb4 (patch)
tree4b1cb34302a49d4753690a630daa0726a3928c0e /mysys
parent31dc4b3c83917c48ee4882add75143a273a0c98b (diff)
parent1ab78e0320ba13d675f4bd1ed6d02bda1b7eadcd (diff)
downloadmariadb-git-bec53039d30ea8709e4b22d63b327033ab0e6cb4.tar.gz
Merge gweir@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/greg/bk/mysql-4.0 sql/mini_client.cc: Auto merged sql/mysqld.cc: Auto merged sql/slave.cc: Auto merged
Diffstat (limited to 'mysys')
-rw-r--r--mysys/mf_path.c3
-rw-r--r--mysys/my_pthread.c23
2 files changed, 26 insertions, 0 deletions
diff --git a/mysys/mf_path.c b/mysys/mf_path.c
index 23eadd2acce..1ecd5fbb2b1 100644
--- a/mysys/mf_path.c
+++ b/mysys/mf_path.c
@@ -77,6 +77,9 @@ my_string my_path(my_string to, const char *progname,
#define F_OK 0
#define PATH_SEP ';'
#define PROGRAM_EXTENSION ".exe"
+#elif defined(__NETWARE__)
+#define PATH_SEP ';'
+#define PROGRAM_EXTENSION ".nlm"
#else
#define PATH_SEP ':'
#endif
diff --git a/mysys/my_pthread.c b/mysys/my_pthread.c
index 1eb15d92bc9..4f472f61593 100644
--- a/mysys/my_pthread.c
+++ b/mysys/my_pthread.c
@@ -90,6 +90,29 @@ void *my_pthread_getspecific_imp(pthread_key_t key)
}
#endif
+#ifdef __NETWARE__
+/*
+don't kill the LibC Reaper thread or the main thread
+*/
+#include <nks/thread.h>
+#undef pthread_exit
+void my_pthread_exit(void *status)
+{
+ NXThreadId_t tid = NXThreadGetId();
+ NXContext_t ctx;
+ char name[PATH_MAX] = "";
+
+ NXThreadGetContext(tid, &ctx);
+ NXContextGetName(ctx, name, PATH_MAX);
+
+ // "MYSQLD.NLM's LibC Reaper" or "MYSQLD.NLM's main thread"
+ // with a debug build of LibC the reaper can have different names
+ if (!strindex(name, "\'s"))
+ {
+ pthread_exit(status);
+ }
+}
+#endif
/* Some functions for RTS threads, AIX, Siemens Unix and UnixWare 7
(and DEC OSF/1 3.2 too) */