Ticket #7721: darwinports.2.tcl-patch

File darwinports.2.tcl-patch, 1.7 KB (added by danielluke (Daniel J. Luke), 18 years ago)

make port upgrade work with direct mode

Line 
1Index: darwinports.tcl
2===================================================================
3RCS file: /Volumes/src/cvs/od/proj/darwinports/base/src/darwinports1.0/darwinports.tcl,v
4retrieving revision 1.206
5diff -u -r1.206 darwinports.tcl
6--- darwinports.tcl     16 Jan 2006 04:39:11 -0000      1.206
7+++ darwinports.tcl     11 Mar 2006 17:59:48 -0000
8@@ -1435,6 +1435,7 @@
9 
10 # upgrade procedure
11 proc darwinports::upgrade {portname dspec variationslist optionslist {depscachename ""}} {
12+       global darwinports::registry.installtype
13        array set options $optionslist
14        array set variations $variationslist
15        if {![string match "" $depscachename]} {
16@@ -1538,7 +1539,7 @@
17                        }
18                        }
19                }
20-               if { [lindex $num 4] == 0} {
21+               if { [lindex $num 4] == 0 && 0 == [string compare "image" ${darwinports::registry.installtype}] } {
22                        # activate the latest installed version
23                        if {[catch {portimage::activate $portname $version_installed$variant $optionslist} result]} {
24                                global errorInfo
25@@ -1665,7 +1666,7 @@
26        }
27 
28        # uninstall old ports
29-       if {[info exists options(port_uninstall_old)] || $epoch_override == 1 || [info exists options(ports_force)] } {
30+       if {[info exists options(port_uninstall_old)] || $epoch_override == 1 || [info exists options(ports_force)] || 0 != [string compare "image" ${darwinports::registry.installtype}] } {
31                # uninstall old
32                ui_debug "Uninstalling $portname $version_installed$oldvariant"
33                if {[catch {portuninstall::uninstall $portname $version_installed$oldvariant $optionslist} result]} {
34