From: divverent Date: Sat, 28 Jul 2007 15:50:49 +0000 (+0000) Subject: make str2chr return 0 when used on an index outside the string (before, it didn't... X-Git-Tag: xonotic-v0.1.0preview~2967 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=31e5a1fc3860ecbb5d51fbb967d89e75b2ec3361;p=xonotic%2Fdarkplaces.git make str2chr return 0 when used on an index outside the string (before, it didn't set the return value and would return something random) git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@7498 d7cf8633-e32d-0410-b094-e92efae38249 --- diff --git a/prvm_cmds.c b/prvm_cmds.c index 6b5e8d6f..f5021549 100644 --- a/prvm_cmds.c +++ b/prvm_cmds.c @@ -3802,9 +3802,10 @@ void VM_str2chr (void) const char *s; VM_SAFEPARMCOUNT(2, VM_str2chr); s = PRVM_G_STRING(OFS_PARM0); - if((unsigned)PRVM_G_FLOAT(OFS_PARM1) > strlen(s)) - return; - PRVM_G_FLOAT(OFS_RETURN) = (unsigned char)s[(int)PRVM_G_FLOAT(OFS_PARM1)]; + if((unsigned)PRVM_G_FLOAT(OFS_PARM1) < strlen(s)) + PRVM_G_FLOAT(OFS_RETURN) = (unsigned char)s[(unsigned)PRVM_G_FLOAT(OFS_PARM1)]; + else + PRVM_G_FLOAT(OFS_RETURN) = 0; } //#223 string(float c, ...) chr2str (FTE_STRINGS)