Bug 80446 Importing Outlook Contacts doesn't import email addresses,

r=Cyrille.Moureaux@Sun.com, sr=mscott
This commit is contained in:
chuang%netscape.com 2001-07-09 21:11:44 +00:00
parent 49936baba8
commit aaf419adb2
2 changed files with 20 additions and 11 deletions

View File

@ -632,7 +632,10 @@ void CMapiApi::ListProperties( LPMAPIPROP lpProp, BOOL getValues)
GetPropTagName( pArray->aulPropTag[i], desc);
if (getValues) {
tagArray.aulPropTag[0] = pArray->aulPropTag[i];
hr = lpProp->GetNamesFromIDs(&lpTagArray, nsnull, 0, &count, &lppPropNames);
hr = lpProp->GetNamesFromIDs(&lpTagArray, nsnull, 0, &count, &lppPropNames);
if (hr == S_OK)
MAPIFreeBuffer(lppPropNames);
LPSPropValue pVal = GetMapiProperty( lpProp, pArray->aulPropTag[i]);
if (pVal) {
desc += ", ";
@ -662,7 +665,11 @@ static GUID emailGUID = {
HRESULT result = lpProp->GetIDsFromNames(1L, &lpMapiNames, 0, &lpMailTagArray);
if (result == S_OK)
return lpMailTagArray->aulPropTag[0];
{
ULONG lTag = lpMailTagArray->aulPropTag[0];
MAPIFreeBuffer(lpMailTagArray);
return lTag;
}
else
return 0L;
}

View File

@ -1006,17 +1006,19 @@ PRBool nsOutlookMail::BuildCard( const PRUnichar *pName, nsIAddrDatabase *pDb, n
nsString nickName;
nsString middleName;
nsString secondEMail;
ULONG emailTag;
LPSPropValue pProp;
ULONG emailTag = m_mapi.GetEmailPropertyTag(pUser, OUTLOOK_EMAIL1_MAPI_ID1);
if (emailTag) {
pProp = m_mapi.GetMapiProperty( pUser, emailTag);
if (pProp) {
m_mapi.GetStringFromProp( pProp, eMail);
SanitizeValue( eMail);
}
LPSPropValue pProp = m_mapi.GetMapiProperty( pUser, PR_EMAIL_ADDRESS);
if (!pProp) {
emailTag = m_mapi.GetEmailPropertyTag(pUser, OUTLOOK_EMAIL1_MAPI_ID1);
if (emailTag) {
pProp = m_mapi.GetMapiProperty( pUser, emailTag);
}
}
if (pProp) {
m_mapi.GetStringFromProp( pProp, eMail);
SanitizeValue( eMail);
}
// for secondary email
emailTag = m_mapi.GetEmailPropertyTag(pUser, OUTLOOK_EMAIL2_MAPI_ID1);