Author: philip Date: Thu Feb 2 13:09:05 2012 New Revision: 1239596 URL: http://svn.apache.org/viewvc?rev=1239596&view=rev Log: When asked for all liveprops mod_dav_svn should not send "###error###" as the checksum for a directory.
* subversion/mod_dav_svn/liveprops.c (insert_prop_internal): Return DAV_PROP_INSERT_NOTSUPP when asked for the MD5 checksum of a node that is not a file Modified: subversion/trunk/subversion/mod_dav_svn/liveprops.c Modified: subversion/trunk/subversion/mod_dav_svn/liveprops.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/mod_dav_svn/liveprops.c?rev=1239596&r1=1239595&r2=1239596&view=diff ============================================================================== --- subversion/trunk/subversion/mod_dav_svn/liveprops.c (original) +++ subversion/trunk/subversion/mod_dav_svn/liveprops.c Thu Feb 2 13:09:05 2012 @@ -665,12 +665,16 @@ insert_prop_internal(const dav_resource || resource->type == DAV_RESOURCE_TYPE_WORKING || resource->type == DAV_RESOURCE_TYPE_VERSION)) { + svn_node_kind_t kind; svn_checksum_t *checksum; - serr = svn_fs_file_checksum(&checksum, svn_checksum_md5, - resource->info->root.root, - resource->info->repos_path, TRUE, - scratch_pool); + serr = svn_fs_check_path(&kind, resource->info->root.root, + resource->info->repos_path, scratch_pool); + if (!serr && kind == svn_node_file) + serr = svn_fs_file_checksum(&checksum, svn_checksum_md5, + resource->info->root.root, + resource->info->repos_path, TRUE, + scratch_pool); if (serr != NULL) { ap_log_rerror(APLOG_MARK, APLOG_ERR, serr->apr_err, @@ -684,6 +688,9 @@ insert_prop_internal(const dav_resource break; } + if (kind != svn_node_file) + return DAV_PROP_INSERT_NOTSUPP; + value = svn_checksum_to_cstring(checksum, scratch_pool); if (! value)