Files
ThordekkCore/fix_void_errors_batch.sh
T

70 lines
3.0 KiB
Bash
Raw Normal View History

2026-01-20 21:33:16 -03:00
#!/bin/bash
# Fix all void function return errors
echo "================================================================================
"
echo "BATCH FIX - VOID FUNCTION RETURN ERRORS"
echo "================================================================================"
FILES=(
"src/modules/Playerbot/Movement/Pathfinding/PathOptimizer.cpp"
"src/modules/Playerbot/Movement/Pathfinding/PathfindingAdapter.cpp"
"src/modules/Playerbot/AI/ExampleManager.cpp"
"src/modules/Playerbot/Movement/Core/MovementValidator.cpp"
"src/modules/Playerbot/AI/Strategy/CombatMovementStrategy.cpp"
"src/modules/Playerbot/Interaction/FlightMasterManager.cpp"
"src/modules/Playerbot/Interaction/Core/GossipHandler.cpp"
"src/modules/Playerbot/AI/ClassAI/Hunters/HunterAI.cpp"
"src/modules/Playerbot/AI/ClassAI/Warlocks/WarlockAI.cpp"
"src/modules/Playerbot/Game/QuestManager.cpp"
"src/modules/Playerbot/Advanced/GroupCoordinator.cpp"
"src/modules/Playerbot/Economy/AuctionManager.cpp"
"src/modules/Playerbot/Game/NPCInteractionManager.cpp"
"src/modules/Playerbot/AI/Combat/TargetScanner.cpp"
"src/modules/Playerbot/Interaction/Core/InteractionManager.cpp"
"src/modules/Playerbot/Social/TradeManager.cpp"
"src/modules/Playerbot/Advanced/EconomyManager.cpp"
)
TOTAL_FIXED=0
for FILE in "${FILES[@]}"; do
if [ ! -f "$FILE" ]; then
echo " [SKIP] Not found: $FILE"
continue
fi
# Count changes before
BEFORE=$(grep -c "return false;" "$FILE" 2>/dev/null || echo "0")
BEFORE=$((BEFORE + $(grep -c "return true;" "$FILE" 2>/dev/null || echo "0")))
BEFORE=$((BEFORE + $(grep -c "return nullptr;" "$FILE" 2>/dev/null || echo "0")))
BEFORE=$((BEFORE + $(grep -c "return 0;" "$FILE" 2>/dev/null || echo "0")))
BEFORE=$((BEFORE + $(grep -c "return {};" "$FILE" 2>/dev/null || echo "0")))
# Apply fixes (only standalone return statements, not in expressions)
sed -i 's/^\(\s*\)return false;$/\1return;/g' "$FILE"
sed -i 's/^\(\s*\)return true;$/\1return;/g' "$FILE"
sed -i 's/^\(\s*\)return nullptr;$/\1return;/g' "$FILE"
sed -i 's/^\(\s*\)return 0;$/\1return;/g' "$FILE"
sed -i 's/^\(\s*\)return {};$/\1return;/g' "$FILE"
# Count changes after
AFTER=$(grep -c "return false;" "$FILE" 2>/dev/null || echo "0")
AFTER=$((AFTER + $(grep -c "return true;" "$FILE" 2>/dev/null || echo "0")))
AFTER=$((AFTER + $(grep -c "return nullptr;" "$FILE" 2>/dev/null || echo "0")))
AFTER=$((AFTER + $(grep -c "return 0;" "$FILE" 2>/dev/null || echo "0")))
AFTER=$((AFTER + $(grep -c "return {};;" "$FILE" 2>/dev/null || echo "0")))
CHANGES=$((BEFORE - AFTER))
if [ $CHANGES -gt 0 ]; then
echo " [OK] $(basename $FILE) ($CHANGES fixes)"
TOTAL_FIXED=$((TOTAL_FIXED + CHANGES))
fi
done
echo ""
echo "================================================================================"
echo "TOTAL: $TOTAL_FIXED void return statements fixed in ${#FILES[@]} files"
echo "================================================================================"