Diff
Not logged in

Differences From Artifact [da26937cb8]:

To Artifact [c36bb07c3f]:


879
880
881
882
883
884
885
886



887

888
889
890
891
892
893
894
TclpReaddir(DIR * dir)
{
    Tcl_DirEntry *ent;
#ifdef TCL_THREADS
    ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);

#ifdef HAVE_READDIR_R
    ent = &tsdPtr->rdbuf.ent; 



    if (TclOSreaddir_r(dir, ent, &ent) != 0) {

	ent = NULL;
    }

#else /* !HAVE_READDIR_R */

    Tcl_MutexLock(&rdMutex);
#   ifdef HAVE_STRUCT_DIRENT64







|
>
>
>

>







879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
TclpReaddir(DIR * dir)
{
    Tcl_DirEntry *ent;
#ifdef TCL_THREADS
    ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);

#ifdef HAVE_READDIR_R
    ent = &tsdPtr->rdbuf.ent;
# ifdef HAVE_TWO_ARG_READDIR_R
    if (TclOSreaddir_r(dir, ent) != 0) {
# else /* HAVE_THREE_ARG_READDIR_R */
    if (TclOSreaddir_r(dir, ent, &ent) != 0) {
# endif /* HAVE_TWO_ARG_READDIR_R */
	ent = NULL;
    }

#else /* !HAVE_READDIR_R */

    Tcl_MutexLock(&rdMutex);
#   ifdef HAVE_STRUCT_DIRENT64