diff --git a/src/apps/relay/netengine.c b/src/apps/relay/netengine.c index 8f80ac51..a63bc3c7 100644 --- a/src/apps/relay/netengine.c +++ b/src/apps/relay/netengine.c @@ -107,7 +107,6 @@ static band_limit_t allocate_bps(band_limit_t bps, int positive) if(turn_params.bps_capacity_allocated >= bps) { turn_params.bps_capacity_allocated -= bps; - ret = turn_params.bps_capacity_allocated; } else { turn_params.bps_capacity_allocated = 0; } @@ -115,6 +114,7 @@ static band_limit_t allocate_bps(band_limit_t bps, int positive) pthread_mutex_unlock(&mutex_bps); } + return ret; } diff --git a/src/server/ns_turn_server.c b/src/server/ns_turn_server.c index 2d8dcc96..0904d7ca 100644 --- a/src/server/ns_turn_server.c +++ b/src/server/ns_turn_server.c @@ -1179,7 +1179,7 @@ static int handle_turn_allocate(turn_turnserver *server, if(max_bps && (!bps || (bps && (bps>max_bps)))) { bps = max_bps; } - if(bps) { + if(bps && (ss->bps == 0)) { ss->bps = server->allocate_bps_func(bps,1); if(!(ss->bps)) { *err_code = 486;