equal
deleted
inserted
replaced
5 #include <stdlib.h> |
5 #include <stdlib.h> |
6 |
6 |
7 #if defined(__AMIGA__) || defined(__MORPHOS__) |
7 #if defined(__AMIGA__) || defined(__MORPHOS__) |
8 OTTDThread* OTTDCreateThread(OTTDThreadFunc function, void* arg) { return NULL; } |
8 OTTDThread* OTTDCreateThread(OTTDThreadFunc function, void* arg) { return NULL; } |
9 void* OTTDJoinThread(OTTDThread* t) { return NULL; } |
9 void* OTTDJoinThread(OTTDThread* t) { return NULL; } |
10 |
10 void OTTDExitThread() { NOT_REACHED(); }; |
11 |
11 |
12 #elif defined(__OS2__) |
12 #elif defined(__OS2__) |
13 |
13 |
14 #define INCL_DOS |
14 #define INCL_DOS |
15 #include <os2.h> |
15 #include <os2.h> |
55 ret = t->ret; |
55 ret = t->ret; |
56 free(t); |
56 free(t); |
57 return ret; |
57 return ret; |
58 } |
58 } |
59 |
59 |
|
60 void OTTDExitThread(void) |
|
61 { |
|
62 _endthread(); |
|
63 } |
60 |
64 |
61 #elif defined(UNIX) |
65 #elif defined(UNIX) |
62 |
66 |
63 #include <pthread.h> |
67 #include <pthread.h> |
64 |
68 |
89 pthread_join(t->thread, &ret); |
93 pthread_join(t->thread, &ret); |
90 free(t); |
94 free(t); |
91 return ret; |
95 return ret; |
92 } |
96 } |
93 |
97 |
|
98 void OTTDExitThread(void) |
|
99 { |
|
100 pthread_exit(NULL); |
|
101 } |
94 |
102 |
95 #elif defined(WIN32) |
103 #elif defined(WIN32) |
96 |
104 |
97 #include <windows.h> |
105 #include <windows.h> |
98 |
106 |
139 CloseHandle(t->thread); |
147 CloseHandle(t->thread); |
140 ret = t->ret; |
148 ret = t->ret; |
141 free(t); |
149 free(t); |
142 return ret; |
150 return ret; |
143 } |
151 } |
|
152 |
|
153 void OTTDExitThread(void) |
|
154 { |
|
155 ExitThread(0); |
|
156 } |
144 #endif |
157 #endif |