
Fix "The Checksum" bug.

apr_md5_final() may be called more than once if we ever retry_txn().
This invalidates our apr_md5_ctx_t structure, causing a bogus checksum
to be produced (& stored) on the second call to apr_md5_final().
The solution is always call apr_md5_final() on a temporary copy of the
structure... inspired by a patch from Brandon Ehle.

BTW:  this change allows me to run three simultaneous stress.pl
processes with no problems, for an indefinite amount of time.

* reps-strings.c (txn_body_write_close_rep): always call apr_md5_final()
  on a temporary copy of the apr_md5_cxt_t.


git-svn-id: f8a4e5e023278da1e04e203c7fe051e3c4285d88@844956 13f79535-47bb-0310-9956-ffa450edef68

wbond/subversion,wbond/subversion,wbond/subversion,wbond/subversion,YueLinHo/Subversion,YueLinHo/Subversion,wbond/subversion,YueLinHo/Subversion,YueLinHo/Subversion,wbond/subversion,YueLinHo/Subversion,YueLinHo/Subversion,wbond/subversion,YueLinHo/Subversion,YueLinHo/Subversion