1
0
mirror of https://github.com/cc65/cc65.git synced 2024-07-04 13:29:35 +00:00

Made some string output functions reject an invalid NULL buffer pointer.

This commit is contained in:
Greg King 2015-07-09 14:46:28 -04:00
parent 219905c6bc
commit 146daa1d0a

View File

@ -86,9 +86,16 @@ L1: dex
sta bufptr+0
stx bufptr+1
; There must be a buffer if its size is non-zero.
bit bufsize+1
bmi L5
ora bufptr+1
bze L0 ; The pointer shouldn't be NULL
; Restore ap and call _printf
pla
L5: pla
tax
pla
jsr __printf
@ -125,6 +132,11 @@ L4: lda ccount+0
; Bail out if size is too high.
L9: lda #ERANGE
.byte $2C ;(bit $xxxx)
; NULL buffer pointers usually are invalid.
L0: lda #EINVAL
jsr __directerrno ; Return -1
jmp incsp6 ; Drop parameters