anchor.diff:      end,
   
       NewAttachments = [
  -        {list_to_binary(Name), {list_to_binary(ContentType), Content}} ||
  +        {validate_attachment_name(Name), {list_to_binary(ContentType), Content}} ||
           {Name, {ContentType, _}, Content} <-
           proplists:get_all_values("_attachments", Form)
       ],
  
positive.code:         [Rev0|_] -> Rev0;
          [] -> undefined
      end,
      case couch_httpd:header_value(Req, "X-Couch-Full-Commit", "false") of
      "true" ->
          Options = [full_commit];
  
negative.code:         Docs = lists:map(
              fun({ObjProps} = JsonObj) ->
                  Doc = couch_doc:from_json_obj(JsonObj),
                  validate_attachment_names(Doc),
                  Id = case Doc#doc.id of
                      <<>> -> couch_util:new_uuid();
                      Id0 -> Id0
  