summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2024-05-24 19:36:08 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2024-05-24 19:36:08 (GMT)
commitbb257caab9c90f30684ef42f1cd1bea30f592afb (patch)
tree3028d1702aab19d422b0cc7803abd0c56f7e196e
parent4e1b46d9edd8c82af5d347dfc22162ec1959bddc (diff)
downloadtcl-bb257caab9c90f30684ef42f1cd1bea30f592afb.zip
tcl-bb257caab9c90f30684ef42f1cd1bea30f592afb.tar.gz
tcl-bb257caab9c90f30684ef42f1cd1bea30f592afb.tar.bz2
Use TclDStringToObj a bit more
-rw-r--r--generic/tclPkg.c6
-rw-r--r--unix/tclUnixFCmd.c6
-rw-r--r--unix/tclUnixFile.c8
-rw-r--r--win/tclWinFCmd.c2
4 files changed, 6 insertions, 16 deletions
diff --git a/generic/tclPkg.c b/generic/tclPkg.c
index 5e7f614..7e8db0e 100644
--- a/generic/tclPkg.c
+++ b/generic/tclPkg.c
@@ -414,11 +414,7 @@ PkgRequireCoreStep1(ClientData data[], Tcl_Interp *interp, int result) {
AddRequirementsToDString(&command, reqc, reqv);
Tcl_NRAddCallback(interp, PkgRequireCoreStep2, reqPtr, INT2PTR(reqc), (void *)reqv, NULL);
- Tcl_NREvalObj(interp,
- Tcl_NewStringObj(Tcl_DStringValue(&command), Tcl_DStringLength(&command)),
- TCL_EVAL_GLOBAL
- );
- Tcl_DStringFree(&command);
+ Tcl_NREvalObj(interp, TclDStringToObj(&command), TCL_EVAL_GLOBAL);
}
return TCL_OK;
} else {
diff --git a/unix/tclUnixFCmd.c b/unix/tclUnixFCmd.c
index 26429df..3d44124 100644
--- a/unix/tclUnixFCmd.c
+++ b/unix/tclUnixFCmd.c
@@ -789,8 +789,7 @@ TclpObjCopyDirectory(
Tcl_DStringFree(&dstString);
if (ret != TCL_OK) {
- *errorPtr = Tcl_NewStringObj(Tcl_DStringValue(&ds), -1);
- Tcl_DStringFree(&ds);
+ *errorPtr = TclDStringToObj(&ds);
Tcl_IncrRefCount(*errorPtr);
}
return ret;
@@ -843,8 +842,7 @@ TclpObjRemoveDirectory(
Tcl_DStringFree(&pathString);
if (ret != TCL_OK) {
- *errorPtr = Tcl_NewStringObj(Tcl_DStringValue(&ds), -1);
- Tcl_DStringFree(&ds);
+ *errorPtr = TclDStringToObj(&ds);
Tcl_IncrRefCount(*errorPtr);
}
return ret;
diff --git a/unix/tclUnixFile.c b/unix/tclUnixFile.c
index 5f9f9b3..c39e7b6 100644
--- a/unix/tclUnixFile.c
+++ b/unix/tclUnixFile.c
@@ -149,9 +149,7 @@ TclpFindExecutable(
#endif
{
Tcl_ExternalToUtfDString(NULL, name, -1, &utfName);
- TclSetObjNameOfExecutable(
- Tcl_NewStringObj(Tcl_DStringValue(&utfName), -1), NULL);
- Tcl_DStringFree(&utfName);
+ TclSetObjNameOfExecutable(TclDStringToObj(&utfName), NULL);
goto done;
}
@@ -185,9 +183,7 @@ TclpFindExecutable(
Tcl_DStringFree(&nameString);
Tcl_ExternalToUtfDString(NULL, Tcl_DStringValue(&buffer), -1, &utfName);
- TclSetObjNameOfExecutable(
- Tcl_NewStringObj(Tcl_DStringValue(&utfName), -1), NULL);
- Tcl_DStringFree(&utfName);
+ TclSetObjNameOfExecutable(TclDStringToObj(&utfName), NULL);
done:
Tcl_DStringFree(&buffer);
diff --git a/win/tclWinFCmd.c b/win/tclWinFCmd.c
index 65c6441..0bf21dd 100644
--- a/win/tclWinFCmd.c
+++ b/win/tclWinFCmd.c
@@ -925,7 +925,7 @@ TclpObjCopyDirectory(
} else if (!strcmp(Tcl_DStringValue(&ds), TclGetString(normDestPtr))) {
*errorPtr = destPathPtr;
} else {
- *errorPtr = Tcl_NewStringObj(Tcl_DStringValue(&ds), -1);
+ *errorPtr = TclDStringToObj(&ds);
}
Tcl_DStringFree(&ds);
Tcl_IncrRefCount(*errorPtr);