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/23 07:14:10 UTC
svn commit: r1425416 - in /subversion/branches/javahl-ra: ./
subversion/bindings/javahl/src/org/apache/subversion/javahl/
subversion/include/ subversion/libsvn_client/ subversion/libsvn_wc/
subversion/svn/
Author: vmpn
Date: Sun Dec 23 06:14:09 2012
New Revision: 1425416
URL: http://svn.apache.org/viewvc?rev=1425416&view=rev
Log:
On the javahl-ra branch:
Bring up-to-date with JavaHL changes on trunk@1366031
Modified:
subversion/branches/javahl-ra/ (props changed)
subversion/branches/javahl-ra/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java
subversion/branches/javahl-ra/subversion/include/svn_wc.h
subversion/branches/javahl-ra/subversion/libsvn_client/externals.c
subversion/branches/javahl-ra/subversion/libsvn_wc/adm_ops.c
subversion/branches/javahl-ra/subversion/svn/notify.c
Propchange: subversion/branches/javahl-ra/
------------------------------------------------------------------------------
Merged /subversion/trunk:r1366021-1366031
Modified: subversion/branches/javahl-ra/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java?rev=1425416&r1=1425415&r2=1425416&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java (original)
+++ subversion/branches/javahl-ra/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java Sun Dec 23 06:14:09 2012
@@ -552,9 +552,14 @@ public class ClientNotifyInformation ext
/** Operation failed because a node is obstructed */
failed_obstructed ("failed by obstruction"),
- /** Conflict resolver is starting/ending. */
+ /** Conflict resolver is starting. */
conflict_resolver_starting ("conflict resolver starting"),
- conflict_resolver_done ("conflict resolver done");
+
+ /** Conflict resolver is done. */
+ conflict_resolver_done ("conflict resolver done"),
+
+ /** Operation left local modifications. */
+ left_local_modifications ("left local modifications");
/**
* The description of the action.
Modified: subversion/branches/javahl-ra/subversion/include/svn_wc.h
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/include/svn_wc.h?rev=1425416&r1=1425415&r2=1425416&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/include/svn_wc.h (original)
+++ subversion/branches/javahl-ra/subversion/include/svn_wc.h Sun Dec 23 06:14:09 2012
@@ -1229,12 +1229,22 @@ typedef enum svn_wc_notify_action_t
* @since New in 1.8. */
svn_wc_notify_failed_obstruction,
- /** Conflict resolver is starting or done.
+ /** Conflict resolver is starting.
* This can be used by clients to detect when to display conflict summary
* information, for example.
* @since New in 1.8. */
svn_wc_notify_conflict_resolver_starting,
- svn_wc_notify_conflict_resolver_done
+
+ /** Conflict resolver is done.
+ * This can be used by clients to detect when to display conflict summary
+ * information, for example.
+ * @since New in 1.8. */
+ svn_wc_notify_conflict_resolver_done,
+
+ /** The current operation left local changes of something that was deleted
+ * The changes are available on (and below) the notified path
+ * @since New in 1.8. */
+ svn_wc_notify_left_local_modifications
} svn_wc_notify_action_t;
Modified: subversion/branches/javahl-ra/subversion/libsvn_client/externals.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_client/externals.c?rev=1425416&r1=1425415&r2=1425416&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_client/externals.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_client/externals.c Sun Dec 23 06:14:09 2012
@@ -59,6 +59,8 @@ relegate_dir_external(svn_wc_context_t *
const char *local_abspath,
svn_cancel_func_t cancel_func,
void *cancel_baton,
+ svn_wc_notify_func2_t notify_func,
+ void *notify_baton,
apr_pool_t *scratch_pool)
{
svn_error_t *err = SVN_NO_ERROR;
@@ -121,6 +123,18 @@ relegate_dir_external(svn_wc_context_t *
}
/* ### TODO: We should notify the user about the rename */
+ if (notify_func)
+ {
+ svn_wc_notify_t *notify;
+
+ notify = svn_wc_create_notify(err ? local_abspath : new_path,
+ svn_wc_notify_left_local_modifications,
+ scratch_pool);
+ notify->kind = svn_node_dir;
+ notify->err = err;
+
+ notify_func(notify_baton, notify, scratch_pool);
+ }
}
return svn_error_trace(err);
@@ -266,6 +280,7 @@ switch_dir_external(const char *local_ab
SVN_ERR(relegate_dir_external(ctx->wc_ctx, defining_abspath,
local_abspath,
ctx->cancel_func, ctx->cancel_baton,
+ ctx->notify_func2, ctx->notify_baton2,
pool));
}
else
@@ -560,6 +575,17 @@ handle_external_item_removal(const svn_c
notify->err = err;
(ctx->notify_func2)(ctx->notify_baton2, notify, scratch_pool);
+
+ if (err && err->apr_err == SVN_ERR_WC_LEFT_LOCAL_MOD)
+ {
+ notify = svn_wc_create_notify(local_abspath,
+ svn_wc_notify_left_local_modifications,
+ scratch_pool);
+ notify->kind = svn_node_dir;
+ notify->err = err;
+
+ (ctx->notify_func2)(ctx->notify_baton2, notify, scratch_pool);
+ }
}
if (err && err->apr_err == SVN_ERR_WC_LEFT_LOCAL_MOD)
Modified: subversion/branches/javahl-ra/subversion/libsvn_wc/adm_ops.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/libsvn_wc/adm_ops.c?rev=1425416&r1=1425415&r2=1425416&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/libsvn_wc/adm_ops.c (original)
+++ subversion/branches/javahl-ra/subversion/libsvn_wc/adm_ops.c Sun Dec 23 06:14:09 2012
@@ -127,7 +127,6 @@ process_committed_leaf(svn_wc__db_t *db,
svn_kind_t kind;
const svn_checksum_t *copied_checksum;
svn_revnum_t new_changed_rev = new_revnum;
- svn_boolean_t have_base;
svn_boolean_t prop_mods;
svn_skel_t *work_item = NULL;
@@ -137,7 +136,7 @@ process_committed_leaf(svn_wc__db_t *db,
NULL, NULL, NULL, NULL, &copied_checksum,
NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, &prop_mods,
- &have_base, NULL, NULL,
+ NULL, NULL, NULL,
db, local_abspath,
scratch_pool, scratch_pool));
@@ -154,15 +153,11 @@ process_committed_leaf(svn_wc__db_t *db,
if (status == svn_wc__db_status_deleted)
{
return svn_error_trace(
- svn_wc__db_op_remove_node(
- NULL,
+ svn_wc__db_base_remove(
db, local_abspath,
- FALSE, FALSE,
- (have_base && !via_recurse)
+ FALSE /* keep_as_working */,
+ (! via_recurse)
? new_revnum : SVN_INVALID_REVNUM,
- svn_wc__db_status_not_present,
- kind,
- NULL, NULL,
NULL, NULL,
scratch_pool));
}
Modified: subversion/branches/javahl-ra/subversion/svn/notify.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-ra/subversion/svn/notify.c?rev=1425416&r1=1425415&r2=1425416&view=diff
==============================================================================
--- subversion/branches/javahl-ra/subversion/svn/notify.c (original)
+++ subversion/branches/javahl-ra/subversion/svn/notify.c Sun Dec 23 06:14:09 2012
@@ -214,6 +214,12 @@ notify(void *baton, const svn_wc_notify_
}
break;
+ case svn_wc_notify_left_local_modifications:
+ if ((err = svn_cmdline_printf(pool, "Left local modifications as '%s'\n",
+ path_local)))
+ goto print_error;
+ break;
+
case svn_wc_notify_update_replace:
nb->received_some_change = TRUE;
if ((err = svn_cmdline_printf(pool, "R %s\n", path_local)))