path0s
Junior Member
Posts: 52
|
Post by path0s on Sept 26, 2005 21:44:11 GMT -5
Did you have compiler or linker errors with 4.0? It compiled clean under gcc 3.4.3..
I've found the offending code in the source, and while I can kinda follow along with it, I've got no idea what's going on. It's obviously failing some kind of transmit buffer sanity check, No clue why..
static void check_tx_buffer(void) { BYTE c;
while (valid >= 10 && (buf & masks[valid-1])) valid--;
if (valid >= 10) { /* (valid-1)-th bit is not set = start bit! */ if (!(buf & masks[valid - 10])) { log_error(LOG_DEFAULT, "Frame error!"); } else { c = (buf >> (valid - 9)) & 0xff; if (fd != -1) { #ifdef DEBUG log_debug("\"%c\" (%02x).", code[c], code[c]); #endif rs232drv_putc(fd, ((BYTE)(code[c]))); } } valid -= 10; } }
|
|
|
Post by Cenbe on Oct 8, 2005 9:51:33 GMT -5
1.17 is fixed for GCC4 (released 10/07).
|
|