I am not really sure whether this patch is correct one since the comment in diff_editor.c says this
/* This is the file that will contain the pristine repository version. It is created in the admin temporary area. This file continues to exists until after the diff callback is run, at which point it is deleted. */ I can't think of the drawbacks of creating this particular temp file in /tmp. Log [[[ Fix for issue 3813. * subversion/libsvn_wc/diff_editor.c (apply_textdelta): Use the default temporary directory instead of admin temporary area to create temporary file. Patch by: Noorul Islam K M <noorul{_AT_}collab.net> ]]] Thanks and Regards Noorul
Index: subversion/libsvn_wc/diff_editor.c =================================================================== --- subversion/libsvn_wc/diff_editor.c (revision 1137953) +++ subversion/libsvn_wc/diff_editor.c (working copy) @@ -1518,7 +1518,6 @@ struct file_baton *fb = file_baton; struct window_handler_baton *whb; struct edit_baton *eb = fb->eb; - const char *temp_dir; svn_stream_t *source; svn_stream_t *temp_stream; @@ -1532,13 +1531,8 @@ - /* This is the file that will contain the pristine repository version. It - is created in the admin temporary area. This file continues to exists - until after the diff callback is run, at which point it is deleted. */ - SVN_ERR(svn_wc__db_temp_wcroot_tempdir(&temp_dir, eb->db, fb->local_abspath, - pool, pool)); SVN_ERR(svn_stream_open_unique(&temp_stream, &fb->temp_file_path, - temp_dir, svn_io_file_del_on_pool_cleanup, + NULL, svn_io_file_del_on_pool_cleanup, fb->pool, fb->pool)); whb = apr_pcalloc(fb->pool, sizeof(*whb));