-
-
Notifications
You must be signed in to change notification settings - Fork 85
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
PostgresNumeric
cannot decode large number (like 1234567890123
) and it causes runtime crash.
To Reproduce
- call this line
PostgresNumeric(string: "1234567890123")
- crash!
Expected behavior
Can call initializer without crash.
Environment
- Vapor Framework version: 4.48.8
- postgres-nio: 1.6.2
Additional context
func reverseChunked(by maxSize: Int) -> [SubSequence] { |
this function does not work correctly and return values over maxSize
.
let uuu = "1234567890123"
print(uuu.reverseChunked(by: 4)) // ["1", "2345", "67890", "123"]
then here, Int16(67890)!
causes crash.
postgres-nio/Sources/PostgresNIO/Data/PostgresData+Numeric.swift
Lines 91 to 95 in 046d3ba
for chunk in integer.reverseChunked(by: 4) { | |
weight += 1 | |
// convert the 4 digits to an Int16 | |
buffer.writeInteger(Int16(chunk)!, endianness: .big) | |
} |
oamosov
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working