Author: svn-role Date: Fri Jan 5 04:00:12 2018 New Revision: 1820249 URL: http://svn.apache.org/viewvc?rev=1820249&view=rev Log: Merge the r1818578 group from trunk:
* r1818578, r1819037, r1819049, r1819052 Fix svn_dirent_t.size API inconsistency Justification: Our APIs should behave as document and consistenly across all RA layers. API changes should go into 1.10.0. Votes: +1: stefan2, jamessan, brane Added: subversion/branches/1.10.x/notes/api-errata/1.10/ra001.txt - copied unchanged from r1819052, subversion/trunk/notes/api-errata/1.10/ra001.txt Modified: subversion/branches/1.10.x/ (props changed) subversion/branches/1.10.x/STATUS subversion/branches/1.10.x/subversion/bindings/swig/perl/native/t/3client.t subversion/branches/1.10.x/subversion/include/svn_types.h subversion/branches/1.10.x/subversion/libsvn_ra_local/ra_plugin.c subversion/branches/1.10.x/subversion/libsvn_ra_serf/list.c subversion/branches/1.10.x/subversion/libsvn_repos/list.c Propchange: subversion/branches/1.10.x/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Fri Jan 5 04:00:12 2018 @@ -99,4 +99,4 @@ /subversion/branches/verify-at-commit:1462039-1462408 /subversion/branches/verify-keep-going:1439280-1546110 /subversion/branches/wc-collate-path:1402685-1480384 -/subversion/trunk:1817837,1817856,1818651,1818662,1818727,1818801,1818803,1818807,1818868,1818871,1819093,1819162,1819444,1819556-1819557,1819603,1819911 +/subversion/trunk:1817837,1817856,1818578,1818651,1818662,1818727,1818801,1818803,1818807,1818868,1818871,1819037,1819049,1819052,1819093,1819162,1819444,1819556-1819557,1819603,1819911 Modified: subversion/branches/1.10.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.10.x/STATUS?rev=1820249&r1=1820248&r2=1820249&view=diff ============================================================================== --- subversion/branches/1.10.x/STATUS (original) +++ subversion/branches/1.10.x/STATUS Fri Jan 5 04:00:12 2018 @@ -29,14 +29,6 @@ Veto-blocked changes: Approved changes: ================= - * r1818578, r1819037, r1819049, r1819052 - Fix svn_dirent_t.size API inconsistency - Justification: - Our APIs should behave as document and consistenly across all RA layers. - API changes should go into 1.10.0. - Votes: - +1: stefan2, jamessan, brane - * r1819036, r1819043 Switch 'svn ls --search' on Windows to sub-string matching. Justification: Modified: subversion/branches/1.10.x/subversion/bindings/swig/perl/native/t/3client.t URL: http://svn.apache.org/viewvc/subversion/branches/1.10.x/subversion/bindings/swig/perl/native/t/3client.t?rev=1820249&r1=1820248&r2=1820249&view=diff ============================================================================== --- subversion/branches/1.10.x/subversion/bindings/swig/perl/native/t/3client.t (original) +++ subversion/branches/1.10.x/subversion/bindings/swig/perl/native/t/3client.t Fri Jan 5 04:00:12 2018 @@ -1091,8 +1091,8 @@ isa_ok($dirents->{'dir1'},'_p_svn_dirent is($dirents->{'dir1'}->kind(),$SVN::Core::node_dir, 'kind() returns a dir node'); # TEST -is($dirents->{'dir1'}->size(),0, - 'size() returns 0 for a directory'); +is($dirents->{'dir1'}->size(), -1, + 'size() returns -1 for a directory'); # TEST is($dirents->{'dir1'}->has_props(),1, 'has_props() returns true'); Modified: subversion/branches/1.10.x/subversion/include/svn_types.h URL: http://svn.apache.org/viewvc/subversion/branches/1.10.x/subversion/include/svn_types.h?rev=1820249&r1=1820248&r2=1820249&view=diff ============================================================================== --- subversion/branches/1.10.x/subversion/include/svn_types.h (original) +++ subversion/branches/1.10.x/subversion/include/svn_types.h Fri Jan 5 04:00:12 2018 @@ -652,7 +652,7 @@ typedef struct svn_dirent_t /** node kind */ svn_node_kind_t kind; - /** length of file text, or 0 for directories */ + /** length of file text, otherwise SVN_INVALID_FILESIZE */ svn_filesize_t size; /** does the node have props? */ Modified: subversion/branches/1.10.x/subversion/libsvn_ra_local/ra_plugin.c URL: http://svn.apache.org/viewvc/subversion/branches/1.10.x/subversion/libsvn_ra_local/ra_plugin.c?rev=1820249&r1=1820248&r2=1820249&view=diff ============================================================================== --- subversion/branches/1.10.x/subversion/libsvn_ra_local/ra_plugin.c (original) +++ subversion/branches/1.10.x/subversion/libsvn_ra_local/ra_plugin.c Fri Jan 5 04:00:12 2018 @@ -1387,7 +1387,7 @@ svn_ra_local__get_dir(svn_ra_session_t * { /* size */ if (fs_entry->kind == svn_node_dir) - entry->size = 0; + entry->size = SVN_INVALID_FILESIZE; else SVN_ERR(svn_fs_file_length(&(entry->size), root, fullpath, iterpool)); Modified: subversion/branches/1.10.x/subversion/libsvn_ra_serf/list.c URL: http://svn.apache.org/viewvc/subversion/branches/1.10.x/subversion/libsvn_ra_serf/list.c?rev=1820249&r1=1820248&r2=1820249&view=diff ============================================================================== --- subversion/branches/1.10.x/subversion/libsvn_ra_serf/list.c (original) +++ subversion/branches/1.10.x/subversion/libsvn_ra_serf/list.c Fri Jan 5 04:00:12 2018 @@ -152,6 +152,8 @@ item_closed(svn_ra_serf__xml_estate_t *x if (size) SVN_ERR(svn_cstring_atoi64(&dirent.size, size)); + else + dirent.size = SVN_INVALID_FILESIZE; if (crev) SVN_ERR(svn_revnum_parse(&dirent.created_rev, crev, NULL)); Modified: subversion/branches/1.10.x/subversion/libsvn_repos/list.c URL: http://svn.apache.org/viewvc/subversion/branches/1.10.x/subversion/libsvn_repos/list.c?rev=1820249&r1=1820248&r2=1820249&view=diff ============================================================================== --- subversion/branches/1.10.x/subversion/libsvn_repos/list.c (original) +++ subversion/branches/1.10.x/subversion/libsvn_repos/list.c Fri Jan 5 04:00:12 2018 @@ -50,6 +50,8 @@ fill_dirent(svn_dirent_t *dirent, if (dirent->kind == svn_node_file) SVN_ERR(svn_fs_file_length(&(dirent->size), root, path, scratch_pool)); + else + dirent->size = SVN_INVALID_FILESIZE; SVN_ERR(svn_fs_node_has_props(&dirent->has_props, root, path, scratch_pool));