]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - nptl_db/td_thr_validate.c
Prefer https to http for gnu.org and fsf.org URLs
[thirdparty/glibc.git] / nptl_db / td_thr_validate.c
index 3d560a621b2032ad29941bc55d6cafcb51376396..04da2fdba0541d83426e6e4a1a0a56b9b7fb49e5 100644 (file)
@@ -1,5 +1,5 @@
 /* Validate a thread handle.
-   Copyright (C) 1999, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+   Copyright (C) 1999-2019 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 1999.
 
@@ -14,9 +14,8 @@
    Lesser General Public License for more details.
 
    You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, write to the Free
-   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-   02111-1307 USA.  */
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
 
 #include "thread_dbP.h"
 #include <stdbool.h>
@@ -75,16 +74,10 @@ td_thr_validate (const td_thrhandle_t *th)
       if (err == TD_OK)
        err = check_thread_list (th, list, &uninit);
 
-      if (err == TD_NOTHR && uninit)
-       {
-         /* __pthread_initialize_minimal has not run yet.
-            But the main thread still has a valid ID.  */
-         td_thrhandle_t main_th;
-         err = td_ta_map_lwp2thr (th->th_ta_p,
-                                  ps_getpid (th->th_ta_p->ph), &main_th);
-         if (err == TD_OK && th->th_unique != main_th.th_unique)
-           err = TD_NOTHR;
-       }
+      if (err == TD_NOTHR && uninit && th->th_unique == 0)
+       /* __pthread_initialize_minimal has not run yet.
+          There is only the special case thread handle.  */
+       err = TD_OK;
     }
 
   return err;