mirror of
https://github.com/navidrome/navidrome.git
synced 2026-04-03 06:41:01 +00:00
fix(scanner): validate library ID to prevent negative values
Signed-off-by: Deluan <deluan@navidrome.org>
This commit is contained in:
parent
f64b51f161
commit
01f68f4a75
@ -123,6 +123,9 @@ func parseTargets(targetsStr string) ([]scanner.ScanTarget, error) {
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("invalid library ID %q: %w", libIDStr, err)
|
||||
}
|
||||
if libID <= 0 {
|
||||
return nil, fmt.Errorf("invalid library ID %q", libIDStr)
|
||||
}
|
||||
|
||||
targets = append(targets, scanner.ScanTarget{
|
||||
LibraryID: libID,
|
||||
|
||||
@ -68,10 +68,10 @@ var _ = Describe("parseTargets", func() {
|
||||
Expect(err.Error()).To(ContainSubstring("invalid library ID"))
|
||||
})
|
||||
|
||||
It("handles negative library ID", func() {
|
||||
targets, err := parseTargets("-1:Music")
|
||||
Expect(err).ToNot(HaveOccurred()) // Actually valid - strconv.Atoi accepts negative numbers
|
||||
Expect(targets[0].LibraryID).To(Equal(-1))
|
||||
It("return error on negative library ID", func() {
|
||||
_, err := parseTargets("-1:Music")
|
||||
Expect(err).To(HaveOccurred())
|
||||
Expect(err.Error()).To(ContainSubstring("invalid library ID"))
|
||||
})
|
||||
|
||||
It("handles only whitespace", func() {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user