You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by vm...@apache.org on 2012/12/24 04:44:19 UTC
svn commit: r1425583 - in /subversion/branches/javahl-ra: ./
notes/directory-index/ subversion/bindings/swig/include/
subversion/include/ subversion/libsvn_client/ subversion/libsvn_diff/
subversion/libsvn_fs_fs/ subversion/libsvn_ra/ subversion/libsvn...
Author: vmpn
Date: Mon Dec 24 03:44:17 2012
New Revision: 1425583
URL: http://svn.apache.org/viewvc?rev=1425583&view=rev
Log:
On the javahl-ra branch:
Bring up-to-date with trunk@1399485
Modified:
subversion/branches/javahl-ra/ (props changed)
subversion/branches/javahl-ra/CHANGES
subversion/branches/javahl-ra/notes/directory-index/dirindex.py
subversion/branches/javahl-ra/notes/directory-index/schema.sql
subversion/branches/javahl-ra/subversion/bindings/swig/include/svn_types.swg
subversion/branches/javahl-ra/subversion/include/svn_ra.h
subversion/branches/javahl-ra/subversion/include/svn_repos.h
subversion/branches/javahl-ra/subversion/libsvn_client/copy.c
subversion/branches/javahl-ra/subversion/libsvn_client/merge.c
subversion/branches/javahl-ra/subversion/libsvn_diff/parse-diff.c
subversion/branches/javahl-ra/subversion/libsvn_fs_fs/fs_fs.c
subversion/branches/javahl-ra/subversion/libsvn_ra/deprecated.c
subversion/branches/javahl-ra/subversion/libsvn_ra/editor.c
subversion/branches/javahl-ra/subversion/libsvn_ra/ra_loader.c
subversion/branches/javahl-ra/subversion/libsvn_repos/commit.c
subversion/branches/javahl-ra/subversion/libsvn_repos/deprecated.c
subversion/branches/javahl-ra/subversion/libsvn_subr/gpg_agent.c
subversion/branches/javahl-ra/subversion/libsvn_subr/named_atomic.c
subversion/branches/javahl-ra/subversion/libsvn_subr/sysinfo.c
subversion/branches/javahl-ra/subversion/libsvn_subr/utf.c
subversion/branches/javahl-ra/subversion/libsvn_wc/conflicts.c
subversion/branches/javahl-ra/subversion/libsvn_wc/update_editor.c
subversion/branches/javahl-ra/subversion/libsvn_wc/wc-queries.sql
subversion/branches/javahl-ra/subversion/libsvn_wc/wc_db.h
subversion/branches/javahl-ra/subversion/libsvn_wc/wc_db_util.c
subversion/branches/javahl-ra/subversion/mod_dav_svn/repos.c
subversion/branches/javahl-ra/subversion/svn/conflict-callbacks.c
subversion/branches/javahl-ra/subversion/svn/proplist-cmd.c
subversion/branches/javahl-ra/subversion/svnserve/serve.c
subversion/branches/javahl-ra/subversion/tests/cmdline/copy_tests.py
subversion/branches/javahl-ra/subversion/tests/cmdline/patch_tests.py
subversion/branches/javahl-ra/subversion/tests/libsvn_subr/auth-test.c
subversion/branches/javahl-ra/subversion/tests/libsvn_wc/conflict-data-test.c
subversion/branches/javahl-ra/tools/server-side/fsfs-reorg.c
Propchange: subversion/branches/javahl-ra/
------------------------------------------------------------------------------
Merged /subversion/trunk:r1399073-1399485
Modified: subversion/branches/javahl-ra/CHANGES
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/CHANGES?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/CHANGES (original)
+++ subversion/branches/javahl-ra/CHANGES Mon Dec 24 03:44:17 2012
@@ -4,7 +4,7 @@ http://svn.apache.org/repos/asf/subversi
User-visible changes:
- General:
- * remove extraneous externals output from 'svn status -q' (issue #1935)
+ *
- Major new features:
*
@@ -12,6 +12,7 @@ http://svn.apache.org/repos/asf/subversi
- Minor new features and improvements:
* new 'svnadmin load --revision' load filtering support (issue #3734)
* new 'commit --include-externals' option (related to issues #1167, #3563)
+ * remove extraneous externals output from 'svn status -q' (issue #1935)
* new 'svnadmin hotcopy --incremental' support for FSFS (issue #3815)
* reject some attempts to merge between unrelated branches (r1215273)
* support GPG agent for password storage on UNIX-like platforms (r1150783)
Modified: subversion/branches/javahl-ra/notes/directory-index/dirindex.py
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/notes/directory-index/dirindex.py?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/notes/directory-index/dirindex.py (original)
+++ subversion/branches/javahl-ra/notes/directory-index/dirindex.py Mon Dec 24 03:44:17 2012
@@ -42,7 +42,6 @@ class SQLclass(object):
def __init__(self):
import cStringIO
import pkgutil
- import re
comment_rx = re.compile(r"\s*--.*$")
header_rx = re.compile(r"^---(?P<kind>STATEMENT|SCRIPT)"
@@ -215,7 +214,6 @@ class Txn(SQLobject):
self.created = self._now()
super(Txn, self)._put(cursor)
if self.treeid is None:
- SQL.TXN_UPDATE_INITIAL_TREEID(cursor, id = self.id)
self.treeid = self.id
@classmethod
@@ -253,49 +251,6 @@ class Txn(SQLobject):
SQL.TXN_CLEANUP(cursor, id = self.id)
-class Branch(SQLobject):
- """O/R mapping for the "branch" table."""
-
- _columns = ("id", "treeid", "nodeid", "origin", "state")
- _put_statement = SQL.BRANCH_INSERT
- _get_statement = SQL.BRANCH_GET
-
- # state
- TRANSIENT = "T"
- PERMANENT = "P"
-
- def __init__(self, **kwargs):
- super(Branch, self).__init__(**kwargs)
- if self.state is None:
- self.state = self.TRANSIENT
-
- def _put(self, cursor):
- super(Branch, self)._put(cursor)
- if self.nodeid is None:
- SQL.BRANCH_UPDATE_INITIAL_NODEID(cursor, id = self.id)
- self.nodeid = self.id
-
- @classmethod
- def _update_treeid(cls, cursor, new_txn, old_txn):
- SQL.BRANCH_UPDATE_TREEID(cursor,
- new_treeid = new_txn.treeid,
- old_treeid = old_txn.treeid)
-
- @classmethod
- def _history(cls, cursor, nodeid):
- SQL.BRANCH_HISTORY(cursor, nodeid = nodeid)
- for row in cursor:
- yield cls._from_row(row)
-
- @classmethod
- def _commit(cls, cursor, txn):
- SQL.BRANCH_COMMIT(cursor, treeid = txn.treeid)
-
- @classmethod
- def _cleanup(cls, cursor, txn):
- SQL.BRANCH_CLEANUP(cursor, treeid = txn.treeid)
-
-
class NodeRev(SQLobject):
"""O/R mapping for the noderev/string/nodeview table."""
@@ -330,8 +285,8 @@ class NodeRev(SQLobject):
self.state = self.TRANSIENT
def __str__(self):
- return "%d %c %s%s" % (self.treeid, self.opcode, self.name,
- self._isdir and '/' or '')
+ return "%d(%d) %c %s%s" % (self.id, self.treeid, self.opcode,
+ self.name, self._isdir and '/' or '')
# Opcode names
__opnames = {ADD: "add",
@@ -384,6 +339,10 @@ class NodeRev(SQLobject):
assert self.dename is not None
self.denameid = self.__stringid(cursor, self.dename)
super(NodeRev, self)._put(cursor)
+ if self.nodeid is None:
+ self.nodeid = self.id
+ if self.branch is None:
+ self.branch = self.id
@classmethod
def _update_treeid(cls, cursor, new_txn, old_txn):
@@ -472,10 +431,6 @@ class NodeRev(SQLobject):
track.close(cls.__find(cursor, parent.branch, parts[-1], txn))
return track
- def _count_successors(self, cursor):
- SQL.NODEREV_COUNT_SUCCESSORS(cursor, origin = self.id)
- return int(cursor.fetchone()[0])
-
def _listdir(self, cursor, txn):
assert self._isdir
if txn.state != txn.PERMANENT:
@@ -501,17 +456,13 @@ class NodeRev(SQLobject):
def _branch(self, cursor, parent, txn, replaced=False):
assert txn._uncommitted
- branch = Branch(treeid = txn.treeid,
- nodeid = self.nodeid,
- origin = self.branch)
- branch._put(cursor)
if self._isdir:
opcode = replaced and self.LAZY_BREPLACE or self.LAZY
else:
opcode = replaced and self.BREPLACE or self.BRANCH
node = self._revise(opcode, txn)
node.parent = parent.id
- node.branch = branch.id
+ node.branch = None
node._put(cursor)
return node
@@ -519,7 +470,9 @@ class NodeRev(SQLobject):
assert txn._uncommitted
noderev = NodeRev._clone(self)
noderev.treeid = txn.treeid
+ noderev.origin = self.id
noderev.opcode = opcode
+ return noderev
__readonly = frozenset(("name",))
def __setitem__(self, key, value):
@@ -528,7 +481,10 @@ class NodeRev(SQLobject):
if key == "dename":
name = self.__normtext(value)
value = self.__text(value)
- super(NodeRev, self).__setitem__("name", name)
+ if name != self.name:
+ super(NodeRev, self).__setitem__("name", name)
+ super(NodeRev, self).__setitem__("nameid", None)
+ super(NodeRev, self).__setitem__("denameid", None)
super(NodeRev, self).__setitem__(key, value)
def __getitem__(self, key):
@@ -680,12 +636,10 @@ class Index(object):
def commit_txn(self, txn, revision):
txn._commit(self.cursor, revision)
NodeRev._commit(self.cursor, txn)
- Branch._commit(self.cursor, txn)
def abort_txn(self, txn):
txn._abort(self.cursor)
NodeRev._cleanup(self.cursor, txn)
- Branch._cleanup(self.cursor, txn)
txn._cleanup(self.cursor)
def listdir(self, txn, noderev):
@@ -743,11 +697,9 @@ class Index(object):
newnode = origin._branch(self.cursor, parent.id, txn,
replaced = (oldnode is not None))
else:
- branch = Branch(treeid = txn.treeid)
- branch._put(self.cursor)
newnode = NodeRev(treeid = txn.treeid,
- nodeid = branch.nodeid,
- branch = branch.id,
+ nodeid = None,
+ branch = None,
parent = parent.id,
kind = kind,
opcode = opcode)
@@ -777,6 +729,45 @@ class Tree(object):
index.rollback()
+__greek_tree = {
+ 'iota': 'file',
+ 'A': {
+ 'mu': 'file',
+ 'B': {
+ 'lambda': 'file',
+ 'E': {
+ 'alpha': 'file',
+ 'beta': 'file'},
+ 'F': 'dir'},
+ 'C': 'dir',
+ 'D': {
+ 'G': {
+ 'pi': 'file',
+ 'rho': 'file',
+ 'tau': 'file'},
+ 'H': {
+ 'chi': 'file',
+ 'psi': 'file',
+ 'omega': 'file'}
+ }
+ }
+ }
+def greektree(ix, tx):
+ def populate(track, items):
+ print 'Populating', track
+ for name, kind in items.iteritems():
+ if kind == 'file':
+ node = ix.add(tx, track, name, NodeRev.FILE)
+ else:
+ node = ix.add(tx, track, name, NodeRev.DIR)
+ print 'Added', node, 'node:', node.noderev
+ if isinstance(kind, dict):
+ populate(node, kind)
+
+ root = ix.lookup(tx)
+ populate(root, __greek_tree)
+
+
def simpletest(database):
ix = Index(database)
ix.initialize()
@@ -789,37 +780,34 @@ def simpletest(database):
print "root track:", root
print "root noderev", root.noderev
- print "Add A/foo"
+ print 'Create greek tree'
tx = ix.new_txn(0)
print "transaction:", tx
- parent = ix.add(tx, root, "A", NodeRev.DIR)
- print "A track:", parent
- print "A noderev", parent.noderev
-
- node = ix.add(tx, parent, "foo", NodeRev.FILE)
- print "foo track:", node
- print "foo noderev", node.noderev
+ greektree(ix, tx)
ix.commit_txn(tx, 1)
ix.commit()
+
+ def listdir(noderev, prefix):
+ for n in ix.listdir(tx, noderev):
+ print prefix, str(n)
+ if n._isdir:
+ listdir(n, prefix + " ")
+
print "List contents"
tx = ix.get_txn()
print "transaction:", tx
root = ix.lookup(tx)
print str(root.noderev)
- for n1 in ix.listdir(tx, root.noderev):
- print " ", str(n1)
- if n1._isdir:
- for n2 in ix.listdir(tx, n1):
- print " ", str(n2)
-
- print "Lookup A"
- track = ix.lookup(tx, None, "A")
- print str(track.noderev)
-
- print "Lookup A/foo"
- track = ix.lookup(tx, None, "A/foo")
- print str(track.noderev)
+ listdir(root.noderev, " ")
+
+ print "Lookup iota"
+ track = ix.lookup(tx, None, "iota")
+ print str(track), str(track.noderev)
+
+ print "Lookup A/D/H/psi"
+ track = ix.lookup(tx, None, "A/D/H/psi")
+ print str(track), str(track.noderev)
finally:
ix.close()
Modified: subversion/branches/javahl-ra/notes/directory-index/schema.sql
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/notes/directory-index/schema.sql?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/notes/directory-index/schema.sql (original)
+++ subversion/branches/javahl-ra/notes/directory-index/schema.sql Mon Dec 24 03:44:17 2012
@@ -22,7 +22,6 @@
DROP VIEW IF EXISTS nodeview;
DROP TABLE IF EXISTS noderev;
DROP TABLE IF EXISTS string;
-DROP TABLE IF EXISTS branch;
DROP TABLE IF EXISTS txn;
@@ -61,36 +60,10 @@ CREATE TABLE txn (
CREATE INDEX txn_revision_idx ON txn(revision);
-
--- Branches -- unique forks in the nodes' history
-CREATE TABLE branch (
- -- branch identifier
- id integer NOT NULL PRIMARY KEY,
-
- -- the transaction in which the branch was created
- treeid integer NOT NULL REFERENCES txn(id),
-
- -- the node to which this branch belongs; refers to the initial
- -- branch of the node
- nodeid integer NULL REFERENCES branch(id),
-
- -- the source branch from which this branch was forked
- origin integer NULL REFERENCES branch(id),
-
- -- mark branches in uncommitted transactions so that they can be
- -- ignored by branch traversals
- -- T = transient (uncommitted), P = permanent (committed)
- state character(1) NOT NULL DEFAULT 'T',
-
- -- sanity check: enumerated value validation
- CONSTRAINT enumeration_validation CHECK (state IN ('T', 'P')),
-
- -- sanity check: ye can't be yer own daddy
- CONSTRAINT genetic_diversity CHECK (id <> origin)
-);
-
-CREATE INDEX branch_txn_idx ON branch(treeid);
-CREATE INDEX branch_node_idx ON branch(nodeid);
+CREATE TRIGGER txn_ensure_treeid AFTER INSERT ON txn
+BEGIN
+ UPDATE txn SET treeid = NEW.id WHERE treeid IS NULL AND id = NEW.id;
+END;
-- File names -- lookup table of strings
@@ -108,18 +81,19 @@ CREATE TABLE noderev (
-- the transaction in which the node was changed
treeid integer NOT NULL REFERENCES txn(id),
- -- the node identifier; a new node will get the ID of its initial
- -- branch
- nodeid integer NOT NULL REFERENCES branch(id),
+ -- the node identifier
+ -- a new node will get the ID of its initial noderev.id
+ nodeid integer NULL REFERENCES noderev(id),
-- this node revision's immediate predecessor
origin integer NULL REFERENCES noderev(id),
-- the parent (directory) of this node revision -- tree graph
- parent integer NULL REFERENCES branch(id),
+ parent integer NULL REFERENCES noderev(id),
-- the branch that this node revision belongs to -- history graph
- branch integer NOT NULL REFERENCES branch(id),
+ -- a new branch will get the ID of its initial noderev.id
+ branch integer NULL REFERENCES noderev(id),
-- the indexable, NFC-normalized name of this noderev within its parent
nameid integer NOT NULL REFERENCES string(id),
@@ -171,8 +145,15 @@ CREATE TABLE noderev (
CREATE UNIQUE INDEX noderev_tree_idx ON noderev(parent,nameid,treeid,opcode);
CREATE INDEX noderev_txn_idx ON noderev(treeid);
CREATE INDEX nodefev_node_idx ON noderev(nodeid);
+CREATE INDEX noderev_branch_idx ON noderev(branch);
CREATE INDEX noderev_successor_idx ON noderev(origin);
+CREATE TRIGGER noderev_ensure_node_and_branch AFTER INSERT ON noderev
+BEGIN
+ UPDATE noderev SET nodeid = NEW.id WHERE nodeid IS NULL AND id = NEW.id;
+ UPDATE noderev SET branch = NEW.id WHERE branch IS NULL AND id = NEW.id;
+END;
+
CREATE VIEW nodeview AS
SELECT
@@ -188,7 +169,6 @@ CREATE VIEW nodeview AS
INSERT INTO txn (id, treeid, revision, created, state)
VALUES (0, 0, 0, 'EPOCH', 'P');
-INSERT INTO branch (id, treeid, nodeid, state) VALUES (0, 0, 0, 'P');
INSERT INTO string (id, val) VALUES (0, '');
INSERT INTO noderev (id, treeid, nodeid, branch,
nameid, denameid, kind, opcode, state)
@@ -199,9 +179,6 @@ INSERT INTO noderev (id, treeid, nodeid,
INSERT INTO txn (treeid, revision, created, author)
VALUES (:treeid, :revision, :created, :author);
----STATEMENT TXN_UPDATE_INITIAL_TREEID
-UPDATE txn SET treeid = :id WHERE id = :id;
-
---STATEMENT TXN_GET
SELECT * FROM txn WHERE id = :id;
@@ -230,28 +207,6 @@ UPDATE txn SET state = 'D' WHERE id = :i
---STATEMENT TXN_CLEANUP
DELETE FROM txn WHERE id = :id;
----STATEMENT BRANCH_INSERT
-INSERT INTO branch (nodeid, treeid, origin)
- VALUES (:nodeid, :treeid, :origin);
-
----STATEMENT BRANCH_UPDATE_INITIAL_NODEID
-UPDATE branch SET nodeid = :id WHERE id = :id;
-
----STATEMENT BRANCH_UPDATE_TREEID
-UPDATE branch SET treeid = :new_treeid WHERE treeid = :old_treeid;
-
----STATEMENT BRANCH_GET
-SELECT * FROM branch WHERE id = :id;
-
----STATEMENT BRANCH_HISTORY
-SELECT * from branch WHERE nodeid = :nodeid ORDER BY id ASC;
-
----STATEMENT BRANCH_COMMIT
-UPDATE branch SET state = 'P' WHERE treeid = :treeid;
-
----STATEMENT BRANCH_CLEANUP
-DELETE FROM branch WHERE treeid = :treeid;
-
---STATEMENT STRING_INSERT
INSERT INTO string (val) VALUES (:val);
@@ -273,9 +228,6 @@ UPDATE noderev SET opcode = :opcode WHER
---STATEMENT NODEVIEW_GET
SELECT * FROM nodeview WHERE id = :id;
----STATEMENT NODEREV_COUNT_SUCCESSORS
-SELECT COUNT(id) FROM noderev WHERE origin = :origin;
-
---STATEMENT NODEREV_COMMIT
UPDATE noderev SET state = 'P' WHERE treeid = :treeid;
@@ -309,7 +261,8 @@ ORDER BY treeid DESC LIMIT 1;
---STATEMENT NODEVIEW_LIST_DIRECTORY
SELECT * FROM nodeview
JOIN (SELECT nameid, MAX(treeid) AS treeid FROM noderev
- WHERE treeid <= :treeid AND state = 'P') AS filter
+ WHERE treeid <= :treeid AND state = 'P'
+ GROUP BY nameid) AS filter
ON nodeview.nameid = filter.nameid AND nodeview.treeid = filter.treeid
WHERE parent = :parent AND opcode <> 'D'
ORDER BY nodeview.name ASC;
@@ -317,7 +270,8 @@ ORDER BY nodeview.name ASC;
---STATEMENT NODEVIEW_LIST_TRANSIENT_DIRECTORY
SELECT * FROM nodeview
JOIN (SELECT nameid, MAX(treeid) AS treeid FROM noderev
- WHERE treeid < :treeid AND state = 'P' OR treeid = :treeid) AS filter
+ WHERE treeid < :treeid AND state = 'P' OR treeid = :treeid
+ GROUP BY nameid) AS filter
ON nodeview.nameid = filter.name AND nodeview.treeid = filter.treeid
WHERE parent = :parent AND opcode <> 'D'
ORDER BY nodeview.name ASC;
Modified: subversion/branches/javahl-ra/subversion/bindings/swig/include/svn_types.swg
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/bindings/swig/include/svn_types.swg?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/bindings/swig/include/svn_types.swg (original)
+++ subversion/branches/javahl-ra/subversion/bindings/swig/include/svn_types.swg Mon Dec 24 03:44:17 2012
@@ -793,10 +793,17 @@ svn_ ## TYPE ## _swig_rb_closed(VALUE se
Callback: svn_commit_callback2_t
svn_ra get_commit_editor2()
svn_repos_get_commit_editor4()
+ svn_client_mkdir4()
+ svn_client_delete4()
+ svn_client_import4()
+ svn_client_commit5()
+ svn_client_copy6()
+ svn_client_move6()
+ svn_client_propset_remote()
*/
#ifdef SWIGPERL
-%typemap(in) (svn_commit_callback2_t callback, void *callback_baton) {
+%typemap(in) (svn_commit_callback2_t commit_callback, void *commit_baton) {
$1 = svn_swig_pl_thunk_commit_callback2;
$2 = (void *)$input;
svn_swig_pl_hold_ref_in_pool (_global_pool, $input);
@@ -804,20 +811,20 @@ svn_ ## TYPE ## _swig_rb_closed(VALUE se
#endif
#ifdef SWIGRUBY
-%typemap(in) (svn_commit_callback2_t callback, void *callback_baton)
+%typemap(in) (svn_commit_callback2_t commit_callback, void *commit_baton)
{
$1 = svn_swig_rb_commit_callback2;
$2 = (void *)svn_swig_rb_make_baton($input, _global_svn_swig_rb_pool);
};
-%typemap(argout) (svn_commit_callback2_t callback, void *callback_baton)
+%typemap(argout) (svn_commit_callback2_t commit_callback, void *commit_baton)
{
svn_swig_rb_set_baton($result, (VALUE)$2);
};
#endif
#ifdef SWIGPYTHON
-%typemap(in) (svn_commit_callback2_t callback, void *callback_baton)
+%typemap(in) (svn_commit_callback2_t commit_callback, void *commit_baton)
{
$1 = svn_swig_py_commit_callback2;
$2 = (void *)$input;
@@ -825,29 +832,6 @@ svn_ ## TYPE ## _swig_rb_closed(VALUE se
#endif
/* -----------------------------------------------------------------------
- Callback: svn_commit_callback2_t
- svn_client_mkdir4()
- svn_client_delete4()
- svn_client_import4()
- svn_client_commit5()
- svn_client_copy6()
- svn_client_move6()
- svn_client_propset_remote()
-
- A separate typemap is needed here because we used different variable names
- in the client library functions than we used in the ra/repos library
- functions.
-*/
-
-#ifdef SWIGPERL
-%typemap(in) (svn_commit_callback2_t commit_callback, void *commit_baton) {
- $1 = svn_swig_pl_thunk_commit_callback2;
- $2 = (void *)$input;
- svn_swig_pl_hold_ref_in_pool (_global_pool, $input);
-};
-#endif
-
-/* -----------------------------------------------------------------------
Callback: svn_cancel_func_t
*/
Modified: subversion/branches/javahl-ra/subversion/include/svn_ra.h
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/include/svn_ra.h?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/include/svn_ra.h (original)
+++ subversion/branches/javahl-ra/subversion/include/svn_ra.h Mon Dec 24 03:44:17 2012
@@ -874,12 +874,12 @@ svn_ra_rev_prop(svn_ra_session_t *sessio
* or @c SVN_PROP_REVISION_AUTHOR.
*
* Before @c close_edit returns, but after the commit has succeeded,
- * it will invoke @a callback (if non-NULL) with the new revision number,
- * the commit date (as a <tt>const char *</tt>), commit author (as a
- * <tt>const char *</tt>), and @a callback_baton as arguments. If
- * @a callback returns an error, that error will be returned from @c
- * close_edit, otherwise @c close_edit will return successfully
- * (unless it encountered an error before invoking @a callback).
+ * it will invoke @a commit_callback (if non-NULL) with filled-in
+ * #svn_commit_info_t *, @a commit_baton, and @a pool or some subpool
+ * thereof as arguments. If @a commit_callback returns an error, that error
+ * will be returned from @c * close_edit, otherwise @c close_edit will return
+ * successfully (unless it encountered an error before invoking
+ * @a commit_callback).
*
* The callback will not be called if the commit was a no-op
* (i.e. nothing was committed);
@@ -905,8 +905,8 @@ svn_ra_get_commit_editor3(svn_ra_session
const svn_delta_editor_t **editor,
void **edit_baton,
apr_hash_t *revprop_table,
- svn_commit_callback2_t callback,
- void *callback_baton,
+ svn_commit_callback2_t commit_callback,
+ void *commit_baton,
apr_hash_t *lock_tokens,
svn_boolean_t keep_locks,
apr_pool_t *pool);
@@ -926,8 +926,8 @@ svn_ra_get_commit_editor2(svn_ra_session
const svn_delta_editor_t **editor,
void **edit_baton,
const char *log_msg,
- svn_commit_callback2_t callback,
- void *callback_baton,
+ svn_commit_callback2_t commit_callback,
+ void *commit_baton,
apr_hash_t *lock_tokens,
svn_boolean_t keep_locks,
apr_pool_t *pool);
Modified: subversion/branches/javahl-ra/subversion/include/svn_repos.h
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/include/svn_repos.h?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/include/svn_repos.h (original)
+++ subversion/branches/javahl-ra/subversion/include/svn_repos.h Mon Dec 24 03:44:17 2012
@@ -1340,14 +1340,14 @@ svn_repos_replay(svn_fs_root_t *root,
*
* Calling @a (*editor)->close_edit completes the commit.
*
- * If @a callback is non-NULL, then before @c close_edit returns (but
+ * If @a commit_callback is non-NULL, then before @c close_edit returns (but
* after the commit has succeeded) @c close_edit will invoke
- * @a callback with a filled-in #svn_commit_info_t *, @a callback_baton,
- * and @a pool or some subpool thereof as arguments. If @a callback
+ * @a commit_callback with a filled-in #svn_commit_info_t *, @a commit_baton,
+ * and @a pool or some subpool thereof as arguments. If @a commit_callback
* returns an error, that error will be returned from @c close_edit,
* otherwise if there was a post-commit hook failure, then that error
* will be returned with code SVN_ERR_REPOS_POST_COMMIT_HOOK_FAILED.
- * (Note that prior to Subversion 1.6, @a callback cannot be NULL; if
+ * (Note that prior to Subversion 1.6, @a commit_callback cannot be NULL; if
* you don't need a callback, pass a dummy function.)
*
* Calling @a (*editor)->abort_edit aborts the commit, and will also
@@ -1368,8 +1368,8 @@ svn_repos_get_commit_editor5(const svn_d
const char *repos_url,
const char *base_path,
apr_hash_t *revprop_table,
- svn_commit_callback2_t callback,
- void *callback_baton,
+ svn_commit_callback2_t commit_callback,
+ void *commit_baton,
svn_repos_authz_callback_t authz_callback,
void *authz_baton,
apr_pool_t *pool);
@@ -1394,8 +1394,8 @@ svn_repos_get_commit_editor4(const svn_d
const char *base_path,
const char *user,
const char *log_msg,
- svn_commit_callback2_t callback,
- void *callback_baton,
+ svn_commit_callback2_t commit_callback,
+ void *commit_baton,
svn_repos_authz_callback_t authz_callback,
void *authz_baton,
apr_pool_t *pool);
Modified: subversion/branches/javahl-ra/subversion/libsvn_client/copy.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_client/copy.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_client/copy.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_client/copy.c Mon Dec 24 03:44:17 2012
@@ -365,18 +365,21 @@ do_wc_to_wc_moves(const apr_array_header
return svn_error_trace(err);
}
-
+/* Verify that the destinations stored in COPY_PAIRS are valid working copy
+ destinations and set pair->dst_parent_abspath and pair->base_name for each
+ item to the resulting location if they do */
static svn_error_t *
-verify_wc_srcs_and_dsts(const apr_array_header_t *copy_pairs,
- svn_boolean_t make_parents,
- svn_boolean_t is_move,
- svn_client_ctx_t *ctx,
- apr_pool_t *pool)
+verify_wc_dsts(const apr_array_header_t *copy_pairs,
+ svn_boolean_t make_parents,
+ svn_boolean_t is_move,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool)
{
int i;
- apr_pool_t *iterpool = svn_pool_create(pool);
+ apr_pool_t *iterpool = svn_pool_create(scratch_pool);
- /* Check that all of our SRCs exist, and all the DSTs don't. */
+ /* Check that DST does not exist, but its parent does */
for (i = 0; i < copy_pairs->nelts; i++)
{
svn_client__copy_pair_t *pair = APR_ARRAY_IDX(copy_pairs, i,
@@ -385,15 +388,6 @@ verify_wc_srcs_and_dsts(const apr_array_
svn_pool_clear(iterpool);
- /* Verify that SRC_PATH exists. */
- SVN_ERR(svn_io_check_path(pair->src_abspath_or_url, &pair->src_kind,
- iterpool));
- if (pair->src_kind == svn_node_none)
- return svn_error_createf(
- SVN_ERR_NODE_UNKNOWN_KIND, NULL,
- _("Path '%s' does not exist"),
- svn_dirent_local_style(pair->src_abspath_or_url, pool));
-
/* If DST_PATH does not exist, then its basename will become a new
file or dir added to its parent (possibly an implicit '.').
Else, just error out. */
@@ -419,8 +413,30 @@ verify_wc_srcs_and_dsts(const apr_array_
svn_dirent_local_style(pair->dst_abspath_or_url, iterpool));
}
- if ((! is_not_present)
- && is_move
+ if (! is_not_present)
+ {
+ svn_boolean_t is_deleted;
+
+ SVN_ERR(svn_wc__node_is_status_deleted(&is_deleted, ctx->wc_ctx,
+ pair->dst_abspath_or_url,
+ scratch_pool));
+
+ if (! is_deleted)
+ return svn_error_createf(
+ SVN_ERR_ENTRY_EXISTS, NULL,
+ _("Path '%s' already exists"),
+ svn_dirent_local_style(pair->dst_abspath_or_url,
+ scratch_pool));
+ }
+ }
+
+ /* Check that there is no unversioned obstruction */
+ SVN_ERR(svn_io_check_path(pair->dst_abspath_or_url, &dst_kind,
+ iterpool));
+
+ if (dst_kind != svn_node_none)
+ {
+ if (is_move
&& copy_pairs->nelts == 1
&& strcmp(svn_dirent_dirname(pair->src_abspath_or_url, iterpool),
svn_dirent_dirname(pair->dst_abspath_or_url,
@@ -435,7 +451,7 @@ verify_wc_srcs_and_dsts(const apr_array_
SVN_ERR(svn_path_cstring_from_utf8(&dst,
pair->dst_abspath_or_url,
- pool));
+ scratch_pool));
apr_err = apr_filepath_merge(&dst_apr, NULL, dst,
APR_FILEPATH_TRUENAME, iterpool);
@@ -452,31 +468,22 @@ verify_wc_srcs_and_dsts(const apr_array_
{
/* Ok, we have a single case only rename. Get out of here */
svn_dirent_split(&pair->dst_parent_abspath, &pair->base_name,
- pair->dst_abspath_or_url, pool);
+ pair->dst_abspath_or_url, result_pool);
svn_pool_destroy(iterpool);
return SVN_NO_ERROR;
}
}
- if (! is_not_present)
- {
- svn_boolean_t is_deleted;
-
- SVN_ERR(svn_wc__node_is_status_deleted(&is_deleted, ctx->wc_ctx,
- pair->dst_abspath_or_url, pool));
-
- if (! is_deleted)
- return svn_error_createf(
+ return svn_error_createf(
SVN_ERR_ENTRY_EXISTS, NULL,
- _("Path '%s' already exists"),
+ _("Path '%s' already exists as unversioned node"),
svn_dirent_local_style(pair->dst_abspath_or_url,
- pool));
- }
+ scratch_pool));
}
svn_dirent_split(&pair->dst_parent_abspath, &pair->base_name,
- pair->dst_abspath_or_url, pool);
+ pair->dst_abspath_or_url, result_pool);
/* Make sure the destination parent is a directory and produce a clear
error message if it is not. */
@@ -502,7 +509,7 @@ verify_wc_srcs_and_dsts(const apr_array_
return svn_error_createf(SVN_ERR_WC_NOT_WORKING_COPY, NULL,
_("Path '%s' is not a directory"),
svn_dirent_local_style(
- pair->dst_parent_abspath, pool));
+ pair->dst_parent_abspath, scratch_pool));
}
}
@@ -511,6 +518,43 @@ verify_wc_srcs_and_dsts(const apr_array_
return SVN_NO_ERROR;
}
+static svn_error_t *
+verify_wc_srcs_and_dsts(const apr_array_header_t *copy_pairs,
+ svn_boolean_t make_parents,
+ svn_boolean_t is_move,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool)
+{
+ int i;
+ apr_pool_t *iterpool = svn_pool_create(scratch_pool);
+
+ /* Check that all of our SRCs exist. */
+ for (i = 0; i < copy_pairs->nelts; i++)
+ {
+ svn_client__copy_pair_t *pair = APR_ARRAY_IDX(copy_pairs, i,
+ svn_client__copy_pair_t *);
+ svn_pool_clear(iterpool);
+
+ /* Verify that SRC_PATH exists. */
+ SVN_ERR(svn_wc_read_kind(&pair->src_kind, ctx->wc_ctx,
+ pair->src_abspath_or_url, FALSE, iterpool));
+ if (pair->src_kind == svn_node_none)
+ return svn_error_createf(SVN_ERR_WC_PATH_NOT_FOUND, NULL,
+ _("Path '%s' does not exist"),
+ svn_dirent_local_style(
+ pair->src_abspath_or_url,
+ scratch_pool));
+ }
+
+ SVN_ERR(verify_wc_dsts(copy_pairs, make_parents, is_move, ctx,
+ result_pool, iterpool));
+
+ svn_pool_destroy(iterpool);
+
+ return SVN_NO_ERROR;
+}
+
/* Path-specific state used as part of path_driver_cb_baton. */
typedef struct path_driver_info_t
@@ -1638,74 +1682,24 @@ repos_to_wc_copy_locked(const apr_array_
apr_pool_t *scratch_pool)
{
int i;
- const char *src_uuid = NULL, *dst_uuid = NULL;
svn_boolean_t same_repositories;
apr_pool_t *iterpool = svn_pool_create(scratch_pool);
/* We've already checked for physical obstruction by a working file.
But there could also be logical obstruction by an entry whose
working file happens to be missing.*/
- for (i = 0; i < copy_pairs->nelts; i++)
- {
- svn_client__copy_pair_t *pair = APR_ARRAY_IDX(copy_pairs, i,
- svn_client__copy_pair_t *);
- svn_node_kind_t kind;
- svn_boolean_t is_not_present;
- svn_boolean_t is_excluded;
- svn_boolean_t is_server_excluded;
- svn_boolean_t is_deleted;
-
- svn_pool_clear(iterpool);
-
- SVN_ERR(svn_wc_read_kind(&kind, ctx->wc_ctx, pair->dst_abspath_or_url,
- TRUE /* show_hidden */, iterpool));
- if (kind == svn_node_none)
- continue;
-
- /* ### TODO(#2843): Rework these error report. Maybe we can
- ### simplify the conditions? */
-
- /* Hidden by client exclusion */
- SVN_ERR(svn_wc__node_is_not_present(&is_not_present, &is_excluded,
- &is_server_excluded, ctx->wc_ctx,
- pair->dst_abspath_or_url,
- iterpool));
-
- if (is_not_present)
- continue;
-
- if (is_excluded || is_server_excluded)
- {
- return svn_error_createf(
- SVN_ERR_WC_OBSTRUCTED_UPDATE,
- NULL, _("Path '%s' exists, but is excluded"),
- svn_dirent_local_style(pair->dst_abspath_or_url, iterpool));
- }
-
- /* Working file missing to something other than being scheduled
- for addition or in "deleted" state. */
-
- SVN_ERR(svn_wc__node_is_status_deleted(&is_deleted, ctx->wc_ctx,
- pair->dst_abspath_or_url,
- iterpool));
-
- if (! is_deleted)
- {
- return svn_error_createf(
- SVN_ERR_WC_OBSTRUCTED_UPDATE, NULL,
- _("Path '%s' exists, but the working file is missing"),
- svn_dirent_local_style(pair->dst_abspath_or_url, iterpool));
- }
- }
+ SVN_ERR(verify_wc_dsts(copy_pairs, FALSE, FALSE, ctx,
+ scratch_pool, iterpool));
/* Decide whether the two repositories are the same or not. */
{
svn_error_t *src_err, *dst_err;
const char *parent;
const char *parent_abspath;
+ const char *src_uuid, *dst_uuid;
/* Get the repository uuid of SRC_URL */
- src_err = svn_ra_get_uuid2(ra_session, &src_uuid, scratch_pool);
+ src_err = svn_ra_get_uuid2(ra_session, &src_uuid, iterpool);
if (src_err && src_err->apr_err != SVN_ERR_RA_NO_REPOS_UUID)
return svn_error_trace(src_err);
@@ -1720,7 +1714,7 @@ repos_to_wc_copy_locked(const apr_array_
SVN_ERR(svn_dirent_get_absolute(&parent_abspath, parent, scratch_pool));
dst_err = svn_client_get_repos_root(NULL /* root_url */, &dst_uuid,
parent_abspath, ctx,
- scratch_pool, scratch_pool);
+ iterpool, iterpool);
if (dst_err && dst_err->apr_err != SVN_ERR_RA_NO_REPOS_UUID)
return dst_err;
@@ -1730,7 +1724,6 @@ repos_to_wc_copy_locked(const apr_array_
copy-history is attempted. */
if (src_err || dst_err || (! src_uuid) || (! dst_uuid))
same_repositories = FALSE;
-
else
same_repositories = (strcmp(src_uuid, dst_uuid) == 0);
}
@@ -2167,7 +2160,7 @@ try_copy(const apr_array_header_t *sourc
if ((! srcs_are_urls) && (! dst_is_url))
{
SVN_ERR(verify_wc_srcs_and_dsts(copy_pairs, make_parents, is_move,
- ctx, pool));
+ ctx, pool, pool));
/* Copy or move all targets. */
if (is_move)
Modified: subversion/branches/javahl-ra/subversion/libsvn_client/merge.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_client/merge.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_client/merge.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_client/merge.c Mon Dec 24 03:44:17 2012
@@ -2725,7 +2725,7 @@ merge_dir_closed(svn_wc_notify_state_t *
merge_cmd_baton_t *merge_b = baton;
if (merge_b->dry_run)
- svn_hash__clear(merge_b->dry_run_deletions, scratch_pool);
+ SVN_ERR(svn_hash__clear(merge_b->dry_run_deletions, scratch_pool));
return SVN_NO_ERROR;
}
Modified: subversion/branches/javahl-ra/subversion/libsvn_diff/parse-diff.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_diff/parse-diff.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_diff/parse-diff.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_diff/parse-diff.c Mon Dec 24 03:44:17 2012
@@ -595,7 +595,6 @@ parse_next_hunk(svn_diff_hunk_t **hunk,
original_end = hunk_text_end;
if (modified_end == 0)
modified_end = hunk_text_end;
- break;
}
SVN_ERR(svn_io_file_seek(apr_file, APR_SET, &pos, iterpool));
Modified: subversion/branches/javahl-ra/subversion/libsvn_fs_fs/fs_fs.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_fs_fs/fs_fs.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_fs_fs/fs_fs.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_fs_fs/fs_fs.c Mon Dec 24 03:44:17 2012
@@ -98,7 +98,7 @@
/* Give writing processes 10 seconds to replace an existing revprop
file with a new one. After that time, we assume that the writing
process got aborted and that we have re-read revprops. */
-#define REVPROP_CHANGE_TIMEOUT 10 * 1000000
+#define REVPROP_CHANGE_TIMEOUT (10 * 1000000)
/* The following are names of atomics that will be used to communicate
* revprop updates across all processes on this machine. */
Modified: subversion/branches/javahl-ra/subversion/libsvn_ra/deprecated.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_ra/deprecated.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_ra/deprecated.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_ra/deprecated.c Mon Dec 24 03:44:17 2012
@@ -209,8 +209,8 @@ svn_error_t *svn_ra_get_commit_editor2(s
const svn_delta_editor_t **editor,
void **edit_baton,
const char *log_msg,
- svn_commit_callback2_t callback,
- void *callback_baton,
+ svn_commit_callback2_t commit_callback,
+ void *commit_baton,
apr_hash_t *lock_tokens,
svn_boolean_t keep_locks,
apr_pool_t *pool)
@@ -221,7 +221,7 @@ svn_error_t *svn_ra_get_commit_editor2(s
APR_HASH_KEY_STRING,
svn_string_create(log_msg, pool));
return svn_ra_get_commit_editor3(session, editor, edit_baton, revprop_table,
- callback, callback_baton,
+ commit_callback, commit_baton,
lock_tokens, keep_locks, pool);
}
Modified: subversion/branches/javahl-ra/subversion/libsvn_ra/editor.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_ra/editor.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_ra/editor.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_ra/editor.c Mon Dec 24 03:44:17 2012
@@ -77,8 +77,8 @@ svn_error_t *
svn_ra__use_commit_shim(svn_editor_t **editor,
svn_ra_session_t *session,
apr_hash_t *revprop_table,
- svn_commit_callback2_t callback,
- void *callback_baton,
+ svn_commit_callback2_t commit_callback,
+ void *commit_baton,
apr_hash_t *lock_tokens,
svn_boolean_t keep_locks,
svn_ra__provide_base_cb_t provide_base_cb,
@@ -108,7 +108,7 @@ svn_ra__use_commit_shim(svn_editor_t **e
/* Fetch the RA provider's Ev1 commit editor. */
SVN_ERR(session->vtable->get_commit_editor(session, &deditor, &dedit_baton,
revprop_table,
- callback, callback_baton,
+ commit_callback, commit_baton,
lock_tokens, keep_locks,
result_pool));
Modified: subversion/branches/javahl-ra/subversion/libsvn_ra/ra_loader.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_ra/ra_loader.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_ra/ra_loader.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_ra/ra_loader.c Mon Dec 24 03:44:17 2012
@@ -706,19 +706,19 @@ svn_error_t *svn_ra_get_commit_editor3(s
const svn_delta_editor_t **editor,
void **edit_baton,
apr_hash_t *revprop_table,
- svn_commit_callback2_t callback,
- void *callback_baton,
+ svn_commit_callback2_t commit_callback,
+ void *commit_baton,
apr_hash_t *lock_tokens,
svn_boolean_t keep_locks,
apr_pool_t *pool)
{
- remap_commit_callback(&callback, &callback_baton,
- session, callback, callback_baton,
+ remap_commit_callback(&commit_callback, &commit_baton,
+ session, commit_callback, commit_baton,
pool);
return session->vtable->get_commit_editor(session, editor, edit_baton,
revprop_table,
- callback, callback_baton,
+ commit_callback, commit_baton,
lock_tokens, keep_locks, pool);
}
@@ -1280,8 +1280,8 @@ svn_error_t *
svn_ra__get_commit_ev2(svn_editor_t **editor,
svn_ra_session_t *session,
apr_hash_t *revprop_table,
- svn_commit_callback2_t callback,
- void *callback_baton,
+ svn_commit_callback2_t commit_callback,
+ void *commit_baton,
apr_hash_t *lock_tokens,
svn_boolean_t keep_locks,
svn_ra__provide_base_cb_t provide_base_cb,
@@ -1299,15 +1299,15 @@ svn_ra__get_commit_ev2(svn_editor_t **ed
default shim over the normal commit editor. */
/* Remap for RA layers exposing Ev1. */
- remap_commit_callback(&callback, &callback_baton,
- session, callback, callback_baton,
+ remap_commit_callback(&commit_callback, &commit_baton,
+ session, commit_callback, commit_baton,
result_pool);
return svn_error_trace(svn_ra__use_commit_shim(
editor,
session,
revprop_table,
- callback, callback_baton,
+ commit_callback, commit_baton,
lock_tokens,
keep_locks,
provide_base_cb,
@@ -1325,7 +1325,7 @@ svn_ra__get_commit_ev2(svn_editor_t **ed
editor,
session,
revprop_table,
- callback, callback_baton,
+ commit_callback, commit_baton,
lock_tokens,
keep_locks,
provide_base_cb,
Modified: subversion/branches/javahl-ra/subversion/libsvn_repos/commit.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_repos/commit.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_repos/commit.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_repos/commit.c Mon Dec 24 03:44:17 2012
@@ -921,8 +921,8 @@ svn_repos_get_commit_editor5(const svn_d
const char *repos_url,
const char *base_path,
apr_hash_t *revprop_table,
- svn_commit_callback2_t callback,
- void *callback_baton,
+ svn_commit_callback2_t commit_callback,
+ void *commit_baton,
svn_repos_authz_callback_t authz_callback,
void *authz_baton,
apr_pool_t *pool)
@@ -967,8 +967,8 @@ svn_repos_get_commit_editor5(const svn_d
/* Set up the edit baton. */
eb->pool = subpool;
eb->revprop_table = svn_prop_hash_dup(revprop_table, subpool);
- eb->commit_callback = callback;
- eb->commit_callback_baton = callback_baton;
+ eb->commit_callback = commit_callback;
+ eb->commit_callback_baton = commit_baton;
eb->authz_callback = authz_callback;
eb->authz_baton = authz_baton;
eb->base_path = svn_fspath__canonicalize(base_path, subpool);
Modified: subversion/branches/javahl-ra/subversion/libsvn_repos/deprecated.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_repos/deprecated.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_repos/deprecated.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_repos/deprecated.c Mon Dec 24 03:44:17 2012
@@ -48,8 +48,8 @@ svn_repos_get_commit_editor4(const svn_d
const char *base_path,
const char *user,
const char *log_msg,
- svn_commit_callback2_t callback,
- void *callback_baton,
+ svn_commit_callback2_t commit_callback,
+ void *commit_baton,
svn_repos_authz_callback_t authz_callback,
void *authz_baton,
apr_pool_t *pool)
@@ -65,7 +65,7 @@ svn_repos_get_commit_editor4(const svn_d
svn_string_create(log_msg, pool));
return svn_repos_get_commit_editor5(editor, edit_baton, repos, txn,
repos_url, base_path, revprop_table,
- callback, callback_baton,
+ commit_callback, commit_baton,
authz_callback, authz_baton, pool);
}
Modified: subversion/branches/javahl-ra/subversion/libsvn_subr/gpg_agent.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_subr/gpg_agent.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_subr/gpg_agent.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_subr/gpg_agent.c Mon Dec 24 03:44:17 2012
@@ -335,8 +335,8 @@ password_get_gpg_agent(svn_boolean_t *do
/* Create the CACHE_ID which will be generated based on REALMSTRING similar
to other password caching mechanisms. */
- svn_checksum(&digest, svn_checksum_md5, realmstring, strlen(realmstring),
- pool);
+ SVN_ERR(svn_checksum(&digest, svn_checksum_md5, realmstring,
+ strlen(realmstring), pool));
cache_id = svn_checksum_to_cstring(digest, pool);
password_prompt = apr_psprintf(pool, _("Password for '%s': "), username);
Modified: subversion/branches/javahl-ra/subversion/libsvn_subr/named_atomic.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_subr/named_atomic.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_subr/named_atomic.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_subr/named_atomic.c Mon Dec 24 03:44:17 2012
@@ -396,10 +396,8 @@ svn_atomic_namespace__create(svn_atomic_
/* initialize the lock objects
*/
- svn_atomic__init_once(&mutex_initialized,
- init_thread_mutex,
- NULL,
- result_pool);
+ SVN_ERR(svn_atomic__init_once(&mutex_initialized, init_thread_mutex, NULL,
+ result_pool));
new_ns->mutex.pool = result_pool;
SVN_ERR(svn_io_file_open(&new_ns->mutex.lock_file, lock_name,
Modified: subversion/branches/javahl-ra/subversion/libsvn_subr/sysinfo.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_subr/sysinfo.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_subr/sysinfo.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_subr/sysinfo.c Mon Dec 24 03:44:17 2012
@@ -363,7 +363,8 @@ lsb_release(apr_pool_t *pool)
else if (0 == svn_cstring_casecmp(key, "Codename"))
codename = line->data;
}
- svn_stream_close(lsbinfo);
+ err = svn_error_compose_create(err,
+ svn_stream_close(lsbinfo));
if (err)
{
svn_error_clear(err);
Modified: subversion/branches/javahl-ra/subversion/libsvn_subr/utf.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_subr/utf.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_subr/utf.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_subr/utf.c Mon Dec 24 03:44:17 2012
@@ -892,7 +892,7 @@ svn_utf_stringbuf_from_utf8(svn_stringbu
*dest = svn_stringbuf_dup(src, pool);
}
- put_xlate_handle_node(node, SVN_UTF_UTON_XLATE_HANDLE, pool);
+ SVN_ERR(put_xlate_handle_node(node, SVN_UTF_UTON_XLATE_HANDLE, pool));
return err;
}
@@ -925,7 +925,7 @@ svn_utf_string_from_utf8(const svn_strin
*dest = svn_string_dup(src, pool);
}
- put_xlate_handle_node(node, SVN_UTF_UTON_XLATE_HANDLE, pool);
+ SVN_ERR(put_xlate_handle_node(node, SVN_UTF_UTON_XLATE_HANDLE, pool));
return err;
}
@@ -943,7 +943,7 @@ svn_utf_cstring_from_utf8(const char **d
SVN_ERR(get_uton_xlate_handle_node(&node, pool));
err = convert_cstring(dest, src, node, pool);
- put_xlate_handle_node(node, SVN_UTF_UTON_XLATE_HANDLE, pool);
+ SVN_ERR(put_xlate_handle_node(node, SVN_UTF_UTON_XLATE_HANDLE, pool));
return err;
}
@@ -965,7 +965,7 @@ svn_utf_cstring_from_utf8_ex2(const char
SVN_ERR(get_xlate_handle_node(&node, topage, SVN_APR_UTF8_CHARSET,
convset_key, pool));
err = convert_cstring(dest, src, node, pool);
- put_xlate_handle_node(node, convset_key, pool);
+ SVN_ERR(put_xlate_handle_node(node, convset_key, pool));
return err;
}
@@ -1062,7 +1062,7 @@ svn_utf_cstring_from_utf8_string(const c
*dest = apr_pstrmemdup(pool, src->data, src->len);
}
- put_xlate_handle_node(node, SVN_UTF_UTON_XLATE_HANDLE, pool);
+ SVN_ERR(put_xlate_handle_node(node, SVN_UTF_UTON_XLATE_HANDLE, pool));
return err;
}
Modified: subversion/branches/javahl-ra/subversion/libsvn_wc/conflicts.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_wc/conflicts.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_wc/conflicts.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_wc/conflicts.c Mon Dec 24 03:44:17 2012
@@ -1162,7 +1162,7 @@ svn_wc__conflict_create_markers(svn_skel
{
const char *propname = svn__apr_hash_index_key(hi);
- prop_conflict_skel_add(
+ SVN_ERR(prop_conflict_skel_add(
prop_data, propname,
old_props
? apr_hash_get(old_props, propname,
@@ -1180,7 +1180,7 @@ svn_wc__conflict_create_markers(svn_skel
? apr_hash_get(their_original_props, propname,
APR_HASH_KEY_STRING)
: NULL,
- result_pool, scratch_pool);
+ result_pool, scratch_pool));
}
SVN_ERR(svn_wc__wq_build_prej_install(work_items,
Modified: subversion/branches/javahl-ra/subversion/libsvn_wc/update_editor.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_wc/update_editor.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_wc/update_editor.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_wc/update_editor.c Mon Dec 24 03:44:17 2012
@@ -1629,7 +1629,7 @@ delete_entry(const char *path,
if (is_root)
{
/* Just skip this node; a future update will handle it */
- remember_skipped_tree(eb, local_abspath, pool);
+ SVN_ERR(remember_skipped_tree(eb, local_abspath, pool));
do_notification(eb, local_abspath, svn_node_unknown,
svn_wc_notify_update_skip_obstruction, scratch_pool);
@@ -1918,7 +1918,7 @@ add_directory(const char *path,
NULL, NULL,
pool));
- remember_skipped_tree(eb, db->local_abspath, pool);
+ SVN_ERR(remember_skipped_tree(eb, db->local_abspath, pool));
db->skip_this = TRUE;
db->already_notified = TRUE;
@@ -1942,7 +1942,7 @@ add_directory(const char *path,
file externals.
*/
- remember_skipped_tree(eb, db->local_abspath, pool);
+ SVN_ERR(remember_skipped_tree(eb, db->local_abspath, pool));
db->skip_this = TRUE;
db->already_notified = TRUE;
@@ -2200,7 +2200,7 @@ open_directory(const char *path,
if (is_root)
{
/* Just skip this node; a future update will handle it */
- remember_skipped_tree(eb, db->local_abspath, pool);
+ SVN_ERR(remember_skipped_tree(eb, db->local_abspath, pool));
db->skip_this = TRUE;
db->already_notified = TRUE;
@@ -2993,7 +2993,7 @@ add_file(const char *path,
apr_hash_set(pb->not_present_files, apr_pstrdup(pb->pool, fb->name),
APR_HASH_KEY_STRING, (void*)1);
- remember_skipped_tree(eb, fb->local_abspath, pool);
+ SVN_ERR(remember_skipped_tree(eb, fb->local_abspath, pool));
fb->skip_this = TRUE;
fb->already_notified = TRUE;
@@ -3018,7 +3018,7 @@ add_file(const char *path,
The reason we get here is that the adm crawler doesn't report
file externals.
*/
- remember_skipped_tree(eb, fb->local_abspath, pool);
+ SVN_ERR(remember_skipped_tree(eb, fb->local_abspath, pool));
fb->skip_this = TRUE;
fb->already_notified = TRUE;
@@ -3263,7 +3263,7 @@ open_file(const char *path,
if (is_root)
{
/* Just skip this node; a future update will handle it */
- remember_skipped_tree(eb, fb->local_abspath, pool);
+ SVN_ERR(remember_skipped_tree(eb, fb->local_abspath, pool));
fb->skip_this = TRUE;
fb->already_notified = TRUE;
Modified: subversion/branches/javahl-ra/subversion/libsvn_wc/wc-queries.sql
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_wc/wc-queries.sql?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_wc/wc-queries.sql (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_wc/wc-queries.sql Mon Dec 24 03:44:17 2012
@@ -1040,7 +1040,7 @@ FROM nodes_current n
WHERE (wc_id = ?1 AND local_relpath = ?2)
OR (wc_id = ?1 AND IS_STRICT_DESCENDANT_OF(local_relpath, ?2))
--- STMT_PRAGA_LOCKING_MODE
+-- STMT_PRAGMA_LOCKING_MODE
PRAGMA locking_mode = exclusive
/* ------------------------------------------------------------------------- */
Modified: subversion/branches/javahl-ra/subversion/libsvn_wc/wc_db.h
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_wc/wc_db.h?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_wc/wc_db.h (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_wc/wc_db.h Mon Dec 24 03:44:17 2012
@@ -1929,7 +1929,7 @@ struct svn_wc__db_info_t {
svn_boolean_t incomplete; /* TRUE if a working node is incomplete */
const char *moved_to_abspath; /* Only on op-roots. See svn_wc_status3_t. */
- svn_boolean_t moved_here; /* On both op-roots and children. */
+ svn_boolean_t moved_here; /* Only on op-roots. */
svn_boolean_t file_external;
};
Modified: subversion/branches/javahl-ra/subversion/libsvn_wc/wc_db_util.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_wc/wc_db_util.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_wc/wc_db_util.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_wc/wc_db_util.c Mon Dec 24 03:44:17 2012
@@ -142,7 +142,7 @@ svn_wc__db_util_open_db(svn_sqlite__db_t
0, NULL, result_pool, scratch_pool));
if (exclusive)
- SVN_ERR(svn_sqlite__exec_statements(*sdb, STMT_PRAGA_LOCKING_MODE));
+ SVN_ERR(svn_sqlite__exec_statements(*sdb, STMT_PRAGMA_LOCKING_MODE));
SVN_ERR(svn_sqlite__create_scalar_function(*sdb, "relpath_depth", 1,
relpath_depth, NULL));
Modified: subversion/branches/javahl-ra/subversion/mod_dav_svn/repos.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/mod_dav_svn/repos.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/mod_dav_svn/repos.c (original)
+++ subversion/branches/javahl-ra/subversion/mod_dav_svn/repos.c Mon Dec 24 03:44:17 2012
@@ -2231,8 +2231,12 @@ get_resource(request_rec *r,
}
/* Configure hook script environment variables. */
- svn_repos_hooks_setenv(repos->repos, dav_svn__get_hooks_env(r),
- r->connection->pool, r->pool);
+ serr = svn_repos_hooks_setenv(repos->repos, dav_svn__get_hooks_env(r),
+ r->connection->pool, r->pool);
+ if (serr)
+ return dav_svn__sanitize_error(serr,
+ "Error settings hooks environment",
+ HTTP_INTERNAL_SERVER_ERROR, r);
}
/* cache the filesystem object */
@@ -3179,7 +3183,7 @@ typedef struct diff_ctx_t {
} diff_ctx_t;
-static svn_error_t *
+static svn_error_t * __attribute__((warn_unused_result))
write_to_filter(void *baton, const char *buffer, apr_size_t *len)
{
diff_ctx_t *dc = baton;
@@ -3200,7 +3204,7 @@ write_to_filter(void *baton, const char
}
-static svn_error_t *
+static svn_error_t * __attribute__((warn_unused_result))
close_filter(void *baton)
{
diff_ctx_t *dc = baton;
Modified: subversion/branches/javahl-ra/subversion/svn/conflict-callbacks.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/svn/conflict-callbacks.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/svn/conflict-callbacks.c (original)
+++ subversion/branches/javahl-ra/subversion/svn/conflict-callbacks.c Mon Dec 24 03:44:17 2012
@@ -477,7 +477,7 @@ handle_text_conflict(svn_wc_conflict_res
if (performed_edit)
knows_something = TRUE;
}
- else if (strcmp(answer, "m") == 0 || strcmp(answer, ":-g") ||
+ else if (strcmp(answer, "m") == 0 || strcmp(answer, ":-g") == 0 ||
strcmp(answer, "=>-") == 0 || strcmp(answer, ":>.") == 0)
{
if (desc->kind != svn_wc_conflict_kind_text)
Modified: subversion/branches/javahl-ra/subversion/svn/proplist-cmd.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/svn/proplist-cmd.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/svn/proplist-cmd.c (original)
+++ subversion/branches/javahl-ra/subversion/svn/proplist-cmd.c Mon Dec 24 03:44:17 2012
@@ -86,7 +86,7 @@ proplist_receiver_xml(void *baton,
(! opt_state->verbose),
TRUE, iterpool));
svn_xml_make_close_tag(&sb, iterpool, "target");
- svn_cl__error_checked_fputs(sb->data, stdout);
+ SVN_ERR(svn_cl__error_checked_fputs(sb->data, stdout));
}
svn_pool_destroy(iterpool);
}
Modified: subversion/branches/javahl-ra/subversion/svnserve/serve.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/svnserve/serve.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/svnserve/serve.c (original)
+++ subversion/branches/javahl-ra/subversion/svnserve/serve.c Mon Dec 24 03:44:17 2012
@@ -3144,8 +3144,8 @@ static svn_error_t *find_repos(const cha
#ifdef SVN_HAVE_SASL
/* Should we use Cyrus SASL? */
- svn_config_get_bool(b->cfg, &b->use_sasl, SVN_CONFIG_SECTION_SASL,
- SVN_CONFIG_OPTION_USE_SASL, FALSE);
+ SVN_ERR(svn_config_get_bool(b->cfg, &b->use_sasl, SVN_CONFIG_SECTION_SASL,
+ SVN_CONFIG_OPTION_USE_SASL, FALSE));
#endif
/* Use the repository UUID as the default realm. */
@@ -3169,7 +3169,7 @@ static svn_error_t *find_repos(const cha
SVN_CONFIG_OPTION_HOOKS_ENV, NULL);
if (hooks_env)
hooks_env = svn_dirent_internal_style(hooks_env, pool);
- svn_repos_hooks_setenv(b->repos, hooks_env, pool, pool);
+ SVN_ERR(svn_repos_hooks_setenv(b->repos, hooks_env, pool, pool));
return SVN_NO_ERROR;
}
Modified: subversion/branches/javahl-ra/subversion/tests/cmdline/copy_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/tests/cmdline/copy_tests.py?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/tests/cmdline/copy_tests.py (original)
+++ subversion/branches/javahl-ra/subversion/tests/cmdline/copy_tests.py Mon Dec 24 03:44:17 2012
@@ -1878,12 +1878,14 @@ def mv_unversioned_file(sbox):
# Try to move an unversioned file.
svntest.actions.run_and_verify_svn(None, None,
- ".*unversioned1.* is not under version control.*",
+ ".*unversioned1' " +
+ "(does not exist|is not under version control)",
'mv', unver_path_1, dest_path_1)
# Try to forcibly move an unversioned file.
svntest.actions.run_and_verify_svn(None, None,
- ".*unversioned2.* is not under version control.*",
+ ".*unversioned2.* " +
+ "(does not exist|is not under version control)",
'mv',
unver_path_2, dest_path_2)
@@ -5457,11 +5459,13 @@ def copy_deleted_dir(sbox):
sbox.simple_rm('A')
svntest.actions.run_and_verify_svn(None, None,
- 'svn: E145000: Path.* does not exist',
+ '(svn: E145000: Path.* does not exist)|' +
+ "(svn: E155035: Deleted node .* copied)",
'cp', sbox.ospath('iota'),
sbox.ospath('new_iota'))
svntest.actions.run_and_verify_svn(None, None,
- 'svn: E145000: Path.* does not exist',
+ '(svn: E145000: Path.* does not exist)|' +
+ "(svn: E155035: Deleted node .* copied)",
'cp', sbox.ospath('A/D'),
sbox.ospath('new_D'))
Modified: subversion/branches/javahl-ra/subversion/tests/cmdline/patch_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/tests/cmdline/patch_tests.py?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/tests/cmdline/patch_tests.py (original)
+++ subversion/branches/javahl-ra/subversion/tests/cmdline/patch_tests.py Mon Dec 24 03:44:17 2012
@@ -3997,24 +3997,57 @@ def patch_target_no_eol_at_eof(sbox):
patch_file_path = make_patch_path(sbox)
iota_path = sbox.ospath('iota')
+ mu_path = sbox.ospath('A/mu')
iota_contents = [
"This is the file iota."
]
+ mu_contents = [
+ "context\n",
+ "context\n",
+ "context\n",
+ "context\n",
+ "This is the file mu.\n",
+ "context\n",
+ "context\n",
+ "context\n",
+ "context", # no newline at end of file
+ ]
+
svntest.main.file_write(iota_path, ''.join(iota_contents))
+ svntest.main.file_write(mu_path, ''.join(mu_contents))
expected_output = svntest.wc.State(wc_dir, {
'iota' : Item(verb='Sending'),
+ 'A/mu' : Item(verb='Sending'),
})
expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
expected_status.tweak('iota', wc_rev=2)
+ expected_status.tweak('A/mu', wc_rev=2)
svntest.actions.run_and_verify_commit(wc_dir, expected_output,
expected_status, None, wc_dir)
unidiff_patch = [
- "--- iota\t(revision 1)\n",
+ "Index: A/mu\n",
+ "===================================================================\n",
+ "--- A/mu\t(revision 2)\n",
+ "+++ A/mu\t(working copy)\n",
+ "@@ -2,8 +2,8 @@ context\n",
+ " context\n",
+ " context\n",
+ " context\n",
+ "-This is the file mu.\n",
+ "+It is really the file mu.\n",
+ " context\n",
+ " context\n",
+ " context\n",
+ " context\n",
+ "\\ No newline at end of file\n",
+ "Index: iota\n",
+ "===================================================================\n",
+ "--- iota\t(revision 2)\n",
"+++ iota\t(working copy)\n",
- "@@ -1,7 +1,7 @@\n",
- "-This is the file iota.\n"
+ "@@ -1 +1 @@\n",
+ "-This is the file iota.\n",
"\\ No newline at end of file\n",
"+It is really the file 'iota'.\n",
"\\ No newline at end of file\n",
@@ -4025,15 +4058,29 @@ def patch_target_no_eol_at_eof(sbox):
iota_contents = [
"It is really the file 'iota'."
]
+ mu_contents = [
+ "context\n",
+ "context\n",
+ "context\n",
+ "context\n",
+ "It is really the file mu.\n",
+ "context\n",
+ "context\n",
+ "context\n",
+ "context", # no newline at end of file
+ ]
expected_output = [
+ 'U %s\n' % sbox.ospath('A/mu'),
'U %s\n' % sbox.ospath('iota'),
]
expected_disk = svntest.main.greek_state.copy()
expected_disk.tweak('iota', contents=''.join(iota_contents))
+ expected_disk.tweak('A/mu', contents=''.join(mu_contents))
expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
expected_status.tweak('iota', status='M ', wc_rev=2)
+ expected_status.tweak('A/mu', status='M ', wc_rev=2)
expected_skip = wc.State('', { })
Modified: subversion/branches/javahl-ra/subversion/tests/libsvn_subr/auth-test.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/tests/libsvn_subr/auth-test.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/tests/libsvn_subr/auth-test.c (original)
+++ subversion/branches/javahl-ra/subversion/tests/libsvn_subr/auth-test.c Mon Dec 24 03:44:17 2012
@@ -143,8 +143,8 @@ test_platform_specific_auth_providers(ap
/* Test GNOME Keyring auth providers */
#ifdef SVN_HAVE_GNOME_KEYRING
- svn_auth_get_platform_specific_provider(&provider, "gnome_keyring",
- "simple", pool);
+ SVN_ERR(svn_auth_get_platform_specific_provider(&provider, "gnome_keyring",
+ "simple", pool));
if (!provider)
return svn_error_createf
@@ -152,8 +152,8 @@ test_platform_specific_auth_providers(ap
"svn_auth_get_platform_specific_provider('gnome_keyring', 'simple') "
"should not return NULL");
- svn_auth_get_platform_specific_provider(&provider, "gnome_keyring",
- "ssl_client_cert_pw", pool);
+ SVN_ERR(svn_auth_get_platform_specific_provider(&provider, "gnome_keyring",
+ "ssl_client_cert_pw", pool));
if (!provider)
return svn_error_createf
@@ -162,8 +162,8 @@ test_platform_specific_auth_providers(ap
"'ssl_client_cert_pw') should not return NULL");
/* Make sure you do not get a Windows auth provider */
- svn_auth_get_platform_specific_provider(&provider, "windows",
- "simple", pool);
+ SVN_ERR(svn_auth_get_platform_specific_provider(&provider, "windows",
+ "simple", pool));
if (provider)
return svn_error_createf
Modified: subversion/branches/javahl-ra/subversion/tests/libsvn_wc/conflict-data-test.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/tests/libsvn_wc/conflict-data-test.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/tests/libsvn_wc/conflict-data-test.c (original)
+++ subversion/branches/javahl-ra/subversion/tests/libsvn_wc/conflict-data-test.c Mon Dec 24 03:44:17 2012
@@ -86,8 +86,10 @@ compare_conflict(const svn_wc_conflict_d
SVN_TEST_STRING_ASSERT(expected->my_abspath, actual->my_abspath);
SVN_TEST_STRING_ASSERT(expected->merged_file, actual->merged_file);
SVN_TEST_ASSERT(expected->operation == actual->operation);
- compare_version(expected->src_left_version, actual->src_left_version);
- compare_version(expected->src_right_version, actual->src_right_version);
+ SVN_ERR(compare_version(expected->src_left_version,
+ actual->src_left_version));
+ SVN_ERR(compare_version(expected->src_right_version,
+ actual->src_right_version));
return SVN_NO_ERROR;
}
Modified: subversion/branches/javahl-ra/tools/server-side/fsfs-reorg.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/tools/server-side/fsfs-reorg.c?rev=1425583&r1=1425582&r2=1425583&view=diff
==============================================================================
--- subversion/branches/javahl-ra/tools/server-side/fsfs-reorg.c (original)
+++ subversion/branches/javahl-ra/tools/server-side/fsfs-reorg.c Mon Dec 24 03:44:17 2012
@@ -2003,9 +2003,11 @@ write_revisions(fs_fs_t *fs,
for (i = 0; i < pack->info->nelts; ++i)
{
- revision_info_t *info = APR_ARRAY_IDX(pack->info, i, revision_info_t*);
- svn_stream_printf(stream, itempool, "%" APR_UINT64_T_FMT "\n",
- info->target.offset);
+ revision_info_t *info = APR_ARRAY_IDX(pack->info, i,
+ revision_info_t *);
+ SVN_ERR(svn_stream_printf(stream, itempool,
+ "%" APR_UINT64_T_FMT "\n",
+ info->target.offset));
svn_pool_clear(itempool);
}
}