mirror of
https://github.com/reactos/reactos.git
synced 2025-02-23 00:45:24 +00:00
Autosyncing with Wine HEAD
svn path=/trunk/; revision=31778
This commit is contained in:
parent
ab13e8a841
commit
462c088866
4 changed files with 17 additions and 13 deletions
|
@ -127,9 +127,9 @@ static LPVOID WINAPI IMAPIMalloc_fnRealloc(LPMALLOC iface, LPVOID pv, DWORD cb)
|
|||
return LocalAlloc(LMEM_FIXED, cb);
|
||||
|
||||
if (cb)
|
||||
return LocalReAlloc((HANDLE) pv, cb, LMEM_MOVEABLE);
|
||||
return LocalReAlloc(pv, cb, LMEM_MOVEABLE);
|
||||
|
||||
LocalFree((HANDLE) pv);
|
||||
LocalFree(pv);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -139,7 +139,7 @@ static LPVOID WINAPI IMAPIMalloc_fnRealloc(LPMALLOC iface, LPVOID pv, DWORD cb)
|
|||
static void WINAPI IMAPIMalloc_fnFree(LPMALLOC iface, LPVOID pv)
|
||||
{
|
||||
TRACE("(%p)->(%p)\n", iface, pv);
|
||||
LocalFree((HANDLE) pv);
|
||||
LocalFree(pv);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
@ -148,7 +148,7 @@ static void WINAPI IMAPIMalloc_fnFree(LPMALLOC iface, LPVOID pv)
|
|||
static DWORD WINAPI IMAPIMalloc_fnGetSize(LPMALLOC iface, LPVOID pv)
|
||||
{
|
||||
TRACE("(%p)->(%p)\n", iface, pv);
|
||||
return LocalSize((HANDLE) pv);
|
||||
return LocalSize(pv);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<?xml version="1.0"?>
|
||||
<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">
|
||||
<group>
|
||||
<module name="mapi32" type="win32dll" baseaddress="${BASEADDRESS_MAPI32}" installbase="system32" installname="mapi32.dll" allowwarnings="true">
|
||||
<importlibrary definition="mapi32.spec.def" />
|
||||
<include base="mapi32">.</include>
|
||||
|
@ -10,11 +11,9 @@
|
|||
<library>wine</library>
|
||||
<library>shlwapi</library>
|
||||
<library>shell32</library>
|
||||
<library>ole32</library>
|
||||
<library>user32</library>
|
||||
<library>kernel32</library>
|
||||
<library>ntdll</library>
|
||||
<library>uuid</library>
|
||||
<library>ntdll</library>
|
||||
<file>imalloc.c</file>
|
||||
<file>mapi32_main.c</file>
|
||||
<file>prop.c</file>
|
||||
|
@ -22,3 +21,4 @@
|
|||
<file>util.c</file>
|
||||
<file>mapi32.spec</file>
|
||||
</module>
|
||||
</group>
|
||||
|
|
|
@ -928,7 +928,7 @@ SCODE WINAPI ScRelocProps(int cValues, LPSPropValue lpProps, LPVOID lpOld,
|
|||
LPVOID lpNew, ULONG *lpCount)
|
||||
{
|
||||
static const BOOL bBadPtr = TRUE; /* Windows bug - Assumes source is bad */
|
||||
LPSPropValue lpDest = (LPSPropValue)lpProps;
|
||||
LPSPropValue lpDest = lpProps;
|
||||
ULONG ulCount = cValues * sizeof(SPropValue);
|
||||
ULONG ulLen, i;
|
||||
int iter;
|
||||
|
@ -964,7 +964,7 @@ SCODE WINAPI ScRelocProps(int cValues, LPSPropValue lpProps, LPVOID lpOld,
|
|||
break;
|
||||
case PT_STRING8:
|
||||
ulLen = bBadPtr ? 0 : lstrlenA(lpDest->Value.lpszA) + 1u;
|
||||
lpDest->Value.lpszA = (LPSTR)RELOC_PTR(lpDest->Value.lpszA);
|
||||
lpDest->Value.lpszA = RELOC_PTR(lpDest->Value.lpszA);
|
||||
if (bBadPtr)
|
||||
ulLen = lstrlenA(lpDest->Value.lpszA) + 1u;
|
||||
ulCount += ulLen;
|
||||
|
@ -999,7 +999,7 @@ SCODE WINAPI ScRelocProps(int cValues, LPSPropValue lpProps, LPVOID lpOld,
|
|||
{
|
||||
ULONG ulStrLen = bBadPtr ? 0 : lstrlenA(lpDest->Value.MVszA.lppszA[i]) + 1u;
|
||||
|
||||
lpDest->Value.MVszA.lppszA[i] = (LPSTR)RELOC_PTR(lpDest->Value.MVszA.lppszA[i]);
|
||||
lpDest->Value.MVszA.lppszA[i] = RELOC_PTR(lpDest->Value.MVszA.lppszA[i]);
|
||||
if (bBadPtr)
|
||||
ulStrLen = lstrlenA(lpDest->Value.MVszA.lppszA[i]) + 1u;
|
||||
ulCount += ulStrLen;
|
||||
|
@ -1331,7 +1331,7 @@ ULONG WINAPI FBadProp(LPSPropValue lpProp)
|
|||
return FBadRglpszW(lpProp->Value.MVszW.lppszW,
|
||||
lpProp->Value.MVszW.cValues);
|
||||
case PT_MV_BINARY:
|
||||
return FBadEntryList((LPENTRYLIST)&lpProp->Value.MVbin);
|
||||
return FBadEntryList(&lpProp->Value.MVbin);
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
|
|
@ -67,6 +67,7 @@ ULONG WINAPI MAPISendMail( LHANDLE session, ULONG_PTR uiparam,
|
|||
static const char format[] =
|
||||
"mailto:\"%s\"?subject=\"%s\"&cc=\"%s\"&bcc=\"%s\"&body=\"%s\"";
|
||||
char *mailto = NULL, *escape = NULL;
|
||||
char empty_string[] = "";
|
||||
HRESULT res;
|
||||
DWORD size;
|
||||
|
||||
|
@ -127,16 +128,19 @@ ULONG WINAPI MAPISendMail( LHANDLE session, ULONG_PTR uiparam,
|
|||
{
|
||||
to = HeapAlloc( GetProcessHeap(), 0, to_size );
|
||||
if (!to) goto exit;
|
||||
to[0] = 0;
|
||||
}
|
||||
if (cc_size)
|
||||
{
|
||||
cc = HeapAlloc( GetProcessHeap(), 0, cc_size );
|
||||
if (!cc) goto exit;
|
||||
cc[0] = 0;
|
||||
}
|
||||
if (bcc_size)
|
||||
{
|
||||
bcc = HeapAlloc( GetProcessHeap(), 0, bcc_size );
|
||||
if (!bcc) goto exit;
|
||||
bcc[0] = 0;
|
||||
}
|
||||
|
||||
if (message->lpOriginator)
|
||||
|
@ -175,8 +179,8 @@ ULONG WINAPI MAPISendMail( LHANDLE session, ULONG_PTR uiparam,
|
|||
|
||||
sprintf( mailto, format, to ? to : "", subject, cc ? cc : "", bcc ? bcc : "", body );
|
||||
|
||||
size = 0;
|
||||
res = UrlEscapeA( mailto, NULL, &size, URL_ESCAPE_SPACES_ONLY );
|
||||
size = 1;
|
||||
res = UrlEscapeA( mailto, empty_string, &size, URL_ESCAPE_SPACES_ONLY );
|
||||
if (res != E_POINTER) goto exit;
|
||||
|
||||
escape = HeapAlloc( GetProcessHeap(), 0, size );
|
||||
|
|
Loading…
Reference in a new issue