unsafe bool InternalSetProperty(string target, string propertyName, svn_string_t value, SvnSetPropertyArgs args, AprPool pool) { if (target == null) { throw new ArgumentNullException(nameof(target)); } if (string.IsNullOrEmpty(propertyName)) { throw new ArgumentNullException(nameof(propertyName)); } if (string.IsNullOrEmpty(propertyName)) { throw new ArgumentNullException(nameof(propertyName)); } EnsureState(SvnContextState.ConfigLoaded); // We might need repository access using var store = new ArgsStore(this, args, pool); sbyte *pcPropertyName = pool.AllocString(propertyName); if (!svn_props.svn_prop_name_is_valid(pcPropertyName)) { throw new ArgumentException(SharpSvnStrings.PropertyNameIsNotValid, nameof(propertyName)); } svn_error_t r = svn_client.svn_client_propset_local( pcPropertyName, value, AllocDirentArray(NewSingleItemCollection(SvnTools.GetNormalizedFullPath(target)), pool), (svn_depth_t)args.Depth, args.SkipChecks, CreateChangeListsList(args.ChangeLists, pool), // Intersect ChangeLists CtxHandle, pool.Handle); return(args.HandleResult(this, r, target)); }
static string GetFullTarget(string path) { return(SvnTools.GetNormalizedFullPath(path)); }