Checkout
Greg Stein
committed
on 08 Feb 12
Strengthen the discussion and checks around passing all children into
an add_directory() call.

* subversion/include/svn_editor.h:
(...): … Show more
Strengthen the discussion and checks around passing all children into

an add_directory() call.

* subversion/include/svn_editor.h:

 (...): clarify that children must be mentioned in the parent's

   add_directory call.

* subversion/libsvn_delta/editor.c:

 (...): reorder some of the marker declarations and add docs

 (marker_added_dir, MARKER_ADDED_DIR): new marker

 (MARK_RELPATH): helper macro for marking stuff in completed_nodes

 (MARK_COMPLETED, MARK_ALLOW_ADD, MARK_ALLOW_ALTER): use MARK_RELPATH

 (MARK_ADDED_DIR): new marking helper for nodes from add_directory.

   another variant for when checking is disabled.

 (CHECK_UNKNOWN_CHILD): new validation to ensure a child under an

   added directory was mentioned as a child. plus a variant for when

   checking is disabled.

 (check_unknown_child): helper for above

 (svn_editor_add_directory): mark this specifically as an added dir.

   use the new CHECK_UNKNOWN_CHILD() checking macro.

 (svn_editor_add_file, svn_editor_add_symlink,

     svn_editor_add_absent): use the new CHECK_UNKNOWN_CHILD macro.

Show less