the hastebin line is poorly written, has unreachable code, and is highly dependent on the priority of the C statements. And it does not work properly.
Line from hastebin:
if( cur_w > source.xpos + source.width && !(source.attributes & DBOX_HAS_SHADOW) ) { break; return; }
It should be written as:
if( (cur_w > (source.xpos + source.width)) // has curr_w exceeded sum of two other fields? && ((source.attributes & DBOX_HAS_SHADOW) != DBOX_HAS_SHADOW ) //is bit == 0? { break; }
source share