summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Newson <rnewson@apache.org>2011-05-30 10:09:29 +0000
committerRobert Newson <rnewson@apache.org>2011-05-30 10:09:29 +0000
commit4c737d9d01005f29619c2186991cc82b2d31c947 (patch)
treefbc53b8ecc72e3732fe29916125d56b65e71075b
parente928b596dd60448d6978829e19f78e2eb06b9fb3 (diff)
supervisor:delete_child returns ok after a successful terminated_child in R14B03
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1129107 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--src/couchdb/couch_rep.erl10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/couchdb/couch_rep.erl b/src/couchdb/couch_rep.erl
index fd323f7f..6e4295ea 100644
--- a/src/couchdb/couch_rep.erl
+++ b/src/couchdb/couch_rep.erl
@@ -84,8 +84,14 @@ end_replication({BaseId, Extension}) ->
{error, not_found} = R ->
R;
ok ->
- ok = supervisor:delete_child(couch_rep_sup, RepId),
- {ok, {cancelled, ?l2b(BaseId)}}
+ case supervisor:delete_child(couch_rep_sup, RepId) of
+ ok ->
+ {ok, {cancelled, ?l2b(BaseId)}};
+ {error, not_found} ->
+ {ok, {cancelled, ?l2b(BaseId)}};
+ {error, _} = Error ->
+ Error
+ end
end.
start_replication(RepDoc, {BaseId, Extension}, UserCtx) ->