Add knerrorOrWarningIfForced helper procedure

This commit is contained in:
Xavier Delaruelle
2023-12-21 11:11:35 +01:00
parent 6d5df44ae7
commit 844dd4e0d0

View File

@@ -90,6 +90,16 @@ proc knerror {message {code MODULES_ERR_KNOWN}} {
error $message {} $code
}
proc knerrorOrWarningIfForced {message {code MODULES_ERR_KNOWN}} {
if {[getState force]} {
if {[string length $message]} {
reportWarning $message
}
} else {
knerror $message $code
}
}
# save message if report is not yet initialized
proc reportErrorAndExit {message} {
lappend ::errreport_buffer [list reportErrorAndExit $message]
@@ -2051,12 +2061,8 @@ proc reportMissingPrereqError {curmodnamevr args} {
set msg [expr {$retiseval || [getState force] ? [getReqNotLoadedMsg\
$args] : [getErrPrereqMsg $args]}]
}
# still proceed if force mode enabled
if {[getState force]} {
reportWarning $msg
} else {
knerror $msg MODULES_ERR_GLOBAL
}
knerrorOrWarningIfForced $msg MODULES_ERR_GLOBAL
}
# create appropriate message and kind of report when a conflict is detected
@@ -2065,14 +2071,10 @@ proc reportPresentConflictError {curmodnamevr mod isloading} {
set msg [expr {$is_con_mod_eval || [getState force] ? [getConIsLoadedMsg\
[list $mod] $isloading] : [getErrConflictMsg $mod]}]
# still proceed if force mode enabled
if {[getState force]} {
reportWarning $msg
# indicate message has already been reported
lappend ::report_conflict([currentState evalid]) $mod
} else {
knerror $msg MODULES_ERR_GLOBAL
}
# indicate message has already been reported
lappend ::report_conflict([currentState evalid]) $mod
knerrorOrWarningIfForced $msg MODULES_ERR_GLOBAL
}
# ;;; Local Variables: ***