Posted to tcl by Stu at Sun Feb 01 02:29:26 GMT 2026view raw
- + /* parent/lib */
- + Tcl_Obj *dirs[3] = {NULL, NULL, NULL}; /* exedir, exedirparent, lib */
- + Tcl_Size dirCount = TclGetObjExecutableAncestors(interp, 2, dirs);
- + if (dirCount == 2) {
- + assert(dirs[1]);
- + dirs[2] = Tcl_NewStringObj("lib", 3);
- + Tcl_IncrRefCount(dirs[2]);
- + objPtr = TclJoinPath(2, &dirs[1], 0);
- + if (objPtr != NULL) {
- + /* Note: TclListObjAppendIfAbsent handles 0 and non-0 ref counts */
- + (void) TclListObjAppendIfAbsent(NULL, autoPathPtr, objPtr);
- + }
- + }
- + for (size_t i = 0; i < sizeof(dirs) / sizeof(dirs[0]); ++i) {
- + if (dirs[i] != NULL) {
- + Tcl_DecrRefCount(dirs[i]);
- + }
- + }
-
Add a comment