#!/bin/bash
+INVALID_EXIT=0
+
pushd () {
command pushd "$@" > /dev/null
}
CPP_FILES_TO_CHECK=${ARR[*]}
if [[ ${#CPP_FILES_TO_CHECK} -ne 0 ]]; then
clang-format-3.9 -i $CPP_FILES_TO_CHECK
+ EXIT_CODE=$?
+ if [[ $EXIT_CODE -ne 0 ]]; then
+ INVALID_EXIT=$EXIT_CODE
+ fi
fi
popd
done
PYTHON_FILES_TO_CHECK=${ARR[*]}
if [[ ${#PYTHON_FILES_TO_CHECK} -ne 0 ]]; then
yapf -i --style='{based_on_style: pep8, column_limit: 90}' $PYTHON_FILES_TO_CHECK
+ EXIT_CODE=$?
+ if [[ $EXIT_CODE -ne 0 ]]; then
+ INVALID_EXIT=$EXIT_CODE
+ fi
fi
popd
done
git diff --ignore-submodules > format.patch
PATCHFILE_SIZE=$(stat -c%s format.patch)
-if [[ -z "${CRCHECK}" ]] && [[ $PATCHFILE_SIZE -eq 0 ]]; then
+if [[ -z "${CRCHECK}" ]] && [[ $PATCHFILE_SIZE -eq 0 ]] && [[ $INVALID_EXIT -eq 0 ]]; then
echo "[PASSED] Format checker succeed."
exit 0
fi
echo "[FAILED] Format checker failed and update code to follow convention."
echo " You can find changes in format.patch"
fi
+
+if [[ $INVALID_EXIT -ne 0 ]]; then
+ echo "[[FAILED] Invalid format checker exit."
+fi
exit 1