From: Vladislav G. <the...@ma...> - 2011-01-10 20:36:57
|
Dear Henry, My Windows 7 x86 installation goes into BSOD right on/after console attach. I've bisected it to recent r1560 changeset introduced co_offsetof macro. > size = (char*)(&message->putcs + 1) - (char*)message + bytes_per_line; Original construction means the struct length, excluding the member plus size of one member, not its offset actually. > #define co_offsetof(TYPE, MEMBER) ((int) &((TYPE *)0)->MEMBER) > size = co_offsetof(co_console_message_t, putcs) + 1 + bytes_per_line; New one means the struct length excluding the member + one byte, that's seems wrong. So, to keep co_offsetof macro and restore binary compability, I suggest following changes: > #define co_offsetof(TYPE, MEMBER) ((int) (&((TYPE *)0)->MEMBER)) > size = co_offsetof(co_console_message_t, putcs + 1) + bytes_per_line; And, kindly please, is it possible to make daemons package to be built with svn revision too. Both patches attached, works for me. Thank you. Best Regards, theMIROn ICQ: 303357 Skype: the.miron |