summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2024-03-06 21:11:37 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2024-03-06 21:11:37 (GMT)
commit2e8f7eda125ef2e970e2d110f140b4fe658a728b (patch)
tree25b6db2adcb218c2ea1fc5916155f342588a09c4
parenta8475d1b0d906cc16fd71aae4c5375e5424c9925 (diff)
downloadtcl-2e8f7eda125ef2e970e2d110f140b4fe658a728b.zip
tcl-2e8f7eda125ef2e970e2d110f140b4fe658a728b.tar.gz
tcl-2e8f7eda125ef2e970e2d110f140b4fe658a728b.tar.bz2
Reduce code duplication (borrowed from "bug-910d67a229fe7f65" branch, but independant from any bug)
-rw-r--r--generic/tclNamesp.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/generic/tclNamesp.c b/generic/tclNamesp.c
index 290dcea..e6179c9 100644
--- a/generic/tclNamesp.c
+++ b/generic/tclNamesp.c
@@ -2280,11 +2280,8 @@ TclGetNamespaceForQualName(
if (flags & TCL_FIND_ONLY_NS) {
nsName = start;
} else {
- *nsPtrPtr = nsPtr;
- *altNsPtrPtr = altNsPtr;
*simpleNamePtr = start;
- Tcl_DStringFree(&buffer);
- return TCL_OK;
+ goto done;
}
} else {
/*
@@ -2364,11 +2361,8 @@ TclGetNamespaceForQualName(
*/
if ((nsPtr == NULL) && (altNsPtr == NULL)) {
- *nsPtrPtr = NULL;
- *altNsPtrPtr = NULL;
*simpleNamePtr = NULL;
- Tcl_DStringFree(&buffer);
- return TCL_OK;
+ goto done;
}
start = end;
@@ -2398,6 +2392,7 @@ TclGetNamespaceForQualName(
nsPtr = NULL;
}
+done:
*nsPtrPtr = nsPtr;
*altNsPtrPtr = altNsPtr;
Tcl_DStringFree(&buffer);