projects
/
musl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix static linking dependency bloat with cancellation
[musl]
/
src
/
thread
/
cancellation.c
diff --git
a/src/thread/cancellation.c
b/src/thread/cancellation.c
index
4976fed
..
6dfee53
100644
(file)
--- a/
src/thread/cancellation.c
+++ b/
src/thread/cancellation.c
@@
-3,10
+3,22
@@
#ifdef __pthread_register_cancel
#undef __pthread_register_cancel
#undef __pthread_unregister_cancel
#ifdef __pthread_register_cancel
#undef __pthread_register_cancel
#undef __pthread_unregister_cancel
+#undef __pthread_unwind_next
#define __pthread_register_cancel __pthread_register_cancel_3
#define __pthread_unregister_cancel __pthread_unregister_cancel_3
#define __pthread_register_cancel __pthread_register_cancel_3
#define __pthread_unregister_cancel __pthread_unregister_cancel_3
+#define __pthread_unwind_next __pthread_unwind_next_3
#endif
#endif
+static void dummy(struct __ptcb *cb)
+{
+}
+weak_alias(dummy, __pthread_do_unwind);
+
+void __pthread_unwind_next(struct __ptcb *cb)
+{
+ __pthread_do_unwind(cb);
+}
+
void __pthread_register_cancel(struct __ptcb *cb)
{
struct pthread *self = pthread_self();
void __pthread_register_cancel(struct __ptcb *cb)
{
struct pthread *self = pthread_self();