static bool IsReadOnlyImpl(UnityEngine.Object asset) { string assetPath = AssetDatabase.GetAssetPath(asset); if (string.IsNullOrEmpty(assetPath)) { return(false); } if (Provider.enabled && VersionControlUtils.IsPathVersioned(assetPath)) { return(!AssetDatabase.CanOpenForEdit(asset, StatusQueryOptions.UseCachedIfPossible)); } return((uint)(File.GetAttributes(assetPath) & FileAttributes.ReadOnly) > 0U); }