summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2020-11-03 16:24:01 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2020-11-03 16:24:01 (GMT)
commite69d8e8e92d1212f636f7e4bf4e70d4c66be5305 (patch)
tree07c53722ab26dbab745953c460b109c966633600
parent8607752aa65f484ab844296ce90d2d2e5bfc2259 (diff)
downloadtcl-e69d8e8e92d1212f636f7e4bf4e70d4c66be5305.zip
tcl-e69d8e8e92d1212f636f7e4bf4e70d4c66be5305.tar.gz
tcl-e69d8e8e92d1212f636f7e4bf4e70d4c66be5305.tar.bz2
Correct casing in some error-messages
-rw-r--r--generic/tclLoad.c22
-rw-r--r--tests/load.test4
2 files changed, 21 insertions, 5 deletions
diff --git a/generic/tclLoad.c b/generic/tclLoad.c
index bea07ed..eb60562 100644
--- a/generic/tclLoad.c
+++ b/generic/tclLoad.c
@@ -429,6 +429,22 @@ Tcl_LoadObjCmd(
*/
Tcl_ResetResult(interp);
+ } else {
+ Tcl_DStringAppend(&initName, pkgPtr->packageName, -1);
+ Tcl_DStringSetLength(&initName,
+ Tcl_UtfToTitle(Tcl_DStringValue(&initName)));
+ while (strchr(Tcl_DStringValue(&initName), ':') != NULL) {
+ char *r;
+ p = Tcl_DStringValue(&initName);
+ r = strchr((char *)p, ':');
+ if ((r != NULL) && (r[1] == ':')) {
+ memmove(r, r+2, strlen(r+1));
+ }
+ Tcl_DStringSetLength(&initName, strlen(p));
+ }
+ TclDStringAppendDString(&safeInitName, &initName);
+ TclDStringAppendLiteral(&safeInitName, "_SafeInit");
+ TclDStringAppendLiteral(&initName, "_Init");
}
/*
@@ -440,7 +456,7 @@ Tcl_LoadObjCmd(
if (pkgPtr->safeInitProc == NULL) {
Tcl_SetObjResult(interp, Tcl_ObjPrintf(
"can't use package in a safe interpreter: no"
- " %s_SafeInit procedure", pkgPtr->packageName));
+ " %s procedure", Tcl_DStringValue(&safeInitName)));
Tcl_SetErrorCode(interp, "TCL", "OPERATION", "LOAD", "UNSAFE",
NULL);
code = TCL_ERROR;
@@ -450,8 +466,8 @@ Tcl_LoadObjCmd(
} else {
if (pkgPtr->initProc == NULL) {
Tcl_SetObjResult(interp, Tcl_ObjPrintf(
- "can't attach package to interpreter: no %s_Init procedure",
- pkgPtr->packageName));
+ "can't attach package to interpreter: no %s procedure",
+ Tcl_DStringValue(&initName)));
Tcl_SetErrorCode(interp, "TCL", "OPERATION", "LOAD", "ENTRYPOINT",
NULL);
code = TCL_ERROR;
diff --git a/tests/load.test b/tests/load.test
index f6e68b9..674d2a5 100644
--- a/tests/load.test
+++ b/tests/load.test
@@ -90,7 +90,7 @@ test load-2.3 {loading with no _Init procedure} -constraints [list $dll $loaded]
{TCL LOOKUP LOAD_SYMBOL *Foo_Init}]
test load-2.4 {loading with no _SafeInit procedure} [list $dll $loaded] {
list [catch {load [file join $testDir pkga$ext] {} child} msg] $msg
-} {1 {can't use package in a safe interpreter: no pkga_SafeInit procedure}}
+} {1 {can't use package in a safe interpreter: no Pkga_SafeInit procedure}}
test load-3.1 {error in _Init procedure, same interpreter} \
[list $dll $loaded] {
@@ -164,7 +164,7 @@ test load-7.2 {Tcl_StaticPackage procedure} [list teststaticpkg] {
child eval {set x "not loaded"}
list [catch {load {} another child} msg] $msg \
[child eval set x] [set x]
-} {1 {can't use package in a safe interpreter: no another_SafeInit procedure} {not loaded} loaded}
+} {1 {can't use package in a safe interpreter: no Another_SafeInit procedure} {not loaded} loaded}
test load-7.3 {Tcl_StaticPackage procedure} [list teststaticpkg] {
set x "not loaded"
teststaticpkg more 0 1