<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository mpbb.
</pre>
<p><a href="https://github.com/macports/mpbb/commit/9135194bf94f6d5c6309ec6173cd9a112b7f5969">https://github.com/macports/mpbb/commit/9135194bf94f6d5c6309ec6173cd9a112b7f5969</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 9135194bf94f6d5c6309ec6173cd9a112b7f5969
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Tue Mar 20 12:30:31 2018 +1100
<span style='display:block; white-space:pre;color:#404040;'> Avoid linear search
</span>---
tools/sort-with-subports.tcl | 19 +++++++++----------
1 file changed, 9 insertions(+), 10 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/tools/sort-with-subports.tcl b/tools/sort-with-subports.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 97ee43c..853ae67 100755
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/tools/sort-with-subports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/tools/sort-with-subports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -47,16 +47,15 @@ proc ui_channels {priority} {
</span>
proc process_port_deps {portname portdeps_in portlist_in} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- upvar $portdeps_in portdeps
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- upvar $portlist_in portlist
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[info exists portdeps($portname)]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- foreach portdep $portdeps($portname) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {$portdep ni $portlist} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ upvar $portdeps_in portdeps
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ upvar $portlist_in portlist
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach portdep $portdeps($portname) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[info exists portdeps($portdep)]} {
</span> process_port_deps $portdep portdeps portlist
<span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- lappend portlist $portname
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lappend portlist $portname
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ unset portdeps($portname)
</span> }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -123,7 +122,7 @@ while {$todo ne {}} {
</span>
set portlist [list]
foreach portname [lsort -dictionary [array names portdepinfo]] {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {$portname ni $portlist} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[info exists portdepinfo($portname)]} {
</span> process_port_deps $portname portdepinfo portlist
}
}
</pre><pre style='margin:0'>
</pre>