input-output-hk / input-output-hk/cuddle
genEnum crashes on empty group
Open
bug
- Dominant language
- Haskell
- Stars
- 7
- Forks
- 5
- PR merge metrics
- No merged PRs in 30d
Description
## Description
`genEnum` crashes when given an empty group because `choose` receives an invalid range.
## Location
`src/Codec/CBOR/Cuddle/CBOR/Gen.hs`, `genEnum` function
## Details
```haskell
genEnum tree = case tree of
CTree.Group trees -> do
ix <- choose (0, length trees - 1)
genForCTree $ trees !! ix
```
When `trees` is empty, `choose (0, length trees - 1)` becomes `choose (0, -1)`, which is an invalid range.
## Suggested fix
Handle empty groups explicitly with a clear error message before calling `choose`.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.