diff --git a/internal/grpc/services/gateway/storageprovider.go b/internal/grpc/services/gateway/storageprovider.go index e7bafde9856..c944a293510 100644 --- a/internal/grpc/services/gateway/storageprovider.go +++ b/internal/grpc/services/gateway/storageprovider.go @@ -169,7 +169,7 @@ func (s *svc) ListStorageSpaces(ctx context.Context, req *provider.ListStorageSp }, nil } - providers = []*registry.ProviderInfo{} + providers = make([]*registry.ProviderInfo, 0, len(res.Providers)) // FIXME filter only providers that have an id set ... currently none have? // bug? only ProviderPath is set for i := range res.Providers { @@ -201,7 +201,7 @@ func (s *svc) ListStorageSpaces(ctx context.Context, req *provider.ListStorageSp uniqueSpaces[spacesFromProviders[i][j].Id.OpaqueId] = spacesFromProviders[i][j] } } - spaces := []*provider.StorageSpace{} + spaces := make([]*provider.StorageSpace, 0, len(uniqueSpaces)) for spaceID := range uniqueSpaces { spaces = append(spaces, uniqueSpaces[spaceID]) } diff --git a/pkg/storage/fs/owncloudsql/owncloudsql.go b/pkg/storage/fs/owncloudsql/owncloudsql.go index a9d5e784fec..186d279ef68 100644 --- a/pkg/storage/fs/owncloudsql/owncloudsql.go +++ b/pkg/storage/fs/owncloudsql/owncloudsql.go @@ -2162,7 +2162,7 @@ func (fs *ocfs) HashFile(path string) (string, string, string, error) { func (fs *ocfs) ListStorageSpaces(ctx context.Context, filter []*provider.ListStorageSpacesRequest_Filter) ([]*provider.StorageSpace, error) { // TODO(corby): Implement - return nil, nil + return nil, errtypes.NotSupported("list storage spaces") } func readChecksumIntoResourceChecksum(ctx context.Context, checksums, algo string, ri *provider.ResourceInfo) { diff --git a/pkg/storage/utils/decomposedfs/decomposedfs.go b/pkg/storage/utils/decomposedfs/decomposedfs.go index e524bf2d409..d2f649d454c 100644 --- a/pkg/storage/utils/decomposedfs/decomposedfs.go +++ b/pkg/storage/utils/decomposedfs/decomposedfs.go @@ -530,7 +530,7 @@ func (fs *Decomposedfs) ListStorageSpaces(ctx context.Context, filter []*provide return nil, err } - var spaces []*provider.StorageSpace + spaces := make([]*provider.StorageSpace, 0, len(matches)) u, ok := user.ContextGetUser(ctx) if !ok { @@ -628,12 +628,10 @@ func (fs *Decomposedfs) ListStorageSpaces(ctx context.Context, filter []*provide // -1 = uncalculated // -2 = unknown // -3 = unlimited - if quota, err := strconv.ParseInt(string(v), 10, 64); err == nil { - if quota >= 0 { - space.Quota = &provider.Quota{ - QuotaMaxBytes: uint64(quota), - QuotaMaxFiles: math.MaxUint64, // TODO MaxUInt64? = unlimited? why even max files? 0 = unlimited? - } + if quota, err := strconv.ParseUint(string(v), 10, 64); err == nil { + space.Quota = &provider.Quota{ + QuotaMaxBytes: quota, + QuotaMaxFiles: math.MaxUint64, // TODO MaxUInt64? = unlimited? why even max files? 0 = unlimited? } } else { appctx.GetLogger(ctx).Debug().Err(err).Str("nodepath", matches[i]).Msg("could not read quota")