Index: openacs-4/packages/acs-tcl/acs-tcl.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-tcl/acs-tcl.info,v diff -u -r1.95.2.77 -r1.95.2.78 --- openacs-4/packages/acs-tcl/acs-tcl.info 2 Sep 2024 12:54:17 -0000 1.95.2.77 +++ openacs-4/packages/acs-tcl/acs-tcl.info 27 Dec 2024 18:25:41 -0000 1.95.2.78 @@ -9,7 +9,7 @@ f t - + OpenACS The Kernel Tcl API library. 2024-09-02 @@ -18,7 +18,7 @@ GPL version 2 3 - + Index: openacs-4/packages/acs-tcl/tcl/install-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-tcl/tcl/install-procs.tcl,v diff -u -r1.35.2.18 -r1.35.2.19 --- openacs-4/packages/acs-tcl/tcl/install-procs.tcl 27 Dec 2024 12:32:28 -0000 1.35.2.18 +++ openacs-4/packages/acs-tcl/tcl/install-procs.tcl 27 Dec 2024 18:25:41 -0000 1.35.2.19 @@ -116,10 +116,10 @@ regsub -all -- {//} $mount_point "/" mount_point set mount_point [string trim $mount_point " /"] - if {[string is space $mount_point] || $mount_point eq "/"} { + if {$mount_point eq ""} { array set site_node [site_node::get -url "/"] - if {$site_node(object_id) ne ""} { + if {$site_node(url) eq "/"} { ns_log Error "A package is already mounted at '$mount_point', ignoring mount command" lappend out "A package is already mounted at '$mount_point', ignoring mount command" set node_id "" @@ -150,7 +150,7 @@ } # There now definitely a node with that path - if {$site_node(object_id) eq ""} { + if {[string trimright $site_node(url) /] ne "/$mount_point"} { # no package mounted - good! set node_id $site_node(node_id) } else { @@ -167,7 +167,7 @@ if {$node_id ne ""} { lappend out "Mounting new instance of package $package_key at /$mount_point" set package_id [site_node::instantiate_and_mount \ - -node_id $node_id \ + -parent_node_id $node_id \ -context_id $context_id \ -node_name $mount_point \ -package_name $instance_name \ @@ -200,10 +200,10 @@ regsub -all -- {//} $mount_point "/" mount_point set mount_point [string trim $mount_point " /"] - if {[string is space $mount_point] || $mount_point eq "/"} { + if {$mount_point eq ""} { array set site_node [site_node::get -url "/"] - if {$site_node(object_id) ne ""} { + if {$site_node(url) eq "/"} { ns_log Error "A package is already mounted at '$mount_point', ignoring mount command" lappend out "A package is already mounted at '$mount_point', ignoring mount command" set node_id "" @@ -228,7 +228,7 @@ } # There now definitely a node with that path - if {$site_node(object_id) eq ""} { + if {[string trimright $site_node(url) /] ne "/$mount_point"} { # no package mounted - good! set node_id $site_node(node_id) } else { @@ -247,6 +247,12 @@ set package_id [apm_package_id_from_key $package_key] } + # + # Probably, "node_id" is actually the parent_node_id, similar + # to the fix in install::xml::action::mount from Dec 27, 2024. + # However, we have not test or application scenario for that, + # so we leave the mount call untouched. + # set package_id [site_node::mount \ -node_id $node_id \ -object_id $package_id]