Changeset 14362


Ignore:
Timestamp:
Oct 1, 2005, 4:17:42 PM (14 years ago)
Author:
jberry
Message:

Cleanup my last change a little bit:

  • Add a new proc fatal_softcontinue that either generates a fatal error, or prints a message and causes a continue if soft errors are enabled.
  • Use this throughout instead of the uglier if statement.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/base/src/port/port.tcl

    r14361 r14362  
    33exec @TCLSH@ "$0" "$@"
    44# port.tcl
    5 # $Id: port.tcl,v 1.110 2005/10/01 15:53:17 jberry Exp $
     5# $Id: port.tcl,v 1.111 2005/10/01 16:17:42 jberry Exp $
    66#
    77# Copyright (c) 2004 Robert Shaw <rshaw@opendarwin.org>
     
    167167}
    168168
     169# Produce error message and exit
    169170proc fatal s {
    170171        global argv0
    171172        ui_error "$argv0: $s"
    172173        exit 1
     174}
     175
     176
     177# Produce an error message, and exit, unless
     178# we're handling errors in a soft fashion, in which
     179# case we continue
     180proc fatal_softcontinue s {
     181        if {[global_option_isset ports_force]} {
     182                ui_error $s
     183                return -code continue
     184        } else {
     185                fatal $s
     186        }
    173187}
    174188
     
    11171131
    11181132# Perform the action
    1119 set soft_errors [global_option_isset ports_force]
    11201133switch -- $action {
    11211134
     
    11311144                                global errorInfo
    11321145                                ui_debug "$errorInfo"
    1133                                 ui_error "search for portname $portname failed: $result"
    1134                                 if {$soft_errors} continue else { exit 1 }
     1146                                fatal_softcontinue "search for portname $portname failed: $result"
    11351147                        }
    11361148               
     
    12101222                                global errorInfo
    12111223                                ui_debug "$errorInfo"
    1212                                 ui_error "port location failed: $result"
    1213                                 if {$soft_errors} continue else { exit 1 }
     1224                                fatal_softcontinue "port location failed: $result"
    12141225                        } else {
    12151226                                set version [lindex $ilist 1]
     
    12241235                                puts $imagedir
    12251236                        } else {
    1226                                 ui_error "Port $portname is not installed as an image."
    1227                                 if {$soft_errors} continue else { exit 1 }
     1237                                fatal_softcontinue "Port $portname is not installed as an image."
    12281238                        }
    12291239                }
     
    12621272                                global errorInfo
    12631273                                ui_debug "$errorInfo"
    1264                                 ui_error "port activate failed: $result"
    1265                                 if {$soft_errors} continue else { exit 1 }
     1274                                fatal_softcontinue "port activate failed: $result"
    12661275                        }
    12671276                }
     
    12741283                                global errorInfo
    12751284                                ui_debug "$errorInfo"
    1276                                 ui_error "port deactivate failed: $result"
    1277                                 if {$soft_errors} continue else { exit 1 }
     1285                                fatal_softcontinue "port deactivate failed: $result"
    12781286                        }
    12791287                }
     
    13201328                                global errorInfo
    13211329                                ui_debug "$errorInfo"
    1322                                 ui_error "port compact failed: $result"
    1323                                 if {$soft_errors} continue else { exit 1 }
     1330                                fatal_softcontinue "port compact failed: $result"
    13241331                        }
    13251332                }
     
    13321339                                global errorInfo
    13331340                                ui_debug "$errorInfo"
    1334                                 ui_error "port uncompact failed: $result"
    1335                                 if {$soft_errors} continue else { exit 1 }
     1341                                fatal_softcontinue "port uncompact failed: $result"
    13361342                        }
    13371343                }
     
    13521358                                global errorInfo
    13531359                                ui_debug "$errorInfo"
    1354                                 ui_error "port uninstall failed: $result"
    1355                                 if {$soft_errors} continue else { exit 1 }
     1360                                fatal_softcontinue "port uninstall failed: $result"
    13561361                        }
    13571362                }
     
    13691374                                                global errorInfo
    13701375                                                ui_debug "$errorInfo"
    1371                                                 ui_error "port installed failed: $result"
    1372                                                 if {$soft_errors} continue else { exit 1 }
     1376                                                fatal_softcontinue "port installed failed: $result"
    13731377                                        }
    13741378                                }
     
    14161420                                                global errorInfo
    14171421                                                ui_debug "$errorInfo"
    1418                                                 ui_error "port outdated failed: $result"
    1419                                                 if {$soft_errors} continue else { exit 1 }
     1422                                                fatal_softcontinue "port outdated failed: $result"
    14201423                                        }
    14211424                                }
     
    14501453                                        global errorInfo
    14511454                                        ui_debug "$errorInfo"
    1452                                         ui_error "search for portname $portname failed: $result"
    1453                                         if {$soft_errors} continue else { exit 1 }
     1455                                        fatal_softcontinue "search for portname $portname failed: $result"
    14541456                                }
    14551457                                if {[llength $res] < 2} {
     
    15291531                                global errorInfo
    15301532                                ui_debug "$errorInfo"
    1531                                 ui_error "search for portname $portname failed: $result"
    1532                                 if {$soft_errors} continue else { exit 1 }
     1533                                fatal_softcontinue "search for portname $portname failed: $result"
    15331534                        }
    15341535       
     
    15681569                                global errorInfo
    15691570                                ui_debug "$errorInfo"
    1570                                 ui_error "search for portname $portname failed: $result"
    1571                                 if {$soft_errors} continue else { exit 1 }
     1571                                fatal_softcontinue "search for portname $portname failed: $result"
    15721572                        }
    15731573               
     
    16001600                                global errorInfo
    16011601                                ui_debug "$errorInfo"
    1602                                 ui_error "search for portname $portname failed: $result"
    1603                                 if {$soft_errors} continue else { exit 1 }
     1602                                fatal_softcontinue "search for portname $portname failed: $result"
    16041603                        }
    16051604                        foreach {name array} $res {
     
    16501649                                global errorInfo
    16511650                                ui_debug "$errorInfo"
    1652                                 ui_error "search for portname $search_string failed: $result"
    1653                                 if {$soft_errors} continue else { exit 1 }
     1651                                fatal_softcontinue "search for portname $search_string failed: $result"
    16541652                        }
    16551653
     
    16971695                                        global errorInfo
    16981696                                        ui_debug "$errorInfo"
    1699                                         ui_error "search for portname $portname failed: $result"
    1700                                         if {$soft_errors} continue else { exit 1 }
     1697                                        fatal_softcontinue "search for portname $portname failed: $result"
    17011698                                }
    17021699                                if {[llength $res] < 2} {
    1703                                         ui_error "Port $portname not found"
    1704                                         if {$soft_errors} continue else { exit 1 }
     1700                                        fatal_softcontinue "Port $portname not found"
    17051701                                }
    17061702                                array set portinfo [lindex $res 1]
     
    17261722                                global errorInfo
    17271723                                ui_debug "$errorInfo"
    1728                                 ui_error "Unable to open port: $result"
    1729                                 if {$soft_errors} continue else { exit 1 }
     1724                                fatal_softcontinue "Unable to open port: $result"
    17301725                        }
    17311726                        if {[catch {set result [dportexec $workername $target]} result]} {
    17321727                                global errorInfo
     1728                                dportclose $workername
    17331729                                ui_debug "$errorInfo"
    1734                                 ui_error "Unable to execute port: $result"
    1735                                 dportclose $workername
    1736                                 if {$soft_errors} continue else { exit 1 }
     1730                                fatal_softcontinue "Unable to execute port: $result"
    17371731                        }
    17381732               
Note: See TracChangeset for help on using the changeset viewer.