From bugzilla-daemon at icculus.org Mon Mar 2 21:26:11 2015 From: bugzilla-daemon at icculus.org (bugzilla-daemon at icculus.org) Date: Tue, 03 Mar 2015 02:26:11 -0000 Subject: [quake3-bugzilla] [Bug 5935] QVM memset and memcpy return NULL In-Reply-To: References: Message-ID: https://bugzilla.icculus.org/show_bug.cgi?id=5935 Simon McVittie changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |smcv-ioquake3 at pseudorandom. | |co.uk --- Comment #2 from Simon McVittie --- Instead of changing the behaviour of syscalls -101 and -102, perhaps it would be better to change their names to trap_memset0 and trap_memcpy0, and change bg_lib.h like this? // *_syscalls.asm -------------------------------------------------- // Like ISO C memset, but returns NULL instead of dest equ trap_memset0 -101 // Like ISO C memcpy, but returns NULL instead of dest equ trap_memcpy0 -102 // bg_lib.h -------------------------------------------------------- void *trap_memset0( void *dest, int c, size_t count ); void *trap_memcpy0( void *dest, const void *src, size_t count ); #define memset(dest, c, count) (trap_memset0(dest, c, count), dest) #define memcpy(dest, src, count) (trap_memcpy0(dest, src, count), dest) That way, any VMs compiled with an old bg_lib.h (mods are expected to supply their own copy, right?) will get the result they expects, and any VMs compiled with a new bg_lib.h (notably ioquake3's own game/cgame/ui) will get the result *they* expect, consistent with what they'd get as native code. -- You are receiving this mail because: You are the QA Contact for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: