anchor.diff:                     RiakcPid :: pid()) ->
       [binary()] | {error, term()}.
   gc_manifests(Manifests, RiakObject, Bucket, Key, RiakcPid) ->
  -    catch lists:foldl(fun(M, UUIDs) -> 
  -                          gc_manifest(M, RiakObject, Bucket, Key, RiakcPid, UUIDs) 
  -                      end, [], Manifests).
  +    F = fun(M, {error, _}=Error) ->
  +               Error;
  +           (M, UUIDs) -> 
  +               gc_manifest(M, RiakObject, Bucket, Key, RiakcPid, UUIDs) 
  +        end, 
  +    lists:foldl(F, [], Manifests).
   
   -spec gc_manifest(M :: lfs_manifest(),
                     RiakObject :: riakc_obj:riakc_obj(),
  
positive.code:                           {error, term()}.
  active_manifests({ok, RiakObject, Manifests}) -> 
      {ok, RiakObject, riak_cs_manifest_utils:active_manifests(Manifests)};
  active_manifests({error, _}=Error) -> Error.
  
  -spec clean_manifests([lfs_manifest()], pid()) -> [lfs_manifest()].
  clean_manifests(ActiveManifests, RiakcPid) ->
  
negative.code: check({ok, _}, Val) -> 
      Val;
  check({error, _}=Error, _Val) -> 
      Error.
  
  %% @private
  -spec gc_specific_manifests(UUIDsToMark :: [binary()],
  