fix: satisfy mobile lint checks

This commit is contained in:
Alexander Anisimov
2026-05-06 22:24:49 +03:00
parent 3159a1de73
commit cd0a2fce46

View File

@@ -47,6 +47,7 @@ const (
dataTransport = "datachannel"
defaultDNSServer = "1.1.1.1:53"
carrierWBStream = "wbstream"
carrierJazz = "jazz"
)
//nolint:gochecknoglobals // Mobile bindings expose a singleton runtime controlled by the embedding app.
@@ -124,8 +125,8 @@ func SetVP8Options(fps, batchSize int) {
mu.Lock()
defer mu.Unlock()
ensureDefaultConfigLocked()
defaults.vp8FPS = clamp(fps, 1, 120)
defaults.vp8BatchSize = clamp(batchSize, 1, 64)
defaults.vp8FPS = clamp(fps, 120)
defaults.vp8BatchSize = clamp(batchSize, 64)
}
// SetDebug enables or disables verbose logging.
@@ -182,16 +183,8 @@ func Check(
registerDefaults()
carrierName = normalizeCarrier(carrierName)
transportName = normalizeTransport(transportName)
switch {
case carrierName == "":
return 0, errCarrierRequired
case roomID == "" && carrierName != "jazz":
return 0, errRoomIDRequired
case clientID == "":
return 0, errClientIDRequired
case keyHex == "":
return 0, errKeyHexRequired
if err := validateStartArgs(carrierName, roomID, clientID, keyHex); err != nil {
return 0, err
}
if timeoutMillis <= 0 {
@@ -234,8 +227,8 @@ func Check(
"",
0,
0,
clamp(vp8FPS, 1, 120),
clamp(vp8BatchSize, 1, 64),
clamp(vp8FPS, 120),
clamp(vp8BatchSize, 64),
)
}()
@@ -275,17 +268,11 @@ func startWithConfig(
cfg.transport = normalizeTransport(transportName)
}
switch {
case cancel != nil:
if cancel != nil {
return errAlreadyRunning
case carrierName == "":
return errCarrierRequired
case roomID == "" && carrierName != "jazz":
return errRoomIDRequired
case clientID == "":
return errClientIDRequired
case keyHex == "":
return errKeyHexRequired
}
if err := validateStartArgs(carrierName, roomID, clientID, keyHex); err != nil {
return err
}
roomURL := buildRoomURL(carrierName, roomID)
@@ -461,11 +448,26 @@ func normalizeCarrier(carrierName string) string {
return carrierName
}
func validateStartArgs(carrierName, roomID, clientID, keyHex string) error {
switch {
case carrierName == "":
return errCarrierRequired
case roomID == "" && carrierName != carrierJazz:
return errRoomIDRequired
case clientID == "":
return errClientIDRequired
case keyHex == "":
return errKeyHexRequired
default:
return nil
}
}
func buildRoomURL(carrierName, roomID string) string {
switch carrierName {
case "telemost":
return "https://telemost.yandex.ru/j/" + roomID
case "jazz":
case carrierJazz:
if roomID == "" {
return "any"
}
@@ -477,9 +479,9 @@ func buildRoomURL(carrierName, roomID string) string {
}
}
func clamp(value, minValue, maxValue int) int {
if value < minValue {
return minValue
func clamp(value, maxValue int) int {
if value < 1 {
return 1
}
if value > maxValue {
return maxValue