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
|
||||
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
|
||||
endIdx := startOffset + pageSize
|
||||
if endIdx > totalCount {
|
||||
|
|
|
|||
Loading…
Reference in New Issue