mirror of
https://github.com/ChuckBuilds/LEDMatrix.git
synced 2026-04-10 21:03:01 +00:00
fix: Add default value for AVAILABLE_SPACE to prevent TypeError
Fix crash when df produces unexpected output that results in empty
AVAILABLE_SPACE variable, causing 'integer expression expected' error.
Problem:
- df may produce unexpected output format (different locale, unusual
filesystem name spanning lines, or non-standard df implementation)
- While '|| echo "0"' handles pipeline failures, it doesn't trigger if
awk succeeds but produces no output (empty string)
- When AVAILABLE_SPACE is empty, comparison [ "$AVAILABLE_SPACE" -lt 500 ]
fails with 'integer expression expected' error
- With set -e, this causes script to exit unexpectedly
Solution:
- Add AVAILABLE_SPACE=${AVAILABLE_SPACE:-0} before comparison to ensure
variable always has a numeric value (defaults to 0 if empty)
- This gracefully handles edge cases where df/awk produces unexpected output
This commit is contained in:
@@ -122,6 +122,8 @@ check_disk_space() {
|
||||
|
||||
# Check available space in MB
|
||||
AVAILABLE_SPACE=$(df -m / | awk 'NR==2{print $4}' || echo "0")
|
||||
# Ensure AVAILABLE_SPACE has a default value if empty (handles unexpected df output)
|
||||
AVAILABLE_SPACE=${AVAILABLE_SPACE:-0}
|
||||
|
||||
if [ "$AVAILABLE_SPACE" -lt 500 ]; then
|
||||
print_error "Insufficient disk space: ${AVAILABLE_SPACE}MB available (need at least 500MB)"
|
||||
|
||||
Reference in New Issue
Block a user