On Friday, 09 July 2004, at 21:38:43 (-0400), Mike Frysinger wrote: > http://bugs.gentoo.org/show_bug.cgi?id=52634 > > users were noticing weird results while using Eterm and they tracked > it back to libast's MEMSET() macro in eterm/libast/include/libast.h: > > if (((unsigned long) count) >= 4 * sizeof(long)) { \ > /* fill l with c. */ \ > l = (c) | (c)<<8; \ > l |= l<<16; \ > MEMSET_LONG(); > > the problem being that on 64 bit archs, you'll need a little more << > loving ... the patch provided by Jason McCarver is to add another line: > l |= l<<32; \ > right before the MEMSET_LONG() call > http://bugs.gentoo.org/attachment.cgi?id=34976&action=view > > perhaps the MEMSET_LONG() call itself will need updating ?
If SIZEOF_LONG is set to 8, meaning that a long is a 64-bit value, MEMSET_LONG() is defined to be "l |= l<<32". So the question becomes, what is SIZEOF_LONG being set to? Michael -- Michael Jennings (a.k.a. KainX) http://www.kainx.org/ <[EMAIL PROTECTED]> n + 1, Inc., http://www.nplus1.net/ Author, Eterm (www.eterm.org) ----------------------------------------------------------------------- "Nerds make the best lovers. That's why I'm in Speed School." -- Angela Smith ------------------------------------------------------- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click _______________________________________________ enlightenment-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
