Alistair Leslie-Hughes leslie_alistair@hotmail.com writes:
if(pInfo->dwMask | PIM_CHARSET)pInfo->hCharset = 0;if(pInfo->dwMask | PIM_FLAGS)pInfo->dwFlags = 0x00000000;if(pInfo->dwMask | PIM_ROWNUMBER)pInfo->dwRowNumber = 0;if(pInfo->dwMask | PIM_ENCODINGTYPE)pInfo->ietEncoding = 0;if(pInfo->dwMask | PIM_VALUES)pInfo->cValues = 0;if(pInfo->dwMask | PIM_PROPID)pInfo->dwPropId = header->prop->id;if(pInfo->dwMask | PIM_VTDEFAULT)pInfo->vtDefault = header->prop->default_vt;if(pInfo->dwMask | PIM_VTCURRENT)pInfo->vtCurrent = 0;
This doesn't do what you want. You should initialize to some garbage value instead of 0 in your tests, that would have caught it.