Deleted Added
full compact
thr_spec.c (22315) thr_spec.c (31402)
1/*
2 * Copyright (c) 1995 John Birrell <jb@cimlogic.com.au>.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 195 unchanged lines hidden (view full) ---

204 while (pthread->parent_thread != NULL) {
205 /* Point to the parent thread: */
206 pthread = pthread->parent_thread;
207 }
208
209 /* Check for errors: */
210 if (pthread == NULL) {
211 /* Return an invalid argument error: */
1/*
2 * Copyright (c) 1995 John Birrell <jb@cimlogic.com.au>.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 195 unchanged lines hidden (view full) ---

204 while (pthread->parent_thread != NULL) {
205 /* Point to the parent thread: */
206 pthread = pthread->parent_thread;
207 }
208
209 /* Check for errors: */
210 if (pthread == NULL) {
211 /* Return an invalid argument error: */
212 errno = EINVAL;
213 data = NULL;
214 }
215 /* Check if there is specific data: */
216 else if (pthread->specific_data != NULL && (key < PTHREAD_KEYS_MAX) && (key_table)) {
217 /* Check if this key has been used before: */
218 if (key_table[key].count) {
219 /* Return the value: */
220 data = (void *) pthread->specific_data[key];

--- 17 unchanged lines hidden ---
212 data = NULL;
213 }
214 /* Check if there is specific data: */
215 else if (pthread->specific_data != NULL && (key < PTHREAD_KEYS_MAX) && (key_table)) {
216 /* Check if this key has been used before: */
217 if (key_table[key].count) {
218 /* Return the value: */
219 data = (void *) pthread->specific_data[key];

--- 17 unchanged lines hidden ---