Minor sanity checking and tweaks in SDL_JoystickGetGUIDString().
This commit is contained in:
parent
c773de800d
commit
7cb9995377
1 changed files with 8 additions and 8 deletions
|
@ -698,22 +698,22 @@ SDL_JoystickGUID SDL_JoystickGetGUID(SDL_Joystick * joystick)
|
|||
void SDL_JoystickGetGUIDString( SDL_JoystickGUID guid, char *pszGUID, int cbGUID )
|
||||
{
|
||||
static const char k_rgchHexToASCII[] = "0123456789abcdef";
|
||||
char *pchOut = NULL;
|
||||
char *pchString = NULL;
|
||||
int i;
|
||||
|
||||
pchOut = pszGUID;
|
||||
if ((pszGUID == NULL) || (cbGUID <= 0)) {
|
||||
return;
|
||||
}
|
||||
|
||||
for ( i = 0; i < sizeof(guid) && i < (cbGUID-1); i++ )
|
||||
for ( i = 0; i < sizeof(guid.data) && i < (cbGUID-1); i++ )
|
||||
{
|
||||
// each input byte writes 2 ascii chars, and might write a null byte.
|
||||
// If we don't have room for next input byte, stop
|
||||
unsigned char c = guid.data[i];
|
||||
|
||||
*pchOut++ = k_rgchHexToASCII[ c >> 4 ];
|
||||
*pchOut++ = k_rgchHexToASCII[ c & 0x0F ];
|
||||
*pszGUID++ = k_rgchHexToASCII[ c >> 4 ];
|
||||
*pszGUID++ = k_rgchHexToASCII[ c & 0x0F ];
|
||||
}
|
||||
*pchOut = '\0';
|
||||
*pszGUID = '\0';
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue