Fixed two formatter issues

- Unintentional fallthrough
- Assertion on 0-length append
This commit is contained in:
Joel Höner 2017-10-17 17:44:19 +02:00
parent c77c9f2561
commit d2c6115f6f
2 changed files with 8 additions and 2 deletions

View File

@ -332,8 +332,10 @@ ZydisStatus ZydisPrintStr(char** buffer, size_t bufferLen, const char* text,
break; break;
case ZYDIS_LETTER_CASE_LOWER: case ZYDIS_LETTER_CASE_LOWER:
ZydisToLowerCase(*buffer, strLen); ZydisToLowerCase(*buffer, strLen);
break;
case ZYDIS_LETTER_CASE_UPPER: case ZYDIS_LETTER_CASE_UPPER:
ZydisToUpperCase(*buffer, strLen); ZydisToUpperCase(*buffer, strLen);
break;
default: default:
ZYDIS_UNREACHABLE; ZYDIS_UNREACHABLE;
} }

View File

@ -464,7 +464,7 @@ static ZydisStatus ZydisFormatterPrintOperandSizeIntel(const ZydisFormatter* for
} }
if (typecast) if (typecast)
{ {
char* str = ""; const char* str = NULL;
switch (typecast) switch (typecast)
{ {
case 8: case 8:
@ -497,7 +497,11 @@ static ZydisStatus ZydisFormatterPrintOperandSizeIntel(const ZydisFormatter* for
default: default:
break; break;
} }
return ZydisPrintStr(buffer, bufferLen, str, ZYDIS_LETTER_CASE);
if (str)
{
return ZydisPrintStr(buffer, bufferLen, str, ZYDIS_LETTER_CASE);
}
} }
return ZYDIS_STATUS_SUCCESS; return ZYDIS_STATUS_SUCCESS;
} }