<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/8a088c30d80c7c3eca10848f28835e1c180229b1">https://github.com/macports/macports-base/commit/8a088c30d80c7c3eca10848f28835e1c180229b1</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 8a088c3  Quote port archive paths correctly when extracting
</span>8a088c3 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 8a088c30d80c7c3eca10848f28835e1c180229b1
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Sat Apr 18 09:45:52 2020 +1000

<span style='display:block; white-space:pre;color:#404040;'>    Quote port archive paths correctly when extracting
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Fixes: https://trac.macports.org/ticket/60365
</span>---
 src/macports1.0/macports.tcl     |  1 +
 src/package1.0/portunarchive.tcl | 12 ++++++------
 src/registry2.0/portimage.tcl    | 12 ++++++------
 3 files changed, 13 insertions(+), 12 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/macports1.0/macports.tcl b/src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 62841c1..138f45c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1478,6 +1478,7 @@ proc macports::worker_init {workername portpath porturl portbuildpath options va
</span>     $workername alias _mportsearchpath _mportsearchpath
     $workername alias _portnameactive _portnameactive
     $workername alias get_actual_cxx_stdlib macports::get_actual_cxx_stdlib
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    $workername alias shellescape macports::shellescape
</span> 
     # New Registry/Receipts stuff
     $workername alias registry_new registry::new_entry
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/package1.0/portunarchive.tcl b/src/package1.0/portunarchive.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index a865056..a859bbd 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/package1.0/portunarchive.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/package1.0/portunarchive.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -150,13 +150,13 @@ proc portunarchive::unarchive_command_setup {args} {
</span>                     set gzip "gzip"
                     if {[catch {set gzip [findBinary $gzip ${portutil::autoconf::gzip_path}]} errmsg] == 0} {
                         ui_debug "Using $gzip"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        set unarchive.pipe_cmd "$gzip -d -c ${unarchive.path} |"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        set unarchive.pipe_cmd "$gzip -d -c [shellescape ${unarchive.path}] |"
</span>                     } else {
                         ui_debug $errmsg
                         return -code error "No '$gzip' was found on this system!"
                     }
                 } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    set unarchive.args "-f ${unarchive.path} ."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    set unarchive.args "-f [shellescape ${unarchive.path}] ."
</span>                 }
             } else {
                 ui_debug $errmsg
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -193,13 +193,13 @@ proc portunarchive::unarchive_command_setup {args} {
</span>                     }
                     if {[catch {set gzip [findBinary $gzip $hint]} errmsg] == 0} {
                         ui_debug "Using $gzip"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        set unarchive.pipe_cmd "$gzip -d -c ${unarchive.path} |"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        set unarchive.pipe_cmd "$gzip -d -c [shellescape ${unarchive.path}] |"
</span>                     } else {
                         ui_debug $errmsg
                         return -code error "No '$gzip' was found on this system!"
                     }
                 } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    set unarchive.args "${unarchive.path}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    set unarchive.args [shellescape ${unarchive.path}]
</span>                 }
             } else {
                 ui_debug $errmsg
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -212,7 +212,7 @@ proc portunarchive::unarchive_command_setup {args} {
</span>                 ui_debug "Using $xar"
                 set unarchive.cmd "$xar"
                 set unarchive.pre_args {-xvpf}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                set unarchive.args "${unarchive.path}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                set unarchive.args [shellescape ${unarchive.path}]
</span>             } else {
                 ui_debug $errmsg
                 return -code error "No '$xar' was found on this system!"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -228,7 +228,7 @@ proc portunarchive::unarchive_command_setup {args} {
</span>                 } else {
                     set unarchive.pre_args {-o}
                 }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                set unarchive.args "${unarchive.path} -d ."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                set unarchive.args "[shellescape ${unarchive.path}] -d ."
</span>             } else {
                 ui_debug $errmsg
                 return -code error "No '$unzip' was found on this system!"
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/registry2.0/portimage.tcl b/src/registry2.0/portimage.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index b12b0cb..8a4548d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/registry2.0/portimage.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/registry2.0/portimage.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -336,13 +336,13 @@ proc extract_archive_to_tmpdir {location} {
</span>                         set gzip "gzip"
                         if {[catch {set gzip [macports::findBinary $gzip ${macports::autoconf::gzip_path}]} errmsg] == 0} {
                             ui_debug "Using $gzip"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                            set unarchive.pipe_cmd "$gzip -d -c ${location} |"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            set unarchive.pipe_cmd "$gzip -d -c [macports::shellescape ${location}] |"
</span>                         } else {
                             ui_debug $errmsg
                             throw MACPORTS "No '$gzip' was found on this system!"
                         }
                     } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        set unarchive.args "-f ${location} ."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        set unarchive.args "-f [macports::shellescape ${location}] ."
</span>                     }
                 } else {
                     ui_debug $errmsg
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -394,13 +394,13 @@ proc extract_archive_to_tmpdir {location} {
</span>                     }
                     if {[catch {set gzip [macports::findBinary $gzip $hint]} errmsg] == 0} {
                         ui_debug "Using $gzip"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        set unarchive.pipe_cmd "$gzip -d -c ${location} |"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        set unarchive.pipe_cmd "$gzip -d -c [macports::shellescape ${location}] |"
</span>                     } else {
                         ui_debug $errmsg
                         throw MACPORTS "No '$gzip' was found on this system!"
                     }
                 } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    set unarchive.args "${location}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    set unarchive.args [macports::shellescape ${location}]
</span>                 }
             }
             xar {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -409,7 +409,7 @@ proc extract_archive_to_tmpdir {location} {
</span>                     ui_debug "Using $xar"
                     set unarchive.cmd "$xar"
                     set unarchive.pre_args {-xvpf}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    set unarchive.args "${location}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    set unarchive.args [macports::shellescape ${location}]
</span>                 } else {
                     ui_debug $errmsg
                     throw MACPORTS "No '$xar' was found on this system!"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -425,7 +425,7 @@ proc extract_archive_to_tmpdir {location} {
</span>                     } else {
                         set unarchive.pre_args {-o}
                     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    set unarchive.args "${location} -d ."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    set unarchive.args "[macports::shellescape ${location}] -d ."
</span>                 } else {
                     ui_debug $errmsg
                     throw MACPORTS "No '$unzip' was found on this system!"
</pre><pre style='margin:0'>

</pre>