fix: fix panic in pagination if we get a bad request
This commit is contained in:
parent
b9d859ada2
commit
19c3b67cdd
|
|
@ -509,6 +509,20 @@ func (api *oliveTinAPI) GetActionLogs(ctx ctx.Context, req *connect.Request[apiv
|
||||||
pageSize := api.cfg.LogHistoryPageSize
|
pageSize := api.cfg.LogHistoryPageSize
|
||||||
startOffset := req.Msg.StartOffset
|
startOffset := req.Msg.StartOffset
|
||||||
|
|
||||||
|
// Validate and clamp offset to prevent out-of-bounds access
|
||||||
|
if startOffset < 0 {
|
||||||
|
startOffset = 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// If offset is beyond available data, return empty result with correct metadata
|
||||||
|
if startOffset >= totalCount {
|
||||||
|
ret.CountRemaining = 0
|
||||||
|
ret.PageSize = pageSize
|
||||||
|
ret.TotalCount = totalCount
|
||||||
|
ret.StartOffset = startOffset
|
||||||
|
return connect.NewResponse(ret), nil
|
||||||
|
}
|
||||||
|
|
||||||
startIdx := startOffset
|
startIdx := startOffset
|
||||||
endIdx := startOffset + pageSize
|
endIdx := startOffset + pageSize
|
||||||
if endIdx > totalCount {
|
if endIdx > totalCount {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue