Merge branch 'jt/connectivity-check-optim-in-partial-clone'
[git] / t / lib-httpd / apply-one-time-perl.sh
1 #!/bin/sh
2
3 # If "one-time-perl" exists in $HTTPD_ROOT_PATH, run perl on the HTTP response,
4 # using the contents of "one-time-perl" as the perl command to be run. If the
5 # response was modified as a result, delete "one-time-perl" so that subsequent
6 # HTTP responses are no longer modified.
7 #
8 # This can be used to simulate the effects of the repository changing in
9 # between HTTP request-response pairs.
10 if test -f one-time-perl
11 then
12         LC_ALL=C
13         export LC_ALL
14
15         "$GIT_EXEC_PATH/git-http-backend" >out
16         perl -pe "$(cat one-time-perl)" out >out_modified
17
18         if cmp -s out out_modified
19         then
20                 cat out
21         else
22                 cat out_modified
23                 rm one-time-perl
24         fi
25 else
26         "$GIT_EXEC_PATH/git-http-backend"
27 fi