445
446
447
448
449
450
451
452
453
454
455
456
457
458
|
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
|
+
+
+
+
+
|
tsdPtr->initialized = 0;
}
int
TclFSCwdIsNative(void)
{
ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&fsDataKey);
/* if not yet initialized - ensure we'll once obtain cwd */
if (!tsdPtr->cwdPathEpoch) {
Tcl_FSGetCwd(NULL);
}
if (tsdPtr->cwdClientData != NULL) {
return 1;
} else {
return 0;
}
}
|
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
|
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
|
-
-
-
-
-
-
-
-
|
const char *modeString, /* A list of POSIX open modes or a string such
* as "rw". */
int permissions) /* What modes to use if opening the file
* involves creating it. */
{
const Tcl_Filesystem *fsPtr;
Tcl_Channel retVal = NULL;
if (Tcl_FSGetNormalizedPath(interp, pathPtr) == NULL) {
/*
* Return the correct error message.
*/
return NULL;
}
fsPtr = Tcl_FSGetFileSystemForPath(pathPtr);
if (fsPtr != NULL && fsPtr->openFileChannelProc != NULL) {
int mode, modeFlags;
/*
* Parse the mode to determine whether to seek at the outset
* and/or set the channel into binary mode.
|