OLD | NEW |
1 #include "pthread_impl.h" | 1 #include "pthread_impl.h" |
2 | 2 |
3 static void dummy(struct __ptcb *cb) | 3 static void dummy(struct __ptcb* cb) {} |
4 { | |
5 } | |
6 weak_alias(dummy, __do_cleanup_push); | 4 weak_alias(dummy, __do_cleanup_push); |
7 weak_alias(dummy, __do_cleanup_pop); | 5 weak_alias(dummy, __do_cleanup_pop); |
8 | 6 |
9 void _pthread_cleanup_push(struct __ptcb *cb, void (*f)(void *), void *x) | 7 void _pthread_cleanup_push(struct __ptcb* cb, void (*f)(void*), void* x) { |
10 { | 8 cb->__f = f; |
11 » cb->__f = f; | 9 cb->__x = x; |
12 » cb->__x = x; | 10 __do_cleanup_push(cb); |
13 » __do_cleanup_push(cb); | |
14 } | 11 } |
15 | 12 |
16 void _pthread_cleanup_pop(struct __ptcb *cb, int run) | 13 void _pthread_cleanup_pop(struct __ptcb* cb, int run) { |
17 { | 14 __do_cleanup_pop(cb); |
18 » __do_cleanup_pop(cb); | 15 if (run) |
19 » if (run) cb->__f(cb->__x); | 16 cb->__f(cb->__x); |
20 } | 17 } |
OLD | NEW |