[46915] contrib/port-rdeps/port-rdeps

raimue at macports.org raimue at macports.org
Mon Feb 16 21:06:36 PST 2009


Revision: 46915
          http://trac.macports.org/changeset/46915
Author:   raimue at macports.org
Date:     2009-02-16 21:06:34 -0800 (Mon, 16 Feb 2009)
Log Message:
-----------
port-rdeps:
Use an array instead of a list for the list of seen ports. Do not recurse or
output the same edge multiple times.

Modified Paths:
--------------
    contrib/port-rdeps/port-rdeps

Modified: contrib/port-rdeps/port-rdeps
===================================================================
--- contrib/port-rdeps/port-rdeps	2009-02-17 04:44:34 UTC (rev 46914)
+++ contrib/port-rdeps/port-rdeps	2009-02-17 05:06:34 UTC (rev 46915)
@@ -16,7 +16,7 @@
 set MY_VERSION 1.0
 
 
-set portsSeen [list]
+array set portsSeen {}
 
 
 proc printUsage {} {
@@ -71,16 +71,17 @@
    if {$outputAscii} {
       set spaces [string repeat " " [expr {$outputAscii * 2}]]
       set outputAscii [expr {$outputAscii + 1}]
+   } elseif {[info exists portsSeen($portName)]} {
+      return
    }
+   set portsSeen($portName) 1
    foreach aList $portDependencies($portName) {
       set aType [lindex $aList 0]
       set aBy   [lindex $aList 1]
       set aPort [lindex $aList 2]
 
-      if {$outputAscii && $reduceAscii && [lsearch -exact $portsSeen $aPort] != -1} {
+      if {$outputAscii && $reduceAscii && [info exists portsSeen($aPort)]} {
          continue
-      } else {
-         lappend portsSeen $aPort
       }
 
       set style "solid"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20090216/2797ea4d/attachment.html>


More information about the macports-changes mailing list