Home | History | Annotate | Download | only in stdlib

Lines Matching defs:ah

66 #define	STATIC_HANDLER_P(ah)						\
67 (ah >= &atexit_handler0[0] && ah < &atexit_handler0[NSTATIC_HANDLERS])
93 struct atexit_handler *ah;
98 ah = &atexit_handler0[i];
99 if (ah->ah_atexit == NULL && ah->ah_next == NULL) {
101 return (ah);
112 ah = malloc(sizeof(*ah));
113 return (ah);
152 struct atexit_handler *ah;
158 ah = atexit_handler_alloc(dso);
159 if (ah == NULL) {
164 ah->ah_cxa_atexit = func;
165 ah->ah_arg = arg;
166 ah->ah_dso = dso;
168 ah->ah_next = atexit_handler_stack;
169 atexit_handler_stack = ah;
194 struct atexit_handler *ah, *dead_handlers = NULL, **prevp;
211 for (prevp = &atexit_handler_stack; (ah = (*prevp)) != NULL;) {
212 if (dso == NULL || dso == ah->ah_dso || ah->ah_atexit == NULL) {
213 if (ah->ah_atexit != NULL) {
215 if (ah->ah_dso != NULL) {
216 cxa_func = ah->ah_cxa_atexit;
217 ah->ah_cxa_atexit = NULL;
218 (*cxa_func)(ah->ah_arg);
220 atexit_func = ah->ah_atexit;
221 ah->ah_atexit = NULL;
230 *prevp = ah->ah_next;
231 if (STATIC_HANDLER_P(ah))
232 ah->ah_next = NULL;
234 ah->ah_next = dead_handlers;
235 dead_handlers = ah;
238 prevp = &ah->ah_next;
240 prevp = &ah->ah_next;
252 while ((ah = dead_handlers) != NULL) {
253 dead_handlers = ah->ah_next;
254 free(ah);