[APPHELP] Fix a possible out of bounds write.

svn path=/trunk/; revision=71489
This commit is contained in:
Mark Jansen 2016-06-01 19:37:25 +00:00
parent 271329164d
commit aa9a01829c

View file

@ -272,13 +272,14 @@ BOOL WINAPI SdbWriteBinaryTagFromFile(PDB db, TAG tag, LPCWSTR path)
TAGID WINAPI SdbBeginWriteListTag(PDB db, TAG tag) TAGID WINAPI SdbBeginWriteListTag(PDB db, TAG tag)
{ {
TAGID list_id; TAGID list_id;
DWORD dum = 0;
if (!SdbpCheckTagType(tag, TAG_TYPE_LIST)) if (!SdbpCheckTagType(tag, TAG_TYPE_LIST))
return TAGID_NULL; return TAGID_NULL;
list_id = db->write_iter; list_id = db->write_iter;
SdbpWrite(db, &tag, sizeof(TAG)); SdbpWrite(db, &tag, sizeof(TAG));
db->write_iter += sizeof(DWORD); /* reserve some memory for storing list size */ SdbpWrite(db, &dum, sizeof(dum)); /* reserve some memory for storing list size */
return list_id; return list_id;
} }