diff options
Diffstat (limited to 'subversion/mod_dav_svn/activity.c')
-rw-r--r-- | subversion/mod_dav_svn/activity.c | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/subversion/mod_dav_svn/activity.c b/subversion/mod_dav_svn/activity.c index 895c4cf..1c779d2 100644 --- a/subversion/mod_dav_svn/activity.c +++ b/subversion/mod_dav_svn/activity.c @@ -193,7 +193,6 @@ dav_svn__store_activity(const dav_svn_repos *repos, const char *txn_name) { const char *final_path; - const char *tmp_path; const char *activity_contents; svn_error_t *err; @@ -209,11 +208,9 @@ dav_svn__store_activity(const dav_svn_repos *repos, activity_contents = apr_psprintf(repos->pool, "%s\n%s\n", txn_name, activity_id); - /* ### is there another directory we already have and can write to? */ - err = svn_io_write_unique(&tmp_path, - svn_dirent_dirname(final_path, repos->pool), + err = svn_io_write_atomic(final_path, activity_contents, strlen(activity_contents), - svn_io_file_del_none, repos->pool); + NULL /* copy_perms path */, repos->pool); if (err) { svn_error_t *serr = svn_error_quick_wrap(err, @@ -225,15 +222,6 @@ dav_svn__store_activity(const dav_svn_repos *repos, repos->pool); } - err = svn_io_file_rename(tmp_path, final_path, repos->pool); - if (err) - { - svn_error_clear(svn_io_remove_file2(tmp_path, TRUE, repos->pool)); - return dav_svn__convert_err(err, HTTP_INTERNAL_SERVER_ERROR, - "could not replace files.", - repos->pool); - } - return NULL; } |