phat code Fast, small, easy to understand—pick any two!
Main

Projects

Downloads

Articles

Links

Forum

 

View Message

Back to Messages
Plasma Mon Oct 7 2024 at 4:51 pm
I think the actual INPUT$ buffer is internal
 
 
Maybe QB tries to be "smart" and limits the INPUT$ buffer length to LOF, but still attempts to read the requested number of bytes. So it overflows because the buffer passed to DOS isn't large enough.

But when you use GET, you determine the buffer size directly. So there's no overflow.

If you wanted to test in C, you could create a byte-aligned struct with two character arrays. The first is the actual buffer and the second is the check. Fill the second with some control value. Then use fopen/fgets/fclose to read CLOCK$. And ensure that the check buffer hasn't been touched.

I doubt there will be corruption though, unless you pass an incorrect buffer size to fgets.
 
 
 
 

Reply to this Message

Name
Subject
Message

No HTML is allowed, except for <code> <b> <i> <u> in the message only.
All URLs and email addresses will automatically be converted to hyperlinks.