1*aca3beaaSApple OSS Distributions#!/bin/sh 2*aca3beaaSApple OSS Distributionsset -e 3*aca3beaaSApple OSS Distributions 4*aca3beaaSApple OSS Distributions# Abort a commit if the code style is incorrect. 5*aca3beaaSApple OSS Distributions 6*aca3beaaSApple OSS Distributions# Get a list of paths with staged changes. 7*aca3beaaSApple OSS DistributionsFILES=$(git diff --staged --name-only) 8*aca3beaaSApple OSS Distributions# Check the paths for style issues. 9*aca3beaaSApple OSS DistributionsRESULT=0 10*aca3beaaSApple OSS Distributionsif [ ! -z "$FILES" ]; then 11*aca3beaaSApple OSS Distributions # Stash any unstaged changes. 12*aca3beaaSApple OSS Distributions git stash --quiet --keep-index 13*aca3beaaSApple OSS Distributions ./tools/uncrustify.sh $FILES || RESULT=$? 14*aca3beaaSApple OSS Distributions # Restore the unstaged changes. 15*aca3beaaSApple OSS Distributions git stash pop --quiet 16*aca3beaaSApple OSS Distributionsfi 17*aca3beaaSApple OSS Distributionsexit $RESULT 18