On Fri, Jan 13, 2012 at 10:57 AM, Daniel Shahaf <danie...@elego.de> wrote: > [[[ > Follow-up to r1033547: track mod_dav API change. > > In r882274, the mod_dav API changed in two ways: the signatures of > dav_new_error() and dav_new_error_tag() changed, and 'struct dav_error' > changed its errno number member into an apr_status_t. r1033547 tracked > the former change but not the latter.
dav_svn__log_err() is a very recent addition (a couple of years after my original mod_dav_svn 2.3 compatibility patch, some variant of which got committed back then). Your patch looks reasonable, but I'll stay out of the way ;) (no subversion commit bits here, and for good reason) > * subversion/mod_dav_svn/util.c > (dav_svn__log_err): Track the change to 'struct dav_error'. > ]]] > > [[[ > Index: subversion/mod_dav_svn/util.c > =================================================================== > --- subversion/mod_dav_svn/util.c (revision 1231107) > +++ subversion/mod_dav_svn/util.c (working copy) > @@ -629,19 +629,20 @@ void dav_svn__log_err(request_rec *r, > /* Log the errors */ > /* ### should have a directive to log the first or all */ > for (errscan = err; errscan != NULL; errscan = errscan->prev) { > + apr_status_t status; > + > if (errscan->desc == NULL) > continue; > > - if (errscan->save_errno != 0) { > - errno = errscan->save_errno; > - ap_log_rerror(APLOG_MARK, level, errno, r, "%s [%d, #%d]", > - errscan->desc, errscan->status, errscan->error_id); > - } > - else { > - ap_log_rerror(APLOG_MARK, level, 0, r, > - "%s [%d, #%d]", > - errscan->desc, errscan->status, errscan->error_id); > - } > +#if AP_MODULE_MAGIC_AT_LEAST(20091119,0) > + status = errscan->aprerr; > +#else > + status = errscan->save_errno; > +#endif > + > + ap_log_rerror(APLOG_MARK, level, status, r, > + "%s [%d, #%d]", > + errscan->desc, errscan->status, errscan->error_id); > } > } > > ]]] -- Born in Roswell... married an alien...