<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-base.

</pre>
<p><a href="https://github.com/macports/macports-base/commit/86546c428da956de48870956c0e992459b5effc2">https://github.com/macports/macports-base/commit/86546c428da956de48870956c0e992459b5effc2</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 86546c428 open_statefile: always regain root when needed
</span>86546c428 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 86546c428da956de48870956c0e992459b5effc2
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Sun Jun 16 22:45:39 2024 +1000

<span style='display:block; white-space:pre;color:#404040;'>    open_statefile: always regain root when needed
</span>---
 src/port1.0/portutil.tcl      | 6 ++++++
 src/port1.0/tests/library.tcl | 1 +
 2 files changed, 7 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portutil.tcl b/src/port1.0/portutil.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 1cf31e33d..32792f48d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portutil.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portutil.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1736,10 +1736,16 @@ proc open_statefile {args} {
</span>     if {![tbool ports_dryrun]} {
         set need_chown 0
         if {![file isdirectory $workpath/.home]} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {[getuid] == 0 && [geteuid] != 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                elevateToRoot create_workpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span>             file mkdir $workpath/.home
             set need_chown 1
         }
         if {![file isdirectory $workpath/.tmp]} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {[getuid] == 0 && [geteuid] != 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                elevateToRoot create_workpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span>             file mkdir $workpath/.tmp
             set need_chown 1
         }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/tests/library.tcl b/src/port1.0/tests/library.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index c86e00090..19381cd83 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/tests/library.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/tests/library.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -5,6 +5,7 @@ proc macports_worker_init {} {
</span>     interp alias {} _cd {} cd
     proc PortSystem {version} {
         package require port $version
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        portmain::report_platform_info
</span>     }
     # Clearly separate slave interpreters and the master interpreter.
     interp alias {} mport_exec      {} mportexec
</pre><pre style='margin:0'>

</pre>