зеркало из https://github.com/mozilla/gecko-dev.git
Fix for file paths on Mac
This commit is contained in:
Родитель
62ad7c5c42
Коммит
a702626c5b
|
@ -1909,27 +1909,17 @@ char
|
|||
return finalPath;
|
||||
}
|
||||
|
||||
char *
|
||||
nsMsgPlatformFileToURL (const char *name)
|
||||
char *
|
||||
nsMsgPlatformFileToURL (nsFileSpec aFileSpec)
|
||||
{
|
||||
char *prefix = "file:///";
|
||||
char *retVal = (char *)PR_Malloc(PL_strlen(name) + PL_strlen(prefix) + 1);
|
||||
if (retVal)
|
||||
{
|
||||
PL_strcpy(retVal, prefix);
|
||||
PL_strcat(retVal, name);
|
||||
}
|
||||
nsFileURL tURL(aFileSpec);
|
||||
const char *tPtr = nsnull;
|
||||
|
||||
char *ptr = retVal;
|
||||
while (*ptr)
|
||||
{
|
||||
if (*ptr == '\\') *ptr = '/';
|
||||
if ( (*ptr == ':') && (ptr > (retVal+4)) )
|
||||
*ptr = '|';
|
||||
|
||||
++ptr;
|
||||
}
|
||||
return retVal;
|
||||
tPtr = tURL.GetURLString();
|
||||
if (tPtr)
|
||||
return PL_strdup(tPtr);
|
||||
else
|
||||
return nsnull;
|
||||
}
|
||||
|
||||
char *
|
||||
|
|
|
@ -110,7 +110,7 @@ PRBool nsMsgMIMEGetConformToStandard (void);
|
|||
nsresult nsMsgNewURL(nsIURI** aInstancePtrResult, const char * aSpec);
|
||||
PRBool nsMsgIsLocalFile(const char *url);
|
||||
char *nsMsgGetLocalFileFromURL(char *url);
|
||||
char *nsMsgPlatformFileToURL (const char *name);
|
||||
char *nsMsgPlatformFileToURL (nsFileSpec aFileSpec);
|
||||
|
||||
char *nsMsgParseURL(const char *url, int part);
|
||||
|
||||
|
|
|
@ -806,7 +806,7 @@ NS_IMETHODIMP QuotingOutputStreamListener::OnStopRequest(nsIChannel * /* aChanne
|
|||
tempFile.close();
|
||||
|
||||
// Now load the URL...
|
||||
nsString urlStr = nsMsgPlatformFileToURL(mComposeObj->mTempComposeFileSpec->GetNativePathCString());
|
||||
nsString urlStr = nsMsgPlatformFileToURL(*(mComposeObj->mTempComposeFileSpec));
|
||||
nsIEditorShell *editor;
|
||||
|
||||
mComposeObj->GetEditor(&editor);
|
||||
|
@ -1472,7 +1472,7 @@ nsMsgCompose::ProcessSignature(nsOutputFileStream *aAppendFileStream)
|
|||
else // We have a match...
|
||||
{
|
||||
if (!aAppendFileStream) // Just load this URL
|
||||
urlStr = nsMsgPlatformFileToURL(sigFilePath);
|
||||
urlStr = nsMsgPlatformFileToURL(testSpec);
|
||||
else
|
||||
LoadDataFromFile(sigFilePath, sigData); // Get the data!
|
||||
}
|
||||
|
@ -1582,7 +1582,7 @@ nsMsgCompose::BuildBodyMessage()
|
|||
//
|
||||
// Now load the URL...
|
||||
//
|
||||
nsString urlStr = nsMsgPlatformFileToURL(mTempComposeFileSpec->GetNativePathCString());
|
||||
nsString urlStr = nsMsgPlatformFileToURL(*mTempComposeFileSpec);
|
||||
m_editor->LoadUrl(urlStr.GetUnicode());
|
||||
return NS_OK;
|
||||
}
|
||||
|
|
|
@ -536,7 +536,7 @@ nsMsgComposeAndSend::GatherMimeAttachments()
|
|||
goto FAILMEM;
|
||||
m_plaintext->m_mime_delivery_state = this;
|
||||
|
||||
char *tempURL = nsMsgPlatformFileToURL (mHTMLFileSpec->GetCString());
|
||||
char *tempURL = nsMsgPlatformFileToURL (*mHTMLFileSpec);
|
||||
if (!tempURL || NS_FAILED(nsMsgNewURL(&(m_plaintext->mURL), tempURL)))
|
||||
{
|
||||
delete m_plaintext;
|
||||
|
|
|
@ -280,25 +280,15 @@ nsMsgCreateTempFileName(char *tFileName)
|
|||
return tString;
|
||||
}
|
||||
|
||||
char *
|
||||
nsMimePlatformFileToURL (const char *name)
|
||||
char *
|
||||
nsMimePlatformFileToURL (nsFileSpec aFileSpec)
|
||||
{
|
||||
char *prefix = "file:///";
|
||||
char *retVal = (char *)PR_Malloc(PL_strlen(name) + PL_strlen(prefix) + 1);
|
||||
if (retVal)
|
||||
{
|
||||
PL_strcpy(retVal, prefix);
|
||||
PL_strcat(retVal, name);
|
||||
}
|
||||
nsFileURL tURL(aFileSpec);
|
||||
const char *tPtr = nsnull;
|
||||
|
||||
char *ptr = retVal;
|
||||
while (*ptr)
|
||||
{
|
||||
if (*ptr == '\\') *ptr = '/';
|
||||
if ( (*ptr == ':') && (ptr > (retVal+4)) )
|
||||
*ptr = '|';
|
||||
|
||||
++ptr;
|
||||
}
|
||||
return retVal;
|
||||
tPtr = tURL.GetURLString();
|
||||
if (tPtr)
|
||||
return PL_strdup(tPtr);
|
||||
else
|
||||
return nsnull;
|
||||
}
|
||||
|
|
|
@ -31,7 +31,7 @@ extern "C" char *LocalizeHeaderName(const char *aHeaderName, const char *aDe
|
|||
nsFileSpec *nsMsgCreateTempFileSpec(char *tFileName);
|
||||
char *nsMsgCreateTempFileName(char *tFileName);
|
||||
|
||||
char *nsMimePlatformFileToURL (const char *name);
|
||||
char *nsMimePlatformFileToURL (nsFileSpec aFileSpec);
|
||||
|
||||
char *GetTheTempDirectoryOnTheSystem(void);
|
||||
|
||||
|
|
|
@ -775,7 +775,7 @@ nsMimeXULEmitter::DumpBody()
|
|||
//
|
||||
char *url = nsnull;
|
||||
if (mBodyFileSpec)
|
||||
url = nsMimePlatformFileToURL(mBodyFileSpec->GetNativePathCString());
|
||||
url = nsMimePlatformFileToURL(*mBodyFileSpec);
|
||||
|
||||
UtilityWrite("<html:iframe id=\"mail-body-frame\" src=\"");
|
||||
UtilityWrite(url);
|
||||
|
@ -1183,9 +1183,12 @@ char *workAddr = nsnull;
|
|||
|
||||
// Misc here
|
||||
char *xul;
|
||||
rv = mMiscStatus->GetIndividualXUL(curHeader, workAddr, &xul);
|
||||
if (NS_SUCCEEDED(rv) && xul)
|
||||
UtilityWrite(xul);
|
||||
if (mMiscStatus)
|
||||
{
|
||||
rv = mMiscStatus->GetIndividualXUL(curHeader, workAddr, &xul);
|
||||
if (NS_SUCCEEDED(rv) && xul)
|
||||
UtilityWrite(xul);
|
||||
}
|
||||
|
||||
PR_FREEIF(workName);
|
||||
PR_FREEIF(workAddr);
|
||||
|
|
Загрузка…
Ссылка в новой задаче