mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-01-17 01:10:10 +00:00
Use clang-format --dry-run instead of relying on git diff
This commit is contained in:
parent
ddb0522bbf
commit
45bfed3b42
@ -5,19 +5,23 @@ HAS_DIFFS=0
|
||||
|
||||
check_format() {
|
||||
local path=$1
|
||||
local tempfile=$(mktemp)
|
||||
for item in $(find $path -type f -name "*");
|
||||
do
|
||||
if [[ "$item" =~ .*\.(cpp|hpp|h) ]]; then
|
||||
echo "Checking code formatting on $item"
|
||||
$CLANG_FORMAT $item > $tempfile
|
||||
git diff --color=always --no-index $item $tempfile
|
||||
$CLANG_FORMAT --dry-run -Werror "$item"
|
||||
if [[ $? = 1 ]]; then
|
||||
local tempfile=$(mktemp)
|
||||
# Avoid having different modes in the diff.
|
||||
chmod --reference="$item" "$tempfile"
|
||||
# Generate diff
|
||||
$CLANG_FORMAT "$item" > "$tempfile"
|
||||
git diff --color=always --no-index $item $tempfile
|
||||
rm -f "$tempfile"
|
||||
HAS_DIFFS=1
|
||||
fi
|
||||
fi;
|
||||
done;
|
||||
rm -f $tempfile
|
||||
}
|
||||
|
||||
check_format "./apps"
|
||||
|
Loading…
Reference in New Issue
Block a user