Fix pthread_cleanup macros

This commit is contained in:
Jeremy Soller
2024-09-19 15:52:42 -06:00
parent 110aeadaa6
commit 8a0b2dcbd0
+5 -5
View File
@@ -11,19 +11,19 @@ after_includes = """
#define PTHREAD_ONCE_INIT ((pthread_once_t){0})
#define PTHREAD_RWLOCK_INITIALIZER ((pthread_rwlock_t){0})
#define pthread_cleanup_push(routine, arg) do { \\
#define pthread_cleanup_push(ROUTINE, ARG) do { \\
struct { \\
void (*routine)(void *); \\
void *arg; \\
void *prev; \\
} __relibc_internal_pthread_ll_entry = { \\
.routine = (void (*)(void *))(routine), \\
.arg = (void *)(arg), \\
.routine = (void (*)(void *))(ROUTINE), \\
.arg = (void *)(ARG), \\
}; \\
__relibc_internal_pthread_cleanup_push(&__relibc_internal_pthread_ll_entry);
#define pthread_cleanup_pop(execute) \\
__relibc_internal_pthread_cleanup_pop((execute)); \\
#define pthread_cleanup_pop(EXECUTE) \\
__relibc_internal_pthread_cleanup_pop((EXECUTE)); \\
} while(0)
"""