aboutsummaryrefslogtreecommitdiffstats
path: root/ports-mgmt/portupgrade-devel
diff options
context:
space:
mode:
authoredwin <edwin@FreeBSD.org>2006-01-07 09:04:28 +0800
committeredwin <edwin@FreeBSD.org>2006-01-07 09:04:28 +0800
commit5a3ee454c7ac6da7b3fe0e567bae636957ee728a (patch)
tree0bb0e01d831a0ee23e2648c2acda467220d2ac0c /ports-mgmt/portupgrade-devel
parent47ac07ccdf7ad15acbd6a161b984c388b0a0b975 (diff)
downloadfreebsd-ports-gnome-5a3ee454c7ac6da7b3fe0e567bae636957ee728a.tar.gz
freebsd-ports-gnome-5a3ee454c7ac6da7b3fe0e567bae636957ee728a.tar.zst
freebsd-ports-gnome-5a3ee454c7ac6da7b3fe0e567bae636957ee728a.zip
sysutils/portupgrade: Fix yet another infinite loop.
Check and avoid infinite loop when MOVED has an entry such as: games/scummvm|emulators/scummvm|2004-04-06|new category emulators/scummvm|games/scummvm|2004-04-13|new category (games/scummvm -> emulators/scummvm -> games/scummvm -> ...) Reported by: Bohdan Horst <nexus at hoth dot amu dot edu dot pl> PR: ports/91402 Submitted by: KOMATSU Shinichiro <koma2@lovepeers.org>
Diffstat (limited to 'ports-mgmt/portupgrade-devel')
-rw-r--r--ports-mgmt/portupgrade-devel/Makefile2
-rw-r--r--ports-mgmt/portupgrade-devel/files/patch-lib-portsdb.rb13
2 files changed, 14 insertions, 1 deletions
diff --git a/ports-mgmt/portupgrade-devel/Makefile b/ports-mgmt/portupgrade-devel/Makefile
index bf0fdbc7e68d..9e95e5d7da78 100644
--- a/ports-mgmt/portupgrade-devel/Makefile
+++ b/ports-mgmt/portupgrade-devel/Makefile
@@ -7,7 +7,7 @@
PORTNAME= portupgrade
PORTVERSION= 2.0.1
-PORTREVISION= 0
+PORTREVISION= 1
PORTEPOCH= 1
CATEGORIES= sysutils
MASTER_SITES= http://dists.lovepeers.org/distfiles/portupgrade/
diff --git a/ports-mgmt/portupgrade-devel/files/patch-lib-portsdb.rb b/ports-mgmt/portupgrade-devel/files/patch-lib-portsdb.rb
new file mode 100644
index 000000000000..3d3278148e18
--- /dev/null
+++ b/ports-mgmt/portupgrade-devel/files/patch-lib-portsdb.rb
@@ -0,0 +1,13 @@
+Index: lib/portsdb.rb
+===================================================================
+--- lib/portsdb.rb (revision 74)
++++ lib/portsdb.rb (revision 75)
+@@ -91,7 +91,7 @@
+ while true
+ if moved = @moved[me]
+ t << moved if t.empty? or t.last.seq < moved.seq
+- if me.nil? or me == moved.to
++ if me.nil? or t.map{|p| p.to}.include?(me)
+ break
+ else
+ me = moved.to