mirror of
https://github.com/cc65/cc65.git
synced 2025-02-08 11:31:34 +00:00
rp6502 validate write_xstack count
This commit is contained in:
parent
dd95d20268
commit
9ffa2d05e6
@ -47,8 +47,7 @@ struct __RP6502
|
|||||||
unsigned char step1;
|
unsigned char step1;
|
||||||
unsigned int addr1;
|
unsigned int addr1;
|
||||||
unsigned char xstack;
|
unsigned char xstack;
|
||||||
unsigned char errno_lo;
|
unsigned int errno;
|
||||||
unsigned char errno_hi;
|
|
||||||
unsigned char op;
|
unsigned char op;
|
||||||
unsigned char irq;
|
unsigned char irq;
|
||||||
const unsigned char spin;
|
const unsigned char spin;
|
||||||
|
@ -1,8 +1,12 @@
|
|||||||
#include <rp6502.h>
|
#include <rp6502.h>
|
||||||
|
#include <errno.h>
|
||||||
|
|
||||||
int __fastcall__ write_xstack (const void* buf, unsigned count, int fildes)
|
int __fastcall__ write_xstack (const void* buf, unsigned count, int fildes)
|
||||||
{
|
{
|
||||||
unsigned i;
|
unsigned i;
|
||||||
|
if (count > 256) {
|
||||||
|
return _mappederrno (EINVAL);
|
||||||
|
}
|
||||||
for (i = count; i;) {
|
for (i = count; i;) {
|
||||||
ria_push_char (((char*)buf)[--i]);
|
ria_push_char (((char*)buf)[--i]);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user