65 ALLOCATEMORE *lpMore,
LPVOID lpOrig)
70 TRACE(
"(%p,%p,%p,%p)\n", lpDest, lpSrc, lpMore, lpOrig);
147 lpNextStr += ulStrLen;
162 lpNextStr += ulStrLen;
217 TRACE(
"(%p)\n", lpProp);
266 ulRet *=
sizeof(
WCHAR);
302 TRACE(
"(%p,%p,0x%08x)\n", lpHaystack, lpNeedle, ulFuzzy);
326 if (dwNeedleLen <= dwHaystackLen &&
340 while ((lpStr = pStrChrFn(lpStr, *lpNeedle->
Value.
lpszA)) !=
NULL)
342 dwHaystackLen -= (lpStr - lpHaystack->
Value.
lpszA);
343 if (dwNeedleLen <= dwHaystackLen &&
403 TRACE(
"(%p,%d,%p)\n", lpPropLeft, ulOp, lpPropRight);
410 FIXME(
"Comparison operator RELOP_RE not yet implemented!\n");
445 TRACE(
"(%p->0x%08x,%p->0x%08x)\n", lpPropLeft, lpPropLeft->
ulPropTag,
489 return (lpPropLeft->
Value.
b ? 1 : 0) - (lpPropRight->
Value.
b ? 1 : 0);
541 TRACE(
"(%p,%d,%p)\n", lpIProp, ulPropTag, lppProp);
570 TRACE(
"(%p,%p)\n", lpIProp, lpProp);
596 TRACE(
"(%p,%d)\n", lpIProp, ulPropTag);
641 TRACE(
"(%p,%d,%d)\n", lpProps, cValues, ulPropTag);
643 if (lpProps && cValues)
646 for (
i = 0;
i < cValues;
i++)
649 (lpProps[
i].ulPropTag == ulPropTag ||
671 TRACE(
"(%p)\n", lpAddrs);
690 TRACE(
"(%p)\n", lpRowSet);
696 for (
i = 0;
i < lpRowSet->
cRows;
i++)
721 ULONG i, ulCount = iCount, ulBytes = 0;
723 TRACE(
"(%d,%p,%p)\n", iCount, lpProps, pcBytes);
725 if (iCount <= 0 || !lpProps ||
729 for (
i = 0;
i < ulCount;
i++)
731 ULONG ulPropSize = 0;
774 ulBytes += ulPropSize;
803 char *lpDataDest = (
char *)(lpDest + cValues);
807 TRACE(
"(%d,%p,%p,%p)\n", cValues, lpProps, lpDst, lpCount);
809 if (!lpProps || cValues < 0 || !lpDest)
814 for (iter = 0; iter < cValues; iter++)
821 lpDataDest +=
sizeof(
GUID);
859 lpDataDest += ulStrLen;
873 lpDataDest += ulStrLen;
904 *lpCount = lpDataDest - (
char *)lpDst;
943 TRACE(
"(%d,%p,%p,%p,%p)\n", cValues, lpProps, lpOld, lpNew, lpCount);
945 if (!lpProps || cValues < 0 || !lpOld || !lpNew)
962#define RELOC_PTR(p) (((char*)(p)) - (char*)lpOld + (char*)lpNew)
964 for (iter = 0; iter < cValues; iter++)
970 ulCount +=
sizeof(
GUID);
1012 ulCount += ulStrLen;
1027 ulCount += ulStrLen;
1078 TRACE(
"(%d,%d,%p)\n", ulPropTag, cValues, lpProps);
1080 if (lpProps && cValues)
1083 for (
i = 0;
i < cValues;
i++)
1114 TRACE(
"(%d,%p,%p,%p)\n", cValues, lpProps, lpAlloc, lpNewProp);
1119 sc = lpAlloc(ulCount, (
LPVOID*)lpNewProp);
1121 sc =
ScCopyProps(cValues, lpProps, *lpNewProp, &ulCount);
1142 TRACE(
"(%p,%d)\n", lppszStrs, ulCount);
1150 for (
i = 0;
i < ulCount;
i++)
1167 TRACE(
"(%p,%d)\n", lppszStrs, ulCount);
1175 for (
i = 0;
i < ulCount;
i++)
1197 TRACE(
"(%p)\n", lpRowSet);
1202 for (
i = 0;
i < lpRowSet->
cRows;
i++)
1223 TRACE(
"(0x%08x)\n", ulPropTag);
1263 TRACE(
"(%p)\n", lpRow);
1361 TRACE(
"(%p)\n", lpCols);
1377 TRACE(
"Returning %s\n", ulRet ?
"TRUE" :
"FALSE");
1462 lpNew->
value = lpMem;
1468 This->ulNumValues++;
1473 This->lpFree(lpNew);
1491#define CbNewSPropProblemArray(c) \
1492 (offsetof(SPropProblemArray,aProblem)+(c)*sizeof(SPropProblem))
1506 if (!ppvObj || !
riid)
1515 *ppvObj = &
This->IPropData_iface;
1517 TRACE(
"returning %p\n", *ppvObj);
1521 TRACE(
"returning E_NOINTERFACE\n");
1556 TRACE(
"Destroying IPropData (%p)\n",
This);
1567 This->cs.DebugInfo->Spare[0] = 0;
1599 TRACE(
"(%p,0x%08X,0x%08X,%p)\n", iface, hRes, ulFlags, lppError);
1623 TRACE(
"(%p,0x%08X)\n", iface, ulFlags);
1661 TRACE(
"(%p,%p,0x%08x,%p,%p) stub\n", iface, lpTags, ulFlags,
1664 if (!iface || ulFlags & ~
MAPI_UNICODE || !lpTags || *lpCount || !lppProps)
1667 FIXME(
"semi-stub, flags not supported\n");
1689 This->lpMore, *lppProps);
1693 (*lppProps)[
i].ulPropTag =
1727 TRACE(
"(%p,0x%08x,%p) stub\n", iface, ulFlags, lppTags);
1732 FIXME(
"semi-stub, flags not supported\n");
1748 (*lppTags)->aulPropTag[
i] =
current->value->ulPropTag;
1751 (*lppTags)->cValues =
This->ulNumValues;
1769 FIXME(
"(%p,%u,%s,%u,0x%08x,%p) stub\n", iface, ulPropTag,
1798 TRACE(
"(%p,%u,%p,%p)\n", iface, ulValues, lpProps, lppProbs);
1800 if (!iface || !lpProps)
1803 for (
i = 0;
i < ulValues;
i++)
1814 for (
i = 0;
i < ulValues;
i++)
1825 FIXME(
"semi-stub, overwriting type (not coercing)\n");
1834 item->value = lpMem;
1837 This->lpFree(lpMem);
1884 TRACE(
"(%p,%p,%p)\n", iface, lpTags, lppProbs);
1886 if (!iface || !lpTags)
1920 This->ulNumValues--;
1944 if (lppProbs && *lppProbs)
1945 (*lppProbs)->cProblem = numProbs;
1966 FIXME(
"(%p,%u,%p,%p,%x,%p,%s,%p,0x%08X,%p) stub\n", iface, niids,
1967 lpiidExcl, lpPropsExcl, ulParam, lpIProgress,
1985 FIXME(
"(%p,%p,%x,%p,%s,%p,0x%08X,%p) stub\n", iface, lpInclProps,
1986 ulParam, lpIProgress,
debugstr_guid(lpIface), lpDstObj, ulFlags,
2018 FIXME(
"(%p,%p,%s,0x%08X,%p,%p) stub\n", iface, lppPropTags,
2048 FIXME(
"(%p,%d,%p,0x%08X,%p) stub\n",
2049 iface, ulNames, lppNames, ulFlags, lppPropTags);
2072 TRACE(
"(%p,%x)\n", iface, ulAccess);
2074 if (!iface || ulAccess < IPROP_READONLY || ulAccess >
IPROP_READWRITE)
2079 This->ulObjAccess = ulAccess;
2127 TRACE(
"(%p,%p,%p)\n", iface, lpTags, lpAccess);
2129 if (!iface || !lpTags || !lpAccess)
2145 item->ulAccess = lpAccess[
i];
2180 TRACE(
"(%p,%p,%p) stub\n", iface, lppTags, lppAccess);
2182 if (!iface || !lppTags || !lppAccess)
2195 hRet =
This->lpAlloc(
This->ulNumValues *
sizeof(
ULONG), &lpMem);
2201 (*lppTags)->cValues =
This->ulNumValues;
2207 (*lppTags)->aulPropTag[
i] =
item->value->ulPropTag;
2208 (*lppAccess)[
i] =
item->ulAccess;
2214 This->lpFree(*lppTags);
2239 FIXME(
"(%p,%p,%p) stub\n", iface, lpTags, lppProbs);
2241 if (!iface || !lpTags)
2308 ALLOCATEMORE *lpMore, FREEBUFFER *lpFree,
2314 TRACE(
"(%s,%p,%p,%p,%p,%p)\n",
debugstr_guid(iid), lpAlloc, lpMore, lpFree,
2315 lpReserved, lppPropData);
2318 *lppPropData =
NULL;
2323 if (!lpAlloc || !lpMore || !lpFree || lpReserved || !lppPropData)
2331 lpPropData->
lRef = 1;
2332 lpPropData->
lpAlloc = lpAlloc;
2333 lpPropData->
lpMore = lpMore;
2334 lpPropData->
lpFree = lpFree;
int memcmp(void *Buffer1, void *Buffer2, ACPI_SIZE Count)
struct outqueuenode * head
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static void list_remove(struct list_entry *entry)
static int list_empty(struct list_entry *head)
static void list_add_tail(struct list_entry *head, struct list_entry *entry)
static void list_init(struct list_entry *head)
LPSTR WINAPI StrChrIA(LPCSTR lpszStr, WORD ch)
LPSTR WINAPI StrChrA(LPCSTR lpszStr, WORD ch)
#define HeapFree(x, y, z)
BOOL WINAPI IsBadReadPtr(IN LPCVOID lp, IN UINT_PTR ucb)
BOOL NTAPI IsBadWritePtr(IN LPVOID lp, IN UINT_PTR ucb)
BOOL NTAPI IsBadStringPtrA(IN LPCSTR lpsz, IN UINT_PTR ucchMax)
BOOL NTAPI IsBadStringPtrW(IN LPCWSTR lpsz, IN UINT_PTR ucchMax)
LONG WINAPI CompareFileTime(IN CONST FILETIME *lpFileTime1, IN CONST FILETIME *lpFileTime2)
INT WINAPI CompareStringA(LCID lcid, DWORD flags, LPCSTR str1, INT len1, LPCSTR str2, INT len2)
int WINAPI lstrcmpW(LPCWSTR str1, LPCWSTR str2)
int WINAPI lstrcmpA(LPCSTR str1, LPCSTR str2)
static ULONG WINAPI IPropData_fnAddRef(LPPROPDATA iface)
static HRESULT WINAPI IPropData_fnGetProps(LPPROPDATA iface, LPSPropTagArray lpTags, ULONG ulFlags, ULONG *lpCount, LPSPropValue *lppProps)
ULONG WINAPI FBadProp(LPSPropValue lpProp)
static HRESULT WINAPI IPropData_fnHrSetObjAccess(LPPROPDATA iface, ULONG ulAccess)
#define CbNewSPropProblemArray(c)
static HRESULT WINAPI IPropData_fnQueryInterface(LPPROPDATA iface, REFIID riid, LPVOID *ppvObj)
HRESULT WINAPI HrSetOneProp(LPMAPIPROP lpIProp, LPSPropValue lpProp)
static HRESULT WINAPI IPropData_fnCopyProps(LPPROPDATA iface, LPSPropTagArray lpInclProps, ULONG ulParam, LPMAPIPROGRESS lpIProgress, LPCIID lpIface, LPVOID lpDstObj, ULONG ulFlags, LPSPropProblemArray *lppProbs)
static HRESULT WINAPI IPropData_fnSaveChanges(LPPROPDATA iface, ULONG ulFlags)
LONG WINAPI LPropCompareProp(LPSPropValue lpPropLeft, LPSPropValue lpPropRight)
SCODE WINAPI ScDupPropset(int cValues, LPSPropValue lpProps, LPALLOCATEBUFFER lpAlloc, LPSPropValue *lpNewProp)
static const IPropDataVtbl IPropDataImpl_vtbl
static HRESULT WINAPI IPropData_fnGetNamesFromIDs(LPPROPDATA iface, LPSPropTagArray *lppPropTags, LPGUID iid, ULONG ulFlags, ULONG *lpCount, LPMAPINAMEID **lpppNames)
static HRESULT WINAPI IPropData_fnHrAddObjProps(LPPROPDATA iface, LPSPropTagArray lpTags, LPSPropProblemArray *lppProbs)
SCODE WINAPI CreateIProp(LPCIID iid, ALLOCATEBUFFER *lpAlloc, ALLOCATEMORE *lpMore, FREEBUFFER *lpFree, LPVOID lpReserved, LPPROPDATA *lppPropData)
static HRESULT WINAPI IPropData_fnOpenProperty(LPPROPDATA iface, ULONG ulPropTag, LPCIID iid, ULONG ulOpts, ULONG ulFlags, LPUNKNOWN *lpUnk)
SCODE WINAPI PropCopyMore(LPSPropValue lpDest, LPSPropValue lpSrc, ALLOCATEMORE *lpMore, LPVOID lpOrig)
BOOL WINAPI FBadRowSet(LPSRowSet lpRowSet)
static ULONG PROP_BadArray(LPSPropValue lpProp, size_t elemSize)
static HRESULT WINAPI IPropData_fnHrGetPropAccess(LPPROPDATA iface, LPSPropTagArray *lppTags, ULONG **lppAccess)
SCODE WINAPI ScCopyProps(int cValues, LPSPropValue lpProps, LPVOID lpDst, ULONG *lpCount)
static HRESULT WINAPI IPropData_fnSetProps(LPPROPDATA iface, ULONG ulValues, LPSPropValue lpProps, LPSPropProblemArray *lppProbs)
static HRESULT WINAPI IPropData_fnDeleteProps(LPPROPDATA iface, LPSPropTagArray lpTags, LPSPropProblemArray *lppProbs)
ULONG WINAPI FBadColumnSet(LPSPropTagArray lpCols)
struct IPropDataItem * LPIPropDataItem
static HRESULT WINAPI IPropData_fnGetLastError(LPPROPDATA iface, HRESULT hRes, ULONG ulFlags, LPMAPIERROR *lppError)
static BOOL PROP_IsBadAccess(ULONG ulAccess)
static IPropDataItem * IMAPIPROP_AddValue(IPropDataImpl *This, LPSPropValue lpProp)
BOOL WINAPI FPropExists(LPMAPIPROP lpIProp, ULONG ulPropTag)
static void IMAPIPROP_Lock(IPropDataImpl *This)
static void IMAPIPROP_Unlock(IPropDataImpl *This)
ULONG WINAPI UlPropSize(LPSPropValue lpProp)
VOID WINAPI FreeProws(LPSRowSet lpRowSet)
static HRESULT WINAPI IPropData_fnGetIDsFromNames(LPPROPDATA iface, ULONG ulNames, LPMAPINAMEID *lppNames, ULONG ulFlags, LPSPropTagArray *lppPropTags)
static HRESULT WINAPI IPropData_fnHrSetPropAccess(LPPROPDATA iface, LPSPropTagArray lpTags, ULONG *lpAccess)
VOID WINAPI FreePadrlist(LPADRLIST lpAddrs)
static IPropDataImpl * impl_from_IPropData(IPropData *iface)
SCODE WINAPI ScCountProps(INT iCount, LPSPropValue lpProps, ULONG *pcBytes)
BOOL WINAPI FBadRglpszA(LPSTR *, ULONG)
BOOL WINAPI FPropCompareProp(LPSPropValue lpPropLeft, ULONG ulOp, LPSPropValue lpPropRight)
LPSPropValue WINAPI LpValFindProp(ULONG ulPropTag, ULONG cValues, LPSPropValue lpProps)
static ULONG WINAPI IPropData_fnRelease(LPPROPDATA iface)
LPSPropValue WINAPI PpropFindProp(LPSPropValue lpProps, ULONG cValues, ULONG ulPropTag)
BOOL WINAPI FBadRglpszW(LPWSTR *lppszStrs, ULONG ulCount)
HRESULT WINAPI HrGetOneProp(LPMAPIPROP lpIProp, ULONG ulPropTag, LPSPropValue *lppProp)
static HRESULT WINAPI IPropData_fnCopyTo(LPPROPDATA iface, ULONG niids, LPCIID lpiidExcl, LPSPropTagArray lpPropsExcl, ULONG ulParam, LPMAPIPROGRESS lpIProgress, LPCIID lpIfaceIid, LPVOID lpDstObj, ULONG ulFlags, LPSPropProblemArray *lppProbs)
BOOL WINAPI FPropContainsProp(LPSPropValue lpHaystack, LPSPropValue lpNeedle, ULONG ulFuzzy)
static HRESULT WINAPI IPropData_fnGetPropList(LPPROPDATA iface, ULONG ulFlags, LPSPropTagArray *lppTags)
static IPropDataItem * IMAPIPROP_GetValue(IPropDataImpl *This, ULONG ulPropTag)
ULONG WINAPI FBadRow(LPSRow lpRow)
SCODE WINAPI ScRelocProps(int cValues, LPSPropValue lpProps, LPVOID lpOld, LPVOID lpNew, ULONG *lpCount)
ULONG WINAPI FBadPropTag(ULONG ulPropTag)
BOOL WINAPI FBadEntryList(LPENTRYLIST lpEntryList)
GLboolean GLenum GLenum GLvoid * values
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
int WINAPI lstrlenA(LPCSTR lpString)
MAPIFREEBUFFER MAPIFreeBuffer
#define MAPI_E_NOT_ENOUGH_MEMORY
#define MAPI_E_INVALID_PARAMETER
#define MAPI_E_INTERFACE_NOT_SUPPORTED
#define MAPI_E_NO_SUPPORT
#define MAPI_W_ERRORS_RETURNED
#define FL_IGNORENONSPACE
#define CbSPropTagArray(p)
#define CbNewSPropTagArray(c)
struct _SPropValue SPropValue
IMAPIProgress * LPMAPIPROGRESS
#define IMAPIProp_GetProps(p, a, b, c, d)
struct _FILETIME FILETIME
struct _SPropValue * LPSPropValue
#define IMAPIProp_SetProps(p, a, b, c)
#define IMAPIProp_GetPropList(p, a, b)
#define CHANGE_PROP_TYPE(t, typ)
ALLOCATEBUFFER * LPALLOCATEBUFFER
#define IPropData_AddRef(p)
#define IPropData_SetProps(p, a, b, c)
struct IPropData * LPPROPDATA
MAPIALLOCATEBUFFER MAPIAllocateBuffer
#define memcpy(s1, s2, n)
struct task_struct * current
static const char mbstate_t *static wchar_t const char mbstate_t *static const wchar_t int *static double
static float(__cdecl *square_half_float)(float x
#define LOCALE_USER_DEFAULT
#define IsEqualGUID(rguid1, rguid2)
#define IsEqualIID(riid1, riid2)
#define LIST_FOR_EACH(cursor, list)
IPropData IPropData_iface
DWORD_PTR Spare[8/sizeof(DWORD_PTR)]
PCRITICAL_SECTION_DEBUG DebugInfo
ULONG aulPropTag[MAPI_DIM]
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
#define CONTAINING_RECORD(address, type, field)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
#define NORM_IGNORENONSPACE
#define NORM_IGNORESYMBOLS