[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Issue #2265 (FSFS multithreaded locking bug) loose ends

From: <kfogel_at_collab.net>
Date: 2005-04-12 20:12:40 CEST

"Peter N. Lundblad" <peter@famlundblad.se> writes:
> Maybe you resolved this in IRC, but I think it is just a matter of adding
> the svn_{fs_utf}_initialize lines to dav_svn_init, passing p (the config
> pool) as the argument. You don't to make sure that you call those
> functions only once, sinc that's taken care of by the functions (Apache
> calls pot_config hooks twice, according to Justin).

Here's the patch I'm testing right now, tell me if you see anything
wrong. So far it's passed about half of basic_tests.py, and hasn't
failed anything. Tests are still running.

[[[
Follow up to r14067:

* subversion/mod_dav_svn/mod_dav_svn.c: Add new includes for below.
  (dav_svn_init): Call svn_fs_initialize and svn_utf_initialize here,
  as per Greg Hudson's request and Peter Lundblad's advice, in
  http://subversion.tigris.org/servlets/ReadMsg?list=dev&msgNo=97602 and
  http://subversion.tigris.org/servlets/ReadMsg?list=dev&msgNo=97931
  respectively.
]]]

Index: subversion/mod_dav_svn/mod_dav_svn.c
===================================================================
--- subversion/mod_dav_svn/mod_dav_svn.c (revision 14148)
+++ subversion/mod_dav_svn/mod_dav_svn.c (working copy)
@@ -23,12 +23,15 @@
 #include <httpd.h>
 #include <http_config.h>
 #include <http_request.h>
+#include <http_log.h>
 #include <mod_dav.h>
 #include <ap_provider.h>
 
 #include <apr_strings.h>
 
 #include "svn_version.h"
+#include "svn_fs.h"
+#include "svn_utf.h"
 
 #include "dav_svn.h"
 
@@ -73,7 +76,21 @@
 static int dav_svn_init(apr_pool_t *p, apr_pool_t *plog, apr_pool_t *ptemp,
                         server_rec *s)
 {
+ svn_error_t *serr;
     ap_add_version_component(p, "SVN/" SVN_VER_NUMBER);
+
+ serr = svn_fs_initialize(p);
+ if (serr)
+ {
+ ap_log_perror(APLOG_MARK, APLOG_ERR, serr->apr_err, p,
+ "dav_svn_init: error calling svn_fs_initialize: '%s'",
+ serr->message);
+ return HTTP_INTERNAL_SERVER_ERROR;
+ }
+
+ /* This returns void, so we can't check for error. */
+ svn_utf_initialize(p);
+
     return OK;
 }
 

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Apr 12 20:43:29 2005

This is an archived mail posted to the Subversion Dev mailing list.