subversion-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From hwri...@apache.org
Subject svn commit: r1339349 [25/37] - in /subversion/branches/fix-rdump-editor: ./ build/ build/ac-macros/ build/generator/ build/generator/templates/ build/win32/ contrib/client-side/emacs/ contrib/client-side/vim/ contrib/server-side/ notes/ notes/api-errat...
Date Wed, 16 May 2012 20:32:54 GMT
Modified: subversion/branches/fix-rdump-editor/subversion/libsvn_wc/wc_db.h
URL: http://svn.apache.org/viewvc/subversion/branches/fix-rdump-editor/subversion/libsvn_wc/wc_db.h?rev=1339349&r1=1339348&r2=1339349&view=diff
==============================================================================
--- subversion/branches/fix-rdump-editor/subversion/libsvn_wc/wc_db.h (original)
+++ subversion/branches/fix-rdump-editor/subversion/libsvn_wc/wc_db.h Wed May 16 20:32:43
2012
@@ -687,9 +687,7 @@ svn_wc__db_base_remove(svn_wc__db_t *db,
 
      UPDATE_ROOT        FALSE
 
-   If the STATUS is normal, and the REPOS_* values are NULL, then the
-   caller should use svn_wc__db_scan_base_repos() to scan up the BASE
-   tree for the repository information.
+   If the STATUS is normal, the REPOS_* values will be non-NULL.
 
    If DEPTH is requested, and the node is NOT a directory, then the
    value will be set to svn_depth_unknown. If LOCAL_ABSPATH is a link,
@@ -1509,6 +1507,7 @@ svn_wc__db_op_mark_resolved(svn_wc__db_t
                             svn_boolean_t resolved_text,
                             svn_boolean_t resolved_props,
                             svn_boolean_t resolved_tree,
+                            const svn_skel_t *work_items,
                             apr_pool_t *scratch_pool);
 
 
@@ -2439,6 +2438,10 @@ svn_wc__db_lock_remove(svn_wc__db_t *db,
 
    All returned data will be allocated in RESULT_POOL. All temporary
    allocations will be made in SCRATCH_POOL.
+
+   ### Either delete this function and use _base_get_info instead, or
+   ### add a 'revision' output to make a complete repository node location
+   ### and rename to not say 'scan', because it doesn't.
 */
 svn_error_t *
 svn_wc__db_scan_base_repos(const char **repos_relpath,
@@ -2600,10 +2603,10 @@ svn_wc__db_scan_addition(svn_wc__db_stat
    MOVED_TO_ABSPATH will specify the path where this node was moved to
    if the node has moved-away.
 
-   If the node was moved-away, MOVED_TO_OP_ROOT_ABSPATH will specify the root
-   of the copy operation that created the move destination.
-   If LOCAL_ABSPATH itself is the root of the copy, MOVED_TO_OP_ROOT_ABSPATH
-   equals MOVED_TO_ABSPATH.
+   If the node was moved-away, MOVED_TO_OP_ROOT_ABSPATH will specify the
+   target path of the root of the move operation.  If LOCAL_ABSPATH itself
+   is the source path of the root of the move operation, then
+   MOVED_TO_OP_ROOT_ABSPATH equals MOVED_TO_ABSPATH.
 
    All OUT parameters may be set to NULL to indicate a lack of interest in
    that piece of information.
@@ -2955,7 +2958,8 @@ svn_wc__db_drop_root(svn_wc__db_t *db,
                      apr_pool_t *scratch_pool);
 
 /* Return the OP_DEPTH for LOCAL_RELPATH. */
-apr_int64_t svn_wc__db_op_depth_for_upgrade(const char *local_relpath);
+int
+svn_wc__db_op_depth_for_upgrade(const char *local_relpath);
 
 /* Set *HAVE_WORK TRUE if there is a working layer below the top layer and
    *HAVE_BASE if there is a base layer. Set *STATUS to the status of the
@@ -3096,6 +3100,23 @@ svn_wc__db_verify(svn_wc__db_t *db,
                   apr_pool_t *scratch_pool);
 
 
+/* Possibly need two structures, one with relpaths and with abspaths?
+ * Only exposed for testing at present. */
+struct svn_wc__db_moved_to_t {
+  const char *local_relpath;  /* moved-to destination */
+  int op_depth;       /* op-root of source */
+};
+
+/* Set *FINAL_ABSPATH to an array of svn_wc__db_moved_to_t for
+ * LOCAL_ABSPATH after following any and all nested moves.
+ * Only exposed for testing at present. */
+svn_error_t *
+svn_wc__db_follow_moved_to(apr_array_header_t **moved_tos,
+                           svn_wc__db_t *db,
+                           const char *local_abspath,
+                           apr_pool_t *result_pool,
+                           apr_pool_t *scratch_pool);
+
 /* @} */
 
 

Modified: subversion/branches/fix-rdump-editor/subversion/libsvn_wc/wc_db_util.c
URL: http://svn.apache.org/viewvc/subversion/branches/fix-rdump-editor/subversion/libsvn_wc/wc_db_util.c?rev=1339349&r1=1339348&r2=1339349&view=diff
==============================================================================
--- subversion/branches/fix-rdump-editor/subversion/libsvn_wc/wc_db_util.c (original)
+++ subversion/branches/fix-rdump-editor/subversion/libsvn_wc/wc_db_util.c Wed May 16 20:32:43
2012
@@ -121,6 +121,21 @@ svn_wc__db_util_open_db(svn_sqlite__db_t
   const char *sdb_abspath = svn_wc__adm_child(dir_abspath, sdb_fname,
                                               scratch_pool);
 
+  if (smode != svn_sqlite__mode_rwcreate)
+    {
+      svn_node_kind_t kind;
+
+      /* A file stat is much cheaper then a failed database open handled
+         by SQLite. */
+      SVN_ERR(svn_io_check_path(sdb_abspath, &kind, scratch_pool));
+
+      if (kind != svn_node_file)
+        return svn_error_createf(APR_ENOENT, NULL,
+                                 _("Working copy database '%s' not found"),
+                                 svn_dirent_local_style(sdb_abspath,
+                                                        scratch_pool));
+    }
+
   SVN_ERR(svn_sqlite__open(sdb, sdb_abspath, smode,
                            my_statements ? my_statements : statements,
                            0, NULL, result_pool, scratch_pool));

Modified: subversion/branches/fix-rdump-editor/subversion/libsvn_wc/workqueue.h
URL: http://svn.apache.org/viewvc/subversion/branches/fix-rdump-editor/subversion/libsvn_wc/workqueue.h?rev=1339349&r1=1339348&r2=1339349&view=diff
==============================================================================
--- subversion/branches/fix-rdump-editor/subversion/libsvn_wc/workqueue.h (original)
+++ subversion/branches/fix-rdump-editor/subversion/libsvn_wc/workqueue.h Wed May 16 20:32:43
2012
@@ -122,7 +122,7 @@ svn_wc__wq_build_file_remove(svn_skel_t 
                              apr_pool_t *result_pool,
                              apr_pool_t *scratch_pool);
 
-/* Set *WORK_ITEM to a new work item that describes a moves of
+/* Set *WORK_ITEM to a new work item that describes a move of
    a file or directory from SRC_ABSPATH to DST_ABSPATH, ready for
    storing in the working copy managing DST_ABSPATH.
 

Modified: subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/dav_svn.h
URL: http://svn.apache.org/viewvc/subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/dav_svn.h?rev=1339349&r1=1339348&r2=1339349&view=diff
==============================================================================
--- subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/dav_svn.h (original)
+++ subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/dav_svn.h Wed May 16 20:32:43
2012
@@ -316,6 +316,9 @@ svn_boolean_t dav_svn__get_txdelta_cache
 /* for the repository referred to by this request, is fulltext caching active? */
 svn_boolean_t dav_svn__get_fulltext_cache_flag(request_rec *r);
 
+/* for the repository referred to by this request, is revprop caching active? */
+svn_boolean_t dav_svn__get_revprop_cache_flag(request_rec *r);
+
 /* for the repository referred to by this request, are subrequests bypassed?
  * A function pointer if yes, NULL if not.
  */

Modified: subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/lock.c
URL: http://svn.apache.org/viewvc/subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/lock.c?rev=1339349&r1=1339348&r2=1339349&view=diff
==============================================================================
--- subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/lock.c (original)
+++ subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/lock.c Wed May 16 20:32:43
2012
@@ -765,10 +765,17 @@ append_locks(dav_lockdb *lockdb,
                                 DAV_ERR_LOCK_SAVE_LOCK,
                                 "Anonymous lock creation is not allowed.");
     }
+  else if (serr && (serr->apr_err == SVN_ERR_REPOS_HOOK_FAILURE ||
+                    serr->apr_err == SVN_ERR_FS_NO_SUCH_LOCK ||
+                    serr->apr_err == SVN_ERR_FS_LOCK_EXPIRED ||
+                    SVN_ERR_IS_LOCK_ERROR(serr)))
+     return dav_svn__convert_err(serr, HTTP_INTERNAL_SERVER_ERROR,
+                                 "Failed to create new lock.",
+                                 resource->pool);
   else if (serr)
-    return dav_svn__convert_err(serr, HTTP_INTERNAL_SERVER_ERROR,
-                                "Failed to create new lock.",
-                                resource->pool);
+    return dav_svn__sanitize_error(serr, "Failed to create new lock.",
+                                   HTTP_INTERNAL_SERVER_ERROR,
+                                   resource->info->r);
 
 
   /* A standard webdav LOCK response doesn't include any information
@@ -956,10 +963,17 @@ refresh_locks(dav_lockdb *lockdb,
                                 DAV_ERR_LOCK_SAVE_LOCK,
                                 "Anonymous lock refreshing is not allowed.");
     }
+  else if (serr && (serr->apr_err == SVN_ERR_REPOS_HOOK_FAILURE ||
+                    serr->apr_err == SVN_ERR_FS_NO_SUCH_LOCK ||
+                    serr->apr_err == SVN_ERR_FS_LOCK_EXPIRED ||
+                    SVN_ERR_IS_LOCK_ERROR(serr)))
+     return dav_svn__convert_err(serr, HTTP_INTERNAL_SERVER_ERROR,
+                                 "Failed to refresh existing lock.",
+                                 resource->pool);
   else if (serr)
-    return dav_svn__convert_err(serr, HTTP_INTERNAL_SERVER_ERROR,
-                                "Failed to refresh existing lock.",
-                                resource->pool);
+    return dav_svn__sanitize_error(serr, "Failed to refresh existing lock.",
+                                   HTTP_INTERNAL_SERVER_ERROR,
+                                   resource->info->r);
 
   /* Convert the refreshed lock into a dav_lock and return it. */
   svn_lock_to_dav_lock(&dlock, slock, FALSE, resource->exists, resource->pool);

Modified: subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/mod_dav_svn.c
URL: http://svn.apache.org/viewvc/subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/mod_dav_svn.c?rev=1339349&r1=1339348&r2=1339349&view=diff
==============================================================================
--- subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/mod_dav_svn.c (original)
+++ subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/mod_dav_svn.c Wed May 16 20:32:43
2012
@@ -95,6 +95,7 @@ typedef struct dir_conf_t {
   const char *activities_db;         /* path to activities database(s) */
   enum conf_flag txdelta_cache;      /* whether to enable txdelta caching */
   enum conf_flag fulltext_cache;     /* whether to enable fulltext caching */
+  enum conf_flag revprop_cache;      /* whether to enable revprop caching */
   apr_hash_t *hooks_env;             /* environment for hook scripts */
 } dir_conf_t;
 
@@ -195,7 +196,7 @@ create_dir_config(apr_pool_t *p, char *d
     conf->root_dir = svn_urlpath__canonicalize(dir, p);
   conf->bulk_updates = CONF_FLAG_ON;
   conf->v2_protocol = CONF_FLAG_ON;
-  conf->hooks_env = apr_hash_make(p);
+  conf->hooks_env = NULL;
 
   return conf;
 }
@@ -224,6 +225,7 @@ merge_dir_config(apr_pool_t *p, void *ba
   newconf->list_parentpath = INHERIT_VALUE(parent, child, list_parentpath);
   newconf->txdelta_cache = INHERIT_VALUE(parent, child, txdelta_cache);
   newconf->fulltext_cache = INHERIT_VALUE(parent, child, fulltext_cache);
+  newconf->revprop_cache = INHERIT_VALUE(parent, child, revprop_cache);
   newconf->root_dir = INHERIT_VALUE(parent, child, root_dir);
   newconf->hooks_env = INHERIT_VALUE(parent, child, hooks_env);
 
@@ -476,6 +478,19 @@ SVNCacheFullTexts_cmd(cmd_parms *cmd, vo
 }
 
 static const char *
+SVNCacheRevProps_cmd(cmd_parms *cmd, void *config, int arg)
+{
+  dir_conf_t *conf = config;
+
+  if (arg)
+    conf->revprop_cache = CONF_FLAG_ON;
+  else
+    conf->revprop_cache = CONF_FLAG_OFF;
+
+  return NULL;
+}
+
+static const char *
 SVNInMemoryCacheSize_cmd(cmd_parms *cmd, void *config, const char *arg1)
 {
   svn_cache_config_t settings = *svn_cache_config_get();
@@ -544,6 +559,9 @@ SVNHooksEnv_cmd(cmd_parms *cmd, void *co
       const char *name;
       const char *val;
 
+      if (! conf->hooks_env)
+        conf->hooks_env = apr_hash_make(cmd->pool);
+
       name = apr_pstrdup(apr_hash_pool_get(conf->hooks_env),
                          APR_ARRAY_IDX(var, 0, const char *));
 
@@ -844,6 +862,16 @@ dav_svn__get_fulltext_cache_flag(request
 }
 
 
+svn_boolean_t
+dav_svn__get_revprop_cache_flag(request_rec *r)
+{
+  dir_conf_t *conf;
+
+  conf = ap_get_module_config(r->per_dir_config, &dav_svn_module);
+  return conf->revprop_cache == CONF_FLAG_ON;
+}
+
+
 int
 dav_svn__get_compression_level(void)
 {
@@ -1080,6 +1108,14 @@ static const command_rec cmds[] =
                "if sufficient in-memory cache is available "
                "(default is Off)."),
 
+  /* per directory/location */
+  AP_INIT_FLAG("SVNCacheRevProps", SVNCacheRevProps_cmd, NULL,
+               ACCESS_CONF|RSRC_CONF,
+               "speeds up 'svn ls -v', export and checkout operations"
+               "but should only be enabled under the conditions described"
+               "in the documentation"
+               "(default is Off)."),
+
   /* per server */
   AP_INIT_TAKE1("SVNInMemoryCacheSize", SVNInMemoryCacheSize_cmd, NULL,
                 RSRC_CONF,

Modified: subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/reports/update.c
URL: http://svn.apache.org/viewvc/subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/reports/update.c?rev=1339349&r1=1339348&r2=1339349&view=diff
==============================================================================
--- subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/reports/update.c (original)
+++ subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/reports/update.c Wed May 16
20:32:43 2012
@@ -45,6 +45,7 @@
 #include "../dav_svn.h"
 
 
+/* State baton for the overall update process. */
 typedef struct update_ctx_t {
   const dav_resource *resource;
 
@@ -89,22 +90,38 @@ typedef struct update_ctx_t {
 
 } update_ctx_t;
 
+
+/* State baton for a file or directory. */
 typedef struct item_baton_t {
   apr_pool_t *pool;
   update_ctx_t *uc;
-  struct item_baton_t *parent; /* the parent of this item. */
-  const char *name;    /* the single-component name of this item */
-  const char *path;    /* a telescoping extension of uc->anchor */
-  const char *path2;   /* a telescoping extension of uc->dst_path */
-  const char *path3;   /* a telescoping extension of uc->dst_path
-                            without dst_path as prefix. */
-
-  const char *base_checksum;   /* base_checksum (from apply_textdelta) */
-
-  svn_boolean_t text_changed;        /* Did the file's contents change? */
-  svn_boolean_t added;               /* File added? (Implies text_changed.) */
-  svn_boolean_t copyfrom;            /* File copied? */
-  apr_array_header_t *removed_props; /* array of const char * prop names */
+
+  /* Uplink -- the parent of this item. */
+  struct item_baton_t *parent;
+
+  /* Single-component name of this item. */
+  const char *name;
+
+  /* Telescoping extension paths ... */
+  const char *path;    /* ... of uc->anchor. */
+  const char *path2;   /* ... of uc->dst_path. */
+  const char *path3;   /* ... uc->dst_path, without dst_path prefix. */
+
+  /* Base_checksum (from apply_textdelta). */
+  const char *base_checksum;   
+
+  /* Did the file's contents change? */
+  svn_boolean_t text_changed; 
+
+  /* File/dir added? (Implies text_changed for files.) */
+  svn_boolean_t added;
+
+  /* File/dir copied? */
+  svn_boolean_t copyfrom;
+
+  /* Array of const char * names of removed properties.  (Used only
+     for copied files/dirs in skelta mode.)  */
+  apr_array_header_t *removed_props;
 
 } item_baton_t;
 
@@ -544,8 +561,8 @@ upd_delete_entry(const char *path,
                                            svn_relpath_basename(path, NULL),
                                            1);
   return dav_svn__brigade_printf(parent->uc->bb, parent->uc->output,
-                                 "<S:delete-entry name=\"%s\"/>" DEBUG_CR,
-                                 qname);
+                                 "<S:delete-entry name=\"%s\" rev=\"%ld\"/>"
+                                   DEBUG_CR, qname, revision);
 }
 
 
@@ -638,16 +655,26 @@ upd_change_xxx_prop(void *baton,
                                           qname));
         }
     }
-  else if (!value) /* This is an addition in 'skelta' mode so there is no
-                      need for an inline response since property fetching
-                      is implied in addition.  We still need to cache
-                      property removals because a copied path might
-                      have removed properties. */
+  else if (!value)
     {
-      if (! b->removed_props)
-        b->removed_props = apr_array_make(b->pool, 1, sizeof(name));
+      /* This is an addition in "skelta" (that is, "not send-all")
+         mode so there is no strict need for an inline response.
+         Clients will assume that added objects need all to have all
+         their properties explicitly fetched from the server. */
+
+      /* Now, if the object is actually a copy, we'll still need to
+         cache (and later transmit) property removals, because
+         fetching the object's current property set alone isn't
+         sufficient to communicate the fact that additional properties
+         were, in fact, removed from the copied base object in order
+         to arrive at that set. */
+      if (b->copyfrom)
+        {
+          if (! b->removed_props)
+            b->removed_props = apr_array_make(b->pool, 1, sizeof(name));
 
-      APR_ARRAY_PUSH(b->removed_props, const char *) = qname;
+          APR_ARRAY_PUSH(b->removed_props, const char *) = qname;
+        }
     }
 
   return SVN_NO_ERROR;
@@ -734,18 +761,6 @@ window_handler(svn_txdelta_window_t *win
   return SVN_NO_ERROR;
 }
 
-
-/* This implements 'svn_txdelta_window_handler_t'.
-   During a resource walk, the driver sends an empty window as a
-   boolean indicating that a change happened to this file, but we
-   don't want to send anything over the wire as a result. */
-static svn_error_t *
-dummy_window_handler(svn_txdelta_window_t *window, void *baton)
-{
-  return SVN_NO_ERROR;
-}
-
-
 static svn_error_t *
 upd_apply_textdelta(void *file_baton,
                     const char *base_checksum,
@@ -765,7 +780,7 @@ upd_apply_textdelta(void *file_baton,
      we don't actually want to transmit text-deltas. */
   if (file->uc->resource_walk || (! file->uc->send_all))
     {
-      *handler = dummy_window_handler;
+      *handler = svn_delta_noop_window_handler;
       *handler_baton = NULL;
       return SVN_NO_ERROR;
     }

Modified: subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/repos.c
URL: http://svn.apache.org/viewvc/subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/repos.c?rev=1339349&r1=1339348&r2=1339349&view=diff
==============================================================================
--- subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/repos.c (original)
+++ subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/repos.c Wed May 16 20:32:43
2012
@@ -34,6 +34,9 @@
 #include <http_core.h>  /* for ap_construct_url */
 #include <mod_dav.h>
 
+#define CORE_PRIVATE      /* To make ap_show_mpm public in 2.2 */
+#include <http_config.h>
+
 #include "svn_types.h"
 #include "svn_pools.h"
 #include "svn_error.h"
@@ -50,6 +53,7 @@
 #include "svn_dirent_uri.h"
 #include "private/svn_log.h"
 #include "private/svn_fspath.h"
+#include "private/svn_repos_private.h"
 
 #include "dav_svn.h"
 
@@ -2144,6 +2148,8 @@ get_resource(request_rec *r,
   repos->repos = userdata;
   if (repos->repos == NULL)
     {
+      const char *fs_type;
+
       /* construct FS configuration parameters */
       fs_config = apr_hash_make(r->connection->pool);
       apr_hash_set(fs_config,
@@ -2154,10 +2160,34 @@ get_resource(request_rec *r,
                    SVN_FS_CONFIG_FSFS_CACHE_FULLTEXTS,
                    APR_HASH_KEY_STRING,
                    dav_svn__get_fulltext_cache_flag(r) ? "1" : "0");
+      apr_hash_set(fs_config,
+                   SVN_FS_CONFIG_FSFS_CACHE_REVPROPS,
+                   APR_HASH_KEY_STRING,
+                   dav_svn__get_revprop_cache_flag(r) ? "1" : "0");
+
+      /* Disallow BDB/event until issue 4157 is fixed. */
+      if (!strcmp(ap_show_mpm(), "event"))
+        {
+          serr = svn_repos__fs_type(&fs_type, fs_path, r->connection->pool);
+          if (serr)
+            {
+              /* svn_repos_open2 is going to fail, use that error. */
+              svn_error_clear(serr);
+              serr = NULL;
+            }
+          else if (!strcmp(fs_type, "bdb"))
+            serr = svn_error_createf(SVN_ERR_UNSUPPORTED_FEATURE, NULL,
+                                     "BDB repository at '%s' is not compatible "
+                                     "with event MPM",
+                                     fs_path);
+        }
+      else
+        serr = NULL;
 
       /* open the FS */
-      serr = svn_repos_open2(&(repos->repos), fs_path, fs_config,
-                             r->connection->pool);
+      if (!serr)
+        serr = svn_repos_open2(&(repos->repos), fs_path, fs_config,
+                               r->connection->pool);
       if (serr != NULL)
         {
           /* The error returned by svn_repos_open2 might contain the

Modified: subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/util.c
URL: http://svn.apache.org/viewvc/subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/util.c?rev=1339349&r1=1339348&r2=1339349&view=diff
==============================================================================
--- subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/util.c (original)
+++ subversion/branches/fix-rdump-editor/subversion/mod_dav_svn/util.c Wed May 16 20:32:43
2012
@@ -527,11 +527,23 @@ dav_svn__sanitize_error(svn_error_t *ser
   svn_error_t *safe_err = serr;
   if (new_msg != NULL)
     {
+      /* Purge error tracing from the error chain. */
+      svn_error_t *purged_serr = svn_error_purge_tracing(serr);
+
       /* Sanitization is necessary.  Create a new, safe error and
            log the original error. */
-        safe_err = svn_error_create(serr->apr_err, NULL, new_msg);
-        ap_log_rerror(APLOG_MARK, APLOG_ERR, APR_EGENERAL, r,
-                      "%s", serr->message);
+      safe_err = svn_error_create(purged_serr->apr_err, NULL, new_msg);
+      ap_log_rerror(APLOG_MARK, APLOG_ERR, APR_EGENERAL, r,
+                    "%s", purged_serr->message);
+
+      /* Log the entire error chain. */
+      while (purged_serr->child)
+        {
+          purged_serr = purged_serr->child;
+          ap_log_rerror(APLOG_MARK, APLOG_ERR, APR_EGENERAL, r,
+                        "%s", purged_serr->message);
+        }
+
         svn_error_clear(serr);
       }
     return dav_svn__convert_err(safe_err, http_status,

Modified: subversion/branches/fix-rdump-editor/subversion/po/de.po
URL: http://svn.apache.org/viewvc/subversion/branches/fix-rdump-editor/subversion/po/de.po?rev=1339349&r1=1339348&r2=1339349&view=diff
==============================================================================
--- subversion/branches/fix-rdump-editor/subversion/po/de.po [UTF-8] (original)
+++ subversion/branches/fix-rdump-editor/subversion/po/de.po [UTF-8] Wed May 16 20:32:43 2012
@@ -50,6 +50,7 @@
 # merge tool   Konflikteditor??? Aktuell: Werkzeug zum Zusammenführen!?
 # note         Hinweis
 # obstruct(ed) behindern / behindert
+# peg revision Fix-Revision
 # property     Eigenschaft
 # PROPNAME     PROPNAME
 # PROPVAL      PROPWERT
@@ -492,7 +493,7 @@ msgstr "Die vorhergehende Operation wurd
 
 #: ../include/svn_error_codes.h:518
 msgid "This operation can not be performed with just this depth."
-msgstr ""
+msgstr "Diese Operation kann nicht allein mit dieser Tiefe durch geführt werden."
 
 #: ../include/svn_error_codes.h:524
 msgid "General filesystem error"
@@ -1187,11 +1188,11 @@ msgstr "Nicht unterstütztes Schema in S
 
 #: ../include/svn_error_codes.h:1340
 msgid "The SQLite db is busy"
-msgstr ""
+msgstr "Die SQLite-Datenbank ist beschäftigt" 
 
 #: ../include/svn_error_codes.h:1345
 msgid "SQLite busy at transaction rollback; resetting all busy SQLite statements to allow
rollback"
-msgstr ""
+msgstr "SQLite ist mit dem Rollback einer Transaktion beschäftigt; Alle SQLite-Anweisungen
werden für Rollback zurückgesetzt"
 
 #: ../include/svn_error_codes.h:1352
 msgid "Error parsing arguments"
@@ -1250,7 +1251,7 @@ msgstr "Assert-Anweisung schlug fehl"
 #: ../libsvn_auth_gnome_keyring/gnome_keyring.c:554
 #: ../libsvn_auth_gnome_keyring/gnome_keyring.c:610
 msgid "GNOME Keyring is locked and we are non-interactive"
-msgstr ""
+msgstr "GNOME-Schlüsselring ist gesperrt und wir sind nicht-interaktiv"
 
 #: ../libsvn_client/add.c:488 ../libsvn_wc/adm_ops.c:881
 #: ../libsvn_wc/workqueue.c:1658 ../libsvn_wc/workqueue.c:1740
@@ -1318,7 +1319,7 @@ msgstr "»%s« verweist auf ein Verzeich
 #: ../libsvn_client/cat.c:89
 #, c-format
 msgid "'%s' has no base revision until it is committed"
-msgstr ""
+msgstr "»%s« hat keine Basisrevision, bis es übertragen wurde"
 
 #: ../libsvn_client/cat.c:153 ../libsvn_client/export.c:234
 msgid "(local)"
@@ -1650,11 +1651,9 @@ msgstr "Pfad »%s« hat keine URL"
 msgid "Not all required revisions are specified"
 msgstr "Es sind nicht alle erforderlichen Revisionen angegeben"
 
-# Was soll eine 'pegged diff' sein?
-# Gemeint ist, wenn bei einem svn diff ein @REV angegeben wurde (also die Revision, in der
die Datei zuerst gesucht wird)
 #: ../libsvn_client/diff.c:1410
 msgid "At least one revision must be non-local for a pegged diff"
-msgstr "Wenn eine Basisrevision angegeben wurde, muss zumindest eine Revision auf dem Server
sein"
+msgstr "Bei einem Vergleich mit Fix-Revision muss zumindest eine Revision auf dem Server
sein"
 
 #: ../libsvn_client/diff.c:1518 ../libsvn_client/diff.c:1530
 #, c-format
@@ -1899,7 +1898,7 @@ msgstr ""
 
 #: ../libsvn_client/merge.c:5820
 msgid "Merge tracking not allowed with missing subtrees; try restoring these items first:\n"
-msgstr ""
+msgstr "Zusammenführungsverfolgung nicht erlaubt bei fehlenden Unterbäumen; versuchen Sie
diese Elemente erst wiederherzustellen:\n"
 
 #: ../libsvn_client/merge.c:8502
 msgid "Use of two URLs is not compatible with mergeinfo modification"
@@ -1967,7 +1966,7 @@ msgstr ""
 
 #: ../libsvn_client/mergeinfo.c:1721
 msgid "Only depths 'infinity' and 'empty' are currently supported"
-msgstr ""
+msgstr "Nur Tiefenangaben von »infinity« und »empty« werden momentan unterstützt"
 
 #: ../libsvn_client/patch.c:243
 #, c-format
@@ -3416,7 +3415,7 @@ msgstr "»%s« in Revision %ld hat keine
 #: ../libsvn_ra/compat.c:844 ../libsvn_ra/ra_loader.c:1201
 #, c-format
 msgid "Invalid peg revision %ld"
-msgstr "Ungültige Peg-Revision %ld"
+msgstr "Ungültige Fix-Revision %ld"
 
 #: ../libsvn_ra/compat.c:847 ../libsvn_ra/ra_loader.c:1204
 #: ../libsvn_repos/rev_hunt.c:208 ../libsvn_repos/rev_hunt.c:323
@@ -3426,7 +3425,7 @@ msgstr "Ungültige Endrevision %ld"
 
 #: ../libsvn_ra/compat.c:850 ../libsvn_ra/ra_loader.c:1207
 msgid "Peg revision must precede end revision"
-msgstr "Peg-Revision muss vor der Endrevision liegen"
+msgstr "Fix-Revision muss vor der Endrevision liegen"
 
 #: ../libsvn_ra/ra_loader.c:234
 #, c-format
@@ -4027,7 +4026,7 @@ msgstr ""
 
 #: ../libsvn_ra_serf/commit.c:307
 msgid "No Location header received"
-msgstr ""
+msgstr "Kein »Location« Kopf empfangen"
 
 #: ../libsvn_ra_serf/commit.c:438
 #, c-format
@@ -4169,6 +4168,8 @@ msgid ""
 "No more credentials or we tried too many times.\n"
 "Authentication failed"
 msgstr ""
+"Keine weiteren Zugangsdaten oder zu viele Versuche.\n"
+"Anmeldung fehlgeschlagen"
 
 #: ../libsvn_ra_serf/util.c:1421
 msgid "Proxy authentication failed"
@@ -4234,7 +4235,7 @@ msgstr "Kann Tunnel nicht erzeugen"
 
 #: ../libsvn_ra_svn/client.c:525
 msgid "To better debug SSH connection problems, remove the -q option from 'ssh' in the [tunnels]
section of your Subversion configuration file."
-msgstr ""
+msgstr "Um Probleme mit der Konfiguration von SSH zu untersuchen, entfernen Sie die Option
»-q« von »ssh« im Abschnitt »[tunnels]« Ihrer Konfigurationsdatei für Subversion."
 
 #: ../libsvn_ra_svn/client.c:543
 #, c-format
@@ -4644,12 +4645,16 @@ msgid ""
 "WARNING: The range of revisions dumped contained references to\n"
 "WARNING: copy sources outside that range.\n"
 msgstr ""
+"WARNUNG: Der ausgegebene Revisionsbereich enthält Verweise auf\n"
+"WARNUNG: Quellpfade außerhalb dieses Bereichs.\n"
 
 #: ../libsvn_repos/dump.c:1131
 msgid ""
 "WARNING: The range of revisions dumped contained mergeinfo\n"
 "WARNING: which reference revisions outside that range.\n"
 msgstr ""
+"WARNUNG: Der ausgegebene Revisionsbereich enthält Zusammenführungsinformationen\n"
+"WARNUNG: die auf Revisionen außerhalb dieses Bereichs verweisen.\n"
 
 #: ../libsvn_repos/dump.c:1188
 #, c-format
@@ -4815,15 +4820,13 @@ msgstr "Relative Quellrevision %ld ist i
 
 # CHECKME: Check quotes, s/rev/revision/
 #: ../libsvn_repos/load-fs-vtable.c:482
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Copy source checksum mismatch on copy from '%s'@%ld\n"
 "to '%s' in rev based on r%ld"
 msgstr ""
-"Prüfsummenfehler für Kopie von »%s«@%ld\n"
-" nach »%s« in der auf r%ld basierten Revision:\n"
-"   Erwartet:    %s\n"
-"   Tatsächlich: %s\n"
+"Prüfsummenfehler beim Kopieren von »%s«@%ld\n"
+"nach »%s« in der auf r%ld basierten Revision"
 
 #: ../libsvn_repos/load-fs-vtable.c:539
 msgid "Malformed dumpstream: Revision 0 must not contain node records"
@@ -5782,7 +5785,7 @@ msgstr "»%s« ist kein gültiger Subver
 #: ../libsvn_subr/opt.c:964
 #, c-format
 msgid "'%s' is just a peg revision. Maybe try '%s@' instead?"
-msgstr ""
+msgstr "»%s« ist nur eine Fix-Revision. Meinten Sie stattdessen »%s@«?"
 
 #: ../libsvn_subr/opt.c:996
 #, c-format
@@ -5814,6 +5817,11 @@ msgid ""
 "Subversion is open source software, see http://subversion.apache.org/\n"
 "\n"
 msgstr ""
+"Copyright (C) 2010 The Apache Software Foundation.\n"
+"Diese Software besteht aus Beiträgen vieler Personen;\n"
+"siehe Datei NOTICE für mehr Informationen.\n"
+"Subversion ist Open Source Software, siehe http://subversion.apache.org/\n"
+"\n"
 
 #: ../libsvn_subr/path.c:958
 #, c-format
@@ -6048,7 +6056,7 @@ msgstr "Erwartete SQLite-Datenbank wurde
 #: ../libsvn_subr/sqlite.c:1125
 #, c-format
 msgid "SQLite hotcopy failed for %s"
-msgstr ""
+msgstr "SQLite-Hotcopy fehlgeschlagen für »%s«"
 
 #: ../libsvn_subr/subst.c:1640 ../libsvn_wc/props.c:1950
 #, c-format
@@ -6063,12 +6071,12 @@ msgstr "Konnte »%s« nicht in Zahl umwa
 #: ../libsvn_subr/svn_string.c:712
 #, c-format
 msgid "Number '%s' is out of range '[%llu, %llu]'"
-msgstr ""
+msgstr "Zahl »%s« ist außerhalb des zulässigen Bereichs »[%llu, %llu]«"
 
 #: ../libsvn_subr/svn_string.c:756
 #, c-format
 msgid "Number '%s' is out of range '[%lld, %lld]'"
-msgstr ""
+msgstr "Zahl »%s« ist außerhalb des zulässigen Bereichs »[%lld, %lld]«"
 
 #. Human explanatory part, generated by apr_strftime as "Sat, 01 Jan 2000"
 #: ../libsvn_subr/time.c:85
@@ -6229,17 +6237,17 @@ msgstr "Basisknoten von »%s« ist keine
 #: ../libsvn_wc/adm_files.c:322
 #, c-format
 msgid "Can only get the pristine contents of files; '%s' is not a file"
-msgstr ""
+msgstr "Kann nur ursprünglichen Inhalt von Dateien holen; »%s« ist keine Datei"
 
 #: ../libsvn_wc/adm_files.c:348
 #, c-format
 msgid "Cannot get the pristine contents of '%s' because its delete is already committed"
-msgstr ""
+msgstr "Kann den ursprünglichen Inhalt von »%s« nicht holen, da sein Löschen schon übertragen
wurde"
 
 #: ../libsvn_wc/adm_files.c:356
 #, c-format
 msgid "Cannot get the pristine contents of '%s' because it has an unexpected status"
-msgstr ""
+msgstr "Kann den ursprünglichen Inhalt von »%s« nicht holen, da es einen unerwarteten
Status hat"
 
 #: ../libsvn_wc/adm_files.c:639
 #, c-format
@@ -6271,7 +6279,7 @@ msgstr ""
 #: ../libsvn_wc/adm_ops.c:813 ../libsvn_wc/update_editor.c:5614
 #, c-format
 msgid "Can't schedule an addition of '%s' below a not-directory node"
-msgstr ""
+msgstr "Kann »%s« nicht zum Hinzufügen unter einem Knoten vorsehen, der kein Verzeichnis
ist"
 
 #: ../libsvn_wc/adm_ops.c:872
 #, c-format
@@ -6286,17 +6294,17 @@ msgstr "Die URL »%s« hat eine andere P
 #: ../libsvn_wc/adm_ops.c:1068
 #, c-format
 msgid "Can't schedule the working copy at '%s' from repository '%s' with uuid '%s' for addition
under a working copy from repository '%s' with uuid '%s'."
-msgstr ""
+msgstr "Kann Arbeitkopie »%s« des Projektarchivs »%s« mit UUID »%s« nicht zum Hinzufügen
unter einer Arbeitskopie des Projektarchivs »%s« mit UUID »%s« vorsehen."
 
 #: ../libsvn_wc/adm_ops.c:1082
 #, c-format
 msgid "Can't add '%s' with URL '%s', but with the data from '%s'"
-msgstr ""
+msgstr "Kann »%s« mit URL »%s« aber den Daten von »%s« nicht hinzufügen"
 
 #: ../libsvn_wc/adm_ops.c:1313
 #, c-format
 msgid "Can't revert '%s' with this depth, as that requires reverting '%s'."
-msgstr ""
+msgstr "Kann »%s« mit dieser Tiefe nicht zurücksetzen, da dies das Zurücksetzen von »%s«
erfordert."
 
 #: ../libsvn_wc/adm_ops.c:1414
 #, c-format
@@ -6335,7 +6343,7 @@ msgstr "»%s« ist kein Verzeichnis eine
 
 #: ../libsvn_wc/cleanup.c:64
 msgid "Log format too old, please use Subversion 1.6 or earlier"
-msgstr ""
+msgstr "Log-Format zu alt, bitte verwenden Sie Subversion 1.6 oder älter"
 
 #: ../libsvn_wc/conflicts.c:299
 msgid "Invalid 'conflict_result' argument"
@@ -6344,7 +6352,7 @@ msgstr "Ungültiger Parameter »conflict
 #: ../libsvn_wc/conflicts.c:409
 #, c-format
 msgid "Tree conflicts can only be resolved to 'working' state; '%s' not resolved"
-msgstr ""
+msgstr "Baumkonflikte können nur zum Zustand »working« aufgelöst werden; Konflikt in
»%s« nicht aufgelöst"
 
 #: ../libsvn_wc/copy.c:78
 #, c-format
@@ -6754,7 +6762,7 @@ msgstr "Datei »%s« hat die MIME-Typ Ei
 #: ../libsvn_wc/props.c:2000
 #, c-format
 msgid "Can't set properties on '%s': invalid status for updating properties."
-msgstr ""
+msgstr "Kann Eigenschaften für »%s« nicht setzen: ungültiger Status beim Aktualisieren
von Eigenschaften"
 
 #: ../libsvn_wc/props.c:2063
 msgid "Failed to load current properties"
@@ -6823,7 +6831,7 @@ msgstr "Kann eine einzelne Datei nicht u
 #: ../libsvn_wc/relocate.c:136
 #, c-format
 msgid "Invalid source URL prefix: '%s' (does not overlap target's URL '%s')"
-msgstr ""
+msgstr "Ungültiger Prefix der Quell-URL: »%s« (Keine Überlappung mit Ziel-URL »%s«)"
 
 #: ../libsvn_wc/relocate.c:146 ../libsvn_wc/relocate.c:151
 #, c-format
@@ -6918,12 +6926,15 @@ msgid "Switched file '%s' does not match
 msgstr "Umgestellte Datei »%s« entspricht nicht der erwarteten URL »%s«"
 
 #: ../libsvn_wc/update_editor.c:3469
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Checksum mismatch for '%s':\n"
 "   expected:  %s\n"
 "   recorded:  %s\n"
-msgstr "Prüfsummenfehler für »%s«; erwartet: »%s«, verzeichnet: »%s«"
+msgstr ""
+"Prüfsummenfehler für »%s«:\n"
+"   erwartet:  %s\n"
+"verzeichnet:  %s\n"
 
 #: ../libsvn_wc/update_editor.c:4911
 #, c-format
@@ -6948,31 +6959,31 @@ msgstr "Fehlendes Zeilenende in Datei »
 #: ../libsvn_wc/upgrade.c:601
 #, c-format
 msgid "Working copy '%s' can't be upgraded because the repository root is not available and
can't be retrieved"
-msgstr ""
+msgstr "Arbeitskopie »%s« kann nicht in ein neueres Format gebracht werden, da die Wurzel
des Projektarchivs nicht verfügbar ist und nicht bestimmt werden kann"
 
 #: ../libsvn_wc/upgrade.c:608
 #, c-format
 msgid "Working copy '%s' can't be upgraded because the repository uuid is not available and
can't be retrieved"
-msgstr ""
+msgstr "Arbeitskopie »%s« kann nicht in ein neueres Format gebracht werden, da die UUID
des Projektarchivs nicht verfügbar ist und nicht bestimmt werden kann"
 
 #: ../libsvn_wc/upgrade.c:615
 #, c-format
 msgid "Working copy '%s' can't be upgraded because it doesn't have a url"
-msgstr ""
+msgstr "Arbeitskopie »%s« kann nicht in ein neueres Format gebracht werden, da sie keine
URL hat"
 
 #: ../libsvn_wc/upgrade.c:1127
 msgid "Cannot upgrade with existing logs; please run 'svn cleanup' with Subversion 1.6"
-msgstr ""
+msgstr "Kann die Arbeitskopie nicht in ein neues Format bringen; bitte führen Sie »svn
cleanup« mit Subversion 1.6 aus"
 
 #: ../libsvn_wc/upgrade.c:1355
 #, c-format
 msgid "The working copy '%s' is at format 18; use 'tools/dev/wc-ng/bump-to-19.py' to upgrade
it"
-msgstr ""
+msgstr "Die Arbeitskopie »%s« hat das Format 18; verwenden Sie »tools/dev/wc-ng/bump-to-19.py«
um es in ein neues Format zu bringen"
 
 #: ../libsvn_wc/upgrade.c:1545
-#, fuzzy, c-format
+#, c-format
 msgid "Cannot upgrade '%s' as it is not a pre-1.7 working copy root"
-msgstr "Erwartete nicht, dass »%s« Basis einer Arbeitskopie ist"
+msgstr "Kann »%s« nicht in ein neueres Format bringen, da es keine Basis einer Arbeitskopie
älter als Version 1.7 ist"
 
 #: ../libsvn_wc/util.c:58
 #, c-format
@@ -6995,39 +7006,39 @@ msgid "The node '%s' has a corrupt check
 msgstr "Der Knoten »%s« hat einen fehlerhaften Prüfsummenwert."
 
 #: ../libsvn_wc/wc_db.c:2286
-#, fuzzy, c-format
+#, c-format
 msgid "Pristine text not found"
-msgstr "Eigenschaft nicht gefunden"
+msgstr "Ursprungstext nicht gefunden"
 
 #: ../libsvn_wc/wc_db.c:2473
-#, fuzzy, c-format
+#, c-format
 msgid "The pristine text with checksum '%s' was not found"
-msgstr "Der Knoten »%s« wurde nicht gefunden."
+msgstr "Der Ursprungstext mit der Prüfsumme »%s« wurde nicht gefunden."
 
 #: ../libsvn_wc/wc_db.c:2513
-#, fuzzy, c-format
+#, c-format
 msgid "The pristine text with MD5 checksum '%s' was not found"
-msgstr "Der Knoten »%s« wurde nicht gefunden."
+msgstr "Der Ursprungstext mit der MD5-Prüfsumme »%s« wurde nicht gefunden."
 
 #: ../libsvn_wc/wc_db.c:2705
 #, c-format
 msgid "The pristine text with checksum '%s' was found in the DB or on disk but not both"
-msgstr ""
+msgstr "Der Ursprungstext mit der Prüfsumme »%s« wurde in der Datenbank oder der Festplatte
gefunden, aber nicht beides."
 
 #: ../libsvn_wc/wc_db.c:3036 ../libsvn_wc/wc_db.c:3258
 #, c-format
 msgid "Cannot copy '%s' excluded by server"
-msgstr ""
+msgstr "Kann vom Server ausgeschlossenes »%s« nicht kopieren"
 
 #: ../libsvn_wc/wc_db.c:3042
-#, fuzzy, c-format
+#, c-format
 msgid "Cannot handle status of '%s'"
-msgstr "Kann keine URL für »%s« finden"
+msgstr "Kann Status von »%s« nicht verarbeiten"
 
 #: ../libsvn_wc/wc_db.c:3885
-#, fuzzy, c-format
+#, c-format
 msgid "Can't store properties for '%s' in '%s'."
-msgstr "Kann Eigenschafts-Hashwert nicht nach »%s« schreiben"
+msgstr "Kann Eigenschaftswert für »%s« nicht in »%s« speichern"
 
 #: ../libsvn_wc/wc_db.c:5392
 #, c-format
@@ -7037,22 +7048,22 @@ msgstr "Fehlerhafte Daten für »%s«"
 #: ../libsvn_wc/wc_db.c:6603
 #, c-format
 msgid "Could not find node '%s' for recording file information."
-msgstr ""
+msgstr "Knoten »%s« für Aufzeichnung von Dateiinformationen nicht gefunden."
 
 #: ../libsvn_wc/wc_db.c:6863 ../libsvn_wc/wc_db.c:6965
-#, fuzzy, c-format
+#, c-format
 msgid "Expected node '%s' to be added."
-msgstr "Erwartete, dass »%s« ein Verzeichnis ist, es ist aber eine Datei"
+msgstr "Erwartete, dass Knoten »%s« hinzugefügt wird."
 
 #: ../libsvn_wc/wc_db.c:7280
 #, c-format
 msgid "Expected node '%s' to be deleted."
-msgstr ""
+msgstr "Erwartete, dass Knoten »%s« gelöscht wird."
 
 #: ../libsvn_wc/wc_db.c:7554
 #, c-format
 msgid "The properties of '%s' are in an indeterminate state and cannot be upgraded. See issue
#2530."
-msgstr ""
+msgstr "Die Eigenschaften von »%s« sind in einem unbestimmten Zustand und können nicht
in ein neues Format gebreacht werden. Siehe Fehlerbericht #2530."
 
 #: ../libsvn_wc/wc_db.c:7643
 #, c-format
@@ -7072,17 +7083,17 @@ msgstr "Arbeitskopie »%s« gesperrt."
 #: ../libsvn_wc/wc_db.c:8639
 #, c-format
 msgid "'%s' is already locked via '%s'."
-msgstr "»%s« ist bereits durch »%s« gesperrt"
+msgstr "»%s« ist bereits durch »%s« gesperrt."
 
 #: ../libsvn_wc/wc_db.c:8753
-#, fuzzy, c-format
+#, c-format
 msgid "Working copy not locked at '%s'."
-msgstr "Arbeitskopie »%s« ist nicht gesperrt"
+msgstr "Arbeitskopie »%s« ist nicht gesperrt."
 
 #: ../libsvn_wc/wc_db.c:9370
-#, fuzzy, c-format
+#, c-format
 msgid "'%s' has no BASE_NODE"
-msgstr "»%s« hat keine URL"
+msgstr "»%s« hat keinen »BASE_NODE«"
 
 #: ../libsvn_wc/wc_db_pdh.c:234
 #, c-format
@@ -7092,22 +7103,21 @@ msgstr ""
 "Arbeitskopie erneut aus"
 
 #: ../libsvn_wc/wc_db_pdh.c:244
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "This client is too old to work with the working copy at\n"
 "'%s' (format %d).\n"
 "You need to get a newer Subversion client. For more details, see\n"
 "  http://subversion.apache.org/faq.html#working-copy-format-change\n"
 msgstr ""
-"Der Client ist zu alt, um mit der Arbeitskopie »%s« zusammen zu arbeiten.\n"
-"Sie benötigen einen neueren Subversion-Client oder müssen diese Arbeitskopie\n"
-"auf eine ältere Version zurücksetzen. Vergleiche\n"
-"http://subversion.apache.org/faq.html#working-copy-format-change\n"
-"für Details."
+"Dieser Client ist zu alt, um mit dieser Arbeitskopie umzugehen:\n"
+"»%s« (Format %d).\n"
+"Sie benötigen einen neueren Subversion-Client. Für mehr Details, siehe\n"
+"  http://subversion.apache.org/faq.html#working-copy-format-change\n"
 
 #: ../libsvn_wc/wc_db_pdh.c:265
 msgid "Cleanup with an older 1.7 client before upgrading with this client"
-msgstr ""
+msgstr "Starten Sie »svn cleanup« mit einem älteren 1.7 Client bevor Sie mit diesem Client
operieren"
 
 # CHECKME: What's WCROOT? A variable or short for "working copy root"?
 #: ../libsvn_wc/wc_db_pdh.c:526
@@ -7122,9 +7132,9 @@ msgstr "»%s« ist keine Basis einer Arb
 
 # CHECKME: What's WCROOT? A variable or short for "working copy root"?
 #: ../libsvn_wc/wc_db_util.c:68
-#, fuzzy, c-format
+#, c-format
 msgid "Missing a row in WCROOT."
-msgstr "Fehlende Zeile in WCROOT für »%s«."
+msgstr "Fehlende Zeile in WCROOT."
 
 #: ../libsvn_wc/workqueue.c:338
 #, c-format
@@ -7454,9 +7464,8 @@ msgid "Destination directory exists; ple
 msgstr "Zielverzeichnis existiert; bitte löschen Sie das Verzeichnis oder verwenden Sie
»--force« zum Überschreiben"
 
 #: ../svn/export-cmd.c:118 ../svn/switch-cmd.c:179 ../svn/update-cmd.c:107
-#, fuzzy
 msgid "Failure occured processing one or more externals definitions"
-msgstr "»svn:externals«-Definitionen ignorieren"
+msgstr "Kann eine oder mehrere »svn:externals«-Definitionen nicht verarbeiten"
 
 #: ../svn/help-cmd.c:50
 #, c-format
@@ -7533,7 +7542,7 @@ msgstr "Name: %s\n"
 #: ../svn/info-cmd.c:265
 #, c-format
 msgid "Working Copy Root Path: %s\n"
-msgstr ""
+msgstr "Wurzelpfad der Arbeitskopie: %s\n"
 
 #: ../svn/info-cmd.c:270
 #, c-format
@@ -7784,7 +7793,7 @@ msgstr "Zusammengeführt mittels:"
 #: ../svn/log-cmd.c:296 ../svn/log-cmd.c:373
 #, c-format
 msgid "\n"
-msgstr ""
+msgstr "\n"
 
 #: ../svn/log-cmd.c:573
 msgid "'with-all-revprops' option only valid in XML mode"
@@ -7810,25 +7819,25 @@ msgstr "»quiet« und »diff« schließe
 
 #: ../svn/log-cmd.c:598
 msgid "'diff-cmd' option requires 'diff' option"
-msgstr ""
+msgstr "Option »diff-cmd« erfordert Option »diff«"
 
 #: ../svn/log-cmd.c:602
 msgid "'internal-diff' option requires 'diff' option"
-msgstr ""
+msgstr "Option »internal-diff« erfordert Option »diff«"
 
 #: ../svn/log-cmd.c:606
 msgid "'extensions' option requires 'diff' option"
-msgstr ""
+msgstr "Option »extensions« erfordert Option »diff«"
 
 # TODO: Duplicated message!!!!
 #: ../svn/log-cmd.c:625
 msgid "-c and -r are mutually exclusive"
-msgstr "-c und -r schließen sich gegenseitig aus"
+msgstr "-c und -r schließen einander aus"
 
 #: ../svn/log-cmd.c:652
-#, fuzzy, c-format
+#, c-format
 msgid "Only relative paths can be specified after a URL for 'svn log', but '%s' is not a
relative path"
-msgstr "Nach einer URL können nur relative Pfade angegeben werden"
+msgstr "Mit »svn log« können nach einer URL nur relative Pfade angegeben werden, »%s«
ist aber kein relativer Pfad"
 
 #: ../svn/log-cmd.c:697
 #, c-format
@@ -7871,13 +7880,12 @@ msgstr ""
 "                             --depth=immediates"
 
 #: ../svn/main.c:146
-#, fuzzy
 msgid "the change made by revision ARG (like -r ARG-1:ARG)\n"
-msgstr "die in Revision PAR durchgeführte Änderung"
+msgstr "die in Revision PAR durchgeführte Änderung (wie -r PAR-1:PAR)\n"
 
 #: ../svn/main.c:150
 msgid "ARG (some commands also take ARG1:ARG2 range)\n"
-msgstr ""
+msgstr "PAR (einige Kommandos akzeptieren auch Bereiche PAR1:PAR2)\n"
 
 #: ../svn/main.c:165
 msgid "read log message from file ARG"
@@ -8066,11 +8074,8 @@ msgid "remove changelist association"
 msgstr "Bezug zur Änderungsliste entfernen"
 
 #: ../svn/main.c:276
-#, fuzzy
 msgid "operate only on members of changelist ARG"
-msgstr ""
-"nur auf Elementen der Änderungsliste PAR operieren\n"
-"                             [äquivalent: --cl]"
+msgstr "nur auf Elementen der Änderungsliste PAR operieren"
 
 #: ../svn/main.c:278
 msgid "don't delete changelists after commit"
@@ -8089,9 +8094,8 @@ msgid "retrieve no revision properties"
 msgstr "keine Revisionseigenschaften abfragen"
 
 #: ../svn/main.c:285
-#, fuzzy
 msgid "set revision property ARG in new revision\n"
-msgstr "Revisionseigenschaft PAR abfragen"
+msgstr "Revisionseigenschaft PAR in neuer Revision setzen\n"
 
 #: ../svn/main.c:288
 msgid "make intermediate directories"
@@ -8152,9 +8156,8 @@ msgid "use git's extended diff format"
 msgstr ""
 
 #: ../svn/main.c:337
-#, fuzzy
 msgid "Allow merge into mixed-revision working copy.\n"
-msgstr "Kann nicht zurück in eine Arbeitskopie mit verschiedenen Revisionen integrieren,
versuchen Sie erst zu aktualisieren"
+msgstr "Erlaube Zusammenführung in eine Arbeitskopie mit verschiedenen Revisionen.\n"
 
 #: ../svn/main.c:408
 msgid ""
@@ -9093,7 +9096,7 @@ msgstr ""
 "      Revisionsmarkern und einer URL bestehen. Die Reihenfolge der drei\n"
 "      Elemente führt zu verschiedenem Verhalten. Subversion 1.4 und älter\n"
 "      unterstützt nur die folgenden Formate und die URLs können keine\n"
-"      Peg-Revisionen haben:\n"
+"      Fix-Revisionen haben:\n"
 "        foo             http://example.org/repos/zig\n"
 "        foo/bar -r 1234 http://example.org/repos/zag\n"
 "      Subversion 1.5 und neuer unterstützt die obigen Formate und die\n"
@@ -10056,29 +10059,28 @@ msgid "--- Reverse-merging r%ld through 
 msgstr "-- Rückwärtiges Zusammenführen von r%ld bis r%ld in »%s«:\n"
 
 #: ../svn/notify.c:765
-#, fuzzy, c-format
 msgid "--- Recording mergeinfo for merge between repository URLs into '%s':\n"
-msgstr "-- Zusammenführen der Unterschiede zwischen Projektarchiv-URLs in »%s«:\n"
+msgstr "-- Aufzeichnung der Informationen für Zusammenführung zwischen Projektarchiv-URLs
in »%s«:\n"
 
 #: ../svn/notify.c:775
-#, fuzzy, c-format
+#, c-format
 msgid "--- Recording mergeinfo for merge of r%ld into '%s':\n"
-msgstr "-- Rückwärtiges Zusammenführen von r%ld in »%s«:\n"
+msgstr "-- Aufzeichnung der Informationen für Zusammenführung von r%ld in »%s«:\n"
 
 #: ../svn/notify.c:780
-#, fuzzy, c-format
+#, c-format
 msgid "--- Recording mergeinfo for reverse merge of r%ld into '%s':\n"
-msgstr "-- Rückwärtiges Zusammenführen (aus fremden Projektarchiv) von r%ld in »%s«:\n"
+msgstr "-- Aufzeichnung der Informationen für rückwärtiges Zusammenführen von r%ld in
»%s«:\n"
 
 #: ../svn/notify.c:785
-#, fuzzy, c-format
+#, c-format
 msgid "--- Recording mergeinfo for merge of r%ld through r%ld into '%s':\n"
-msgstr "-- Rückwärtiges Zusammenführen von r%ld bis r%ld in »%s«:\n"
+msgstr "-- Aufzeichnung der Informationen für Zusammenführung von r%ld bis r%ld in »%s«:\n"
 
 #: ../svn/notify.c:790
-#, fuzzy, c-format
+#, c-format
 msgid "--- Recording mergeinfo for reverse merge of r%ld through r%ld into '%s':\n"
-msgstr "-- Rückwärtiges Zusammenführen von r%ld bis r%ld in »%s«:\n"
+msgstr "-- Aufzeichnung der Informationen für rückwärtiges Zusammenführen von r%ld bis
r%ld in »%s«:\n"
 
 #: ../svn/notify.c:800
 #, fuzzy, c-format
@@ -10131,9 +10133,9 @@ msgid "property '%s' deleted from reposi
 msgstr "Eigenschaft »%s« wurde von Revision %ld im Projektarchiv gelöscht\n"
 
 #: ../svn/notify.c:879
-#, fuzzy, c-format
+#, c-format
 msgid "Upgraded '%s'.\n"
-msgstr "Überspringe »%s«\n"
+msgstr "In neues Format gebracht: »%s«.\n"
 
 #: ../svn/notify.c:885
 #, c-format



Mime
View raw message