Backed out changeset f9900ac6071c (bug 571074) for failing clipboard at browser/base/content/test/general/browser_clipboard.js on a CLOSED TREE
This commit is contained in:
@@ -241,9 +241,7 @@ nsContentAreaDragDropDataProvider::GetFlavorData(nsITransferable *aTransferable,
|
|||||||
// get the URI from the kFilePromiseURLMime flavor
|
// get the URI from the kFilePromiseURLMime flavor
|
||||||
NS_ENSURE_ARG(aTransferable);
|
NS_ENSURE_ARG(aTransferable);
|
||||||
nsCOMPtr<nsISupports> tmp;
|
nsCOMPtr<nsISupports> tmp;
|
||||||
rv = aTransferable->GetTransferData(kFilePromiseURLMime,
|
aTransferable->GetTransferData(kFilePromiseURLMime, getter_AddRefs(tmp));
|
||||||
getter_AddRefs(tmp));
|
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
nsCOMPtr<nsISupportsString> supportsString =
|
nsCOMPtr<nsISupportsString> supportsString =
|
||||||
do_QueryInterface(tmp);
|
do_QueryInterface(tmp);
|
||||||
if (!supportsString)
|
if (!supportsString)
|
||||||
@@ -258,9 +256,8 @@ nsContentAreaDragDropDataProvider::GetFlavorData(nsITransferable *aTransferable,
|
|||||||
rv = NS_NewURI(getter_AddRefs(sourceURI), sourceURLString);
|
rv = NS_NewURI(getter_AddRefs(sourceURI), sourceURLString);
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
rv = aTransferable->GetTransferData(kFilePromiseDestFilename,
|
aTransferable->GetTransferData(kFilePromiseDestFilename,
|
||||||
getter_AddRefs(tmp));
|
getter_AddRefs(tmp));
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
supportsString = do_QueryInterface(tmp);
|
supportsString = do_QueryInterface(tmp);
|
||||||
if (!supportsString)
|
if (!supportsString)
|
||||||
return NS_ERROR_FAILURE;
|
return NS_ERROR_FAILURE;
|
||||||
@@ -278,9 +275,8 @@ nsContentAreaDragDropDataProvider::GetFlavorData(nsITransferable *aTransferable,
|
|||||||
// because sandboxing blocks access to MIME-handler info from
|
// because sandboxing blocks access to MIME-handler info from
|
||||||
// content processes.
|
// content processes.
|
||||||
if (XRE_IsParentProcess()) {
|
if (XRE_IsParentProcess()) {
|
||||||
rv = aTransferable->GetTransferData(kImageRequestMime,
|
aTransferable->GetTransferData(kImageRequestMime,
|
||||||
getter_AddRefs(tmp));
|
getter_AddRefs(tmp));
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
supportsString = do_QueryInterface(tmp);
|
supportsString = do_QueryInterface(tmp);
|
||||||
if (!supportsString)
|
if (!supportsString)
|
||||||
return NS_ERROR_FAILURE;
|
return NS_ERROR_FAILURE;
|
||||||
@@ -328,9 +324,8 @@ nsContentAreaDragDropDataProvider::GetFlavorData(nsITransferable *aTransferable,
|
|||||||
// get the target directory from the kFilePromiseDirectoryMime
|
// get the target directory from the kFilePromiseDirectoryMime
|
||||||
// flavor
|
// flavor
|
||||||
nsCOMPtr<nsISupports> dirPrimitive;
|
nsCOMPtr<nsISupports> dirPrimitive;
|
||||||
rv = aTransferable->GetTransferData(kFilePromiseDirectoryMime,
|
aTransferable->GetTransferData(kFilePromiseDirectoryMime,
|
||||||
getter_AddRefs(dirPrimitive));
|
getter_AddRefs(dirPrimitive));
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
nsCOMPtr<nsIFile> destDirectory = do_QueryInterface(dirPrimitive);
|
nsCOMPtr<nsIFile> destDirectory = do_QueryInterface(dirPrimitive);
|
||||||
if (!destDirectory)
|
if (!destDirectory)
|
||||||
return NS_ERROR_FAILURE;
|
return NS_ERROR_FAILURE;
|
||||||
|
|||||||
@@ -8110,10 +8110,7 @@ nsContentUtils::TransferableToIPCTransferable(nsITransferable* aTransferable,
|
|||||||
}
|
}
|
||||||
|
|
||||||
nsCOMPtr<nsISupports> data;
|
nsCOMPtr<nsISupports> data;
|
||||||
if (NS_FAILED(aTransferable->GetTransferData(flavorStr.get(),
|
aTransferable->GetTransferData(flavorStr.get(), getter_AddRefs(data));
|
||||||
getter_AddRefs(data)))) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
nsCOMPtr<nsISupportsString> text = do_QueryInterface(data);
|
nsCOMPtr<nsISupportsString> text = do_QueryInterface(data);
|
||||||
nsCOMPtr<nsISupportsCString> ctext = do_QueryInterface(data);
|
nsCOMPtr<nsISupportsCString> ctext = do_QueryInterface(data);
|
||||||
|
|||||||
@@ -1595,11 +1595,8 @@ HTMLEditor::PasteInternal(int32_t aClipboardType,
|
|||||||
contextTransferable->Init(nullptr);
|
contextTransferable->Init(nullptr);
|
||||||
contextTransferable->AddDataFlavor(kHTMLContext);
|
contextTransferable->AddDataFlavor(kHTMLContext);
|
||||||
clipboard->GetData(contextTransferable, aClipboardType);
|
clipboard->GetData(contextTransferable, aClipboardType);
|
||||||
rv = contextTransferable->GetTransferData(kHTMLContext,
|
contextTransferable->GetTransferData(kHTMLContext,
|
||||||
getter_AddRefs(contextDataObj));
|
getter_AddRefs(contextDataObj));
|
||||||
if (NS_WARN_IF(NS_FAILED(rv))) {
|
|
||||||
return rv;
|
|
||||||
}
|
|
||||||
|
|
||||||
nsCOMPtr<nsITransferable> infoTransferable =
|
nsCOMPtr<nsITransferable> infoTransferable =
|
||||||
do_CreateInstance("@mozilla.org/widget/transferable;1");
|
do_CreateInstance("@mozilla.org/widget/transferable;1");
|
||||||
@@ -1609,11 +1606,8 @@ HTMLEditor::PasteInternal(int32_t aClipboardType,
|
|||||||
infoTransferable->Init(nullptr);
|
infoTransferable->Init(nullptr);
|
||||||
infoTransferable->AddDataFlavor(kHTMLInfo);
|
infoTransferable->AddDataFlavor(kHTMLInfo);
|
||||||
clipboard->GetData(infoTransferable, aClipboardType);
|
clipboard->GetData(infoTransferable, aClipboardType);
|
||||||
rv = infoTransferable->GetTransferData(kHTMLInfo,
|
infoTransferable->GetTransferData(kHTMLInfo,
|
||||||
getter_AddRefs(infoDataObj));
|
getter_AddRefs(infoDataObj));
|
||||||
if (NS_WARN_IF(NS_FAILED(rv))) {
|
|
||||||
return rv;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (contextDataObj) {
|
if (contextDataObj) {
|
||||||
textDataObj = do_QueryInterface(contextDataObj);
|
textDataObj = do_QueryInterface(contextDataObj);
|
||||||
|
|||||||
@@ -6,7 +6,6 @@
|
|||||||
#include "mozilla/ArrayUtils.h"
|
#include "mozilla/ArrayUtils.h"
|
||||||
|
|
||||||
#include "mozilla/Logging.h"
|
#include "mozilla/Logging.h"
|
||||||
#include "mozilla/Unused.h"
|
|
||||||
|
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
@@ -6257,8 +6256,8 @@ provideDataForType:(NSString*)aType
|
|||||||
// Now request the kFilePromiseMime data, which will invoke the data
|
// Now request the kFilePromiseMime data, which will invoke the data
|
||||||
// provider. If successful, the file will have been created.
|
// provider. If successful, the file will have been created.
|
||||||
nsCOMPtr<nsISupports> fileDataPrimitive;
|
nsCOMPtr<nsISupports> fileDataPrimitive;
|
||||||
Unused << item->GetTransferData(kFilePromiseMime,
|
item->GetTransferData(kFilePromiseMime,
|
||||||
getter_AddRefs(fileDataPrimitive));
|
getter_AddRefs(fileDataPrimitive));
|
||||||
}
|
}
|
||||||
CFRelease(urlRef);
|
CFRelease(urlRef);
|
||||||
CFRelease(pboardRef);
|
CFRelease(pboardRef);
|
||||||
|
|||||||
@@ -562,10 +562,7 @@ nsClipboard::PasteboardDictFromTransferable(nsITransferable* aTransferable)
|
|||||||
flavorStr.EqualsLiteral(kJPGImageMime) || flavorStr.EqualsLiteral(kGIFImageMime) ||
|
flavorStr.EqualsLiteral(kJPGImageMime) || flavorStr.EqualsLiteral(kGIFImageMime) ||
|
||||||
flavorStr.EqualsLiteral(kNativeImageMime)) {
|
flavorStr.EqualsLiteral(kNativeImageMime)) {
|
||||||
nsCOMPtr<nsISupports> transferSupports;
|
nsCOMPtr<nsISupports> transferSupports;
|
||||||
rv = aTransferable->GetTransferData(flavorStr.get(), getter_AddRefs(transferSupports));
|
aTransferable->GetTransferData(flavorStr.get(), getter_AddRefs(transferSupports));
|
||||||
if (NS_FAILED(rv)) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
nsCOMPtr<imgIContainer> image(do_QueryInterface(transferSupports));
|
nsCOMPtr<imgIContainer> image(do_QueryInterface(transferSupports));
|
||||||
if (!image) {
|
if (!image) {
|
||||||
|
|||||||
@@ -482,9 +482,8 @@ nsClipboard::SelectionGetEvent(GtkClipboard *aClipboard,
|
|||||||
// the transferable for this clipboard and try to get the
|
// the transferable for this clipboard and try to get the
|
||||||
// text/unicode type for it.
|
// text/unicode type for it.
|
||||||
rv = trans->GetTransferData("text/unicode", getter_AddRefs(item));
|
rv = trans->GetTransferData("text/unicode", getter_AddRefs(item));
|
||||||
if (NS_FAILED(rv) || !item) {
|
if (!item || NS_FAILED(rv))
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
nsCOMPtr<nsISupportsString> wideString;
|
nsCOMPtr<nsISupportsString> wideString;
|
||||||
wideString = do_QueryInterface(item);
|
wideString = do_QueryInterface(item);
|
||||||
@@ -534,7 +533,7 @@ nsClipboard::SelectionGetEvent(GtkClipboard *aClipboard,
|
|||||||
|
|
||||||
if (selectionTarget == gdk_atom_intern(kHTMLMime, FALSE)) {
|
if (selectionTarget == gdk_atom_intern(kHTMLMime, FALSE)) {
|
||||||
rv = trans->GetTransferData(kHTMLMime, getter_AddRefs(item));
|
rv = trans->GetTransferData(kHTMLMime, getter_AddRefs(item));
|
||||||
if (NS_FAILED(rv) || !item) {
|
if (!item || NS_FAILED(rv)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -565,7 +564,7 @@ nsClipboard::SelectionGetEvent(GtkClipboard *aClipboard,
|
|||||||
|
|
||||||
rv = trans->GetTransferData(target_name, getter_AddRefs(item));
|
rv = trans->GetTransferData(target_name, getter_AddRefs(item));
|
||||||
// nothing found?
|
// nothing found?
|
||||||
if (NS_FAILED(rv) || !item) {
|
if (!item || NS_FAILED(rv)) {
|
||||||
g_free(target_name);
|
g_free(target_name);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1739,16 +1739,11 @@ nsDragService::SourceBeginDrag(GdkDragContext *aContext)
|
|||||||
for (uint32_t i = 0; i < flavors.Length(); ++i) {
|
for (uint32_t i = 0; i < flavors.Length(); ++i) {
|
||||||
if (flavors[i].EqualsLiteral(kFilePromiseDestFilename)) {
|
if (flavors[i].EqualsLiteral(kFilePromiseDestFilename)) {
|
||||||
nsCOMPtr<nsISupports> data;
|
nsCOMPtr<nsISupports> data;
|
||||||
rv = transferable->GetTransferData(kFilePromiseDestFilename,
|
transferable->GetTransferData(kFilePromiseDestFilename,
|
||||||
getter_AddRefs(data));
|
getter_AddRefs(data));
|
||||||
if (NS_FAILED(rv)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
nsCOMPtr<nsISupportsString> fileName = do_QueryInterface(data);
|
nsCOMPtr<nsISupportsString> fileName = do_QueryInterface(data);
|
||||||
if (!fileName) {
|
if (!fileName)
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
nsAutoString fileNameStr;
|
nsAutoString fileNameStr;
|
||||||
fileName->GetData(fileNameStr);
|
fileName->GetData(fileNameStr);
|
||||||
|
|||||||
@@ -131,7 +131,7 @@ interface nsITransferable : nsISupports
|
|||||||
* @param aData the data. Some variant of class in nsISupportsPrimitives.idl
|
* @param aData the data. Some variant of class in nsISupportsPrimitives.idl
|
||||||
* @param aDataLen the length of the data
|
* @param aDataLen the length of the data
|
||||||
*/
|
*/
|
||||||
[must_use] void getTransferData(in string aFlavor, out nsISupports aData);
|
void getTransferData(in string aFlavor, out nsISupports aData);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the best flavor in the transferable, given those that have
|
* Returns the best flavor in the transferable, given those that have
|
||||||
|
|||||||
@@ -897,67 +897,65 @@ nsDataObj::GetDib(const nsACString& inFlavor,
|
|||||||
FORMATETC &aFormat,
|
FORMATETC &aFormat,
|
||||||
STGMEDIUM & aSTG)
|
STGMEDIUM & aSTG)
|
||||||
{
|
{
|
||||||
|
ULONG result = E_FAIL;
|
||||||
nsCOMPtr<nsISupports> genericDataWrapper;
|
nsCOMPtr<nsISupports> genericDataWrapper;
|
||||||
if (NS_FAILED(mTransferable->GetTransferData(PromiseFlatCString(inFlavor).get(),
|
mTransferable->GetTransferData(PromiseFlatCString(inFlavor).get(), getter_AddRefs(genericDataWrapper));
|
||||||
getter_AddRefs(genericDataWrapper)))) {
|
nsCOMPtr<imgIContainer> image ( do_QueryInterface(genericDataWrapper) );
|
||||||
return E_FAIL;
|
if ( image ) {
|
||||||
}
|
nsCOMPtr<imgITools> imgTools = do_CreateInstance("@mozilla.org/image/tools;1");
|
||||||
|
|
||||||
nsCOMPtr<imgIContainer> image = do_QueryInterface(genericDataWrapper);
|
nsAutoString options;
|
||||||
if (!image) {
|
if (aFormat.cfFormat == CF_DIBV5) {
|
||||||
return E_FAIL;
|
options.AppendLiteral("version=5");
|
||||||
}
|
} else {
|
||||||
|
options.AppendLiteral("version=3");
|
||||||
|
}
|
||||||
|
|
||||||
nsCOMPtr<imgITools> imgTools = do_CreateInstance("@mozilla.org/image/tools;1");
|
nsCOMPtr<nsIInputStream> inputStream;
|
||||||
|
nsresult rv = imgTools->EncodeImage(image, NS_LITERAL_CSTRING(IMAGE_BMP),
|
||||||
|
options, getter_AddRefs(inputStream));
|
||||||
|
if (NS_FAILED(rv) || !inputStream) {
|
||||||
|
return E_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
nsAutoString options;
|
nsCOMPtr<imgIEncoder> encoder = do_QueryInterface(inputStream);
|
||||||
if (aFormat.cfFormat == CF_DIBV5) {
|
if (!encoder) {
|
||||||
options.AppendLiteral("version=5");
|
return E_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t size = 0;
|
||||||
|
rv = encoder->GetImageBufferUsed(&size);
|
||||||
|
if (NS_FAILED(rv) || size <= BFH_LENGTH) {
|
||||||
|
return E_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
|
char *src = nullptr;
|
||||||
|
rv = encoder->GetImageBuffer(&src);
|
||||||
|
if (NS_FAILED(rv) || !src) {
|
||||||
|
return E_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
|
// We don't want the file header.
|
||||||
|
src += BFH_LENGTH;
|
||||||
|
size -= BFH_LENGTH;
|
||||||
|
|
||||||
|
HGLOBAL glob = ::GlobalAlloc(GMEM_MOVEABLE | GMEM_ZEROINIT, size);
|
||||||
|
if (!glob) {
|
||||||
|
DWORD err = ::GetLastError();
|
||||||
|
return E_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
|
char *dst = (char*) ::GlobalLock(glob);
|
||||||
|
::CopyMemory(dst, src, size);
|
||||||
|
::GlobalUnlock(glob);
|
||||||
|
|
||||||
|
aSTG.hGlobal = glob;
|
||||||
|
aSTG.tymed = TYMED_HGLOBAL;
|
||||||
|
result = S_OK;
|
||||||
} else {
|
} else {
|
||||||
options.AppendLiteral("version=3");
|
NS_WARNING ( "Definitely not an image on clipboard" );
|
||||||
}
|
}
|
||||||
|
return result;
|
||||||
nsCOMPtr<nsIInputStream> inputStream;
|
|
||||||
nsresult rv = imgTools->EncodeImage(image, NS_LITERAL_CSTRING(IMAGE_BMP),
|
|
||||||
options, getter_AddRefs(inputStream));
|
|
||||||
if (NS_FAILED(rv) || !inputStream) {
|
|
||||||
return E_FAIL;
|
|
||||||
}
|
|
||||||
|
|
||||||
nsCOMPtr<imgIEncoder> encoder = do_QueryInterface(inputStream);
|
|
||||||
if (!encoder) {
|
|
||||||
return E_FAIL;
|
|
||||||
}
|
|
||||||
|
|
||||||
uint32_t size = 0;
|
|
||||||
rv = encoder->GetImageBufferUsed(&size);
|
|
||||||
if (NS_FAILED(rv) || size <= BFH_LENGTH) {
|
|
||||||
return E_FAIL;
|
|
||||||
}
|
|
||||||
|
|
||||||
char *src = nullptr;
|
|
||||||
rv = encoder->GetImageBuffer(&src);
|
|
||||||
if (NS_FAILED(rv) || !src) {
|
|
||||||
return E_FAIL;
|
|
||||||
}
|
|
||||||
|
|
||||||
// We don't want the file header.
|
|
||||||
src += BFH_LENGTH;
|
|
||||||
size -= BFH_LENGTH;
|
|
||||||
|
|
||||||
HGLOBAL glob = ::GlobalAlloc(GMEM_MOVEABLE | GMEM_ZEROINIT, size);
|
|
||||||
if (!glob) {
|
|
||||||
DWORD err = ::GetLastError();
|
|
||||||
return E_FAIL;
|
|
||||||
}
|
|
||||||
|
|
||||||
char *dst = (char*) ::GlobalLock(glob);
|
|
||||||
::CopyMemory(dst, src, size);
|
|
||||||
::GlobalUnlock(glob);
|
|
||||||
|
|
||||||
aSTG.hGlobal = glob;
|
|
||||||
aSTG.tymed = TYMED_HGLOBAL;
|
|
||||||
return S_OK;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -1376,11 +1374,9 @@ HRESULT nsDataObj::GetText(const nsACString & aDataFlavor, FORMATETC& aFE, STGME
|
|||||||
|
|
||||||
// NOTE: CreateDataFromPrimitive creates new memory, that needs to be deleted
|
// NOTE: CreateDataFromPrimitive creates new memory, that needs to be deleted
|
||||||
nsCOMPtr<nsISupports> genericDataWrapper;
|
nsCOMPtr<nsISupports> genericDataWrapper;
|
||||||
nsresult rv = mTransferable->GetTransferData(flavorStr,
|
mTransferable->GetTransferData(flavorStr, getter_AddRefs(genericDataWrapper));
|
||||||
getter_AddRefs(genericDataWrapper));
|
if ( !genericDataWrapper )
|
||||||
if (NS_FAILED(rv) || !genericDataWrapper) {
|
|
||||||
return E_FAIL;
|
return E_FAIL;
|
||||||
}
|
|
||||||
|
|
||||||
uint32_t len;
|
uint32_t len;
|
||||||
nsPrimitiveHelpers::CreateDataFromPrimitive(
|
nsPrimitiveHelpers::CreateDataFromPrimitive(
|
||||||
@@ -1488,9 +1484,7 @@ HRESULT nsDataObj::DropFile(FORMATETC& aFE, STGMEDIUM& aSTG)
|
|||||||
nsresult rv;
|
nsresult rv;
|
||||||
nsCOMPtr<nsISupports> genericDataWrapper;
|
nsCOMPtr<nsISupports> genericDataWrapper;
|
||||||
|
|
||||||
if (NS_FAILED(mTransferable->GetTransferData(kFileMime, getter_AddRefs(genericDataWrapper)))) {
|
mTransferable->GetTransferData(kFileMime, getter_AddRefs(genericDataWrapper));
|
||||||
return E_FAIL;
|
|
||||||
}
|
|
||||||
nsCOMPtr<nsIFile> file ( do_QueryInterface(genericDataWrapper) );
|
nsCOMPtr<nsIFile> file ( do_QueryInterface(genericDataWrapper) );
|
||||||
if (!file)
|
if (!file)
|
||||||
return E_FAIL;
|
return E_FAIL;
|
||||||
@@ -1543,10 +1537,7 @@ HRESULT nsDataObj::DropImage(FORMATETC& aFE, STGMEDIUM& aSTG)
|
|||||||
if (!mCachedTempFile) {
|
if (!mCachedTempFile) {
|
||||||
nsCOMPtr<nsISupports> genericDataWrapper;
|
nsCOMPtr<nsISupports> genericDataWrapper;
|
||||||
|
|
||||||
if (NS_FAILED(mTransferable->GetTransferData(kNativeImageMime,
|
mTransferable->GetTransferData(kNativeImageMime, getter_AddRefs(genericDataWrapper));
|
||||||
getter_AddRefs(genericDataWrapper)))) {
|
|
||||||
return E_FAIL;
|
|
||||||
}
|
|
||||||
nsCOMPtr<imgIContainer> image(do_QueryInterface(genericDataWrapper));
|
nsCOMPtr<imgIContainer> image(do_QueryInterface(genericDataWrapper));
|
||||||
if (!image)
|
if (!image)
|
||||||
return E_FAIL;
|
return E_FAIL;
|
||||||
@@ -2105,8 +2096,7 @@ HRESULT nsDataObj::GetDownloadDetails(nsIURI **aSourceURI,
|
|||||||
|
|
||||||
// get the URI from the kFilePromiseURLMime flavor
|
// get the URI from the kFilePromiseURLMime flavor
|
||||||
nsCOMPtr<nsISupports> urlPrimitive;
|
nsCOMPtr<nsISupports> urlPrimitive;
|
||||||
nsresult rv = mTransferable->GetTransferData(kFilePromiseURLMime, getter_AddRefs(urlPrimitive));
|
mTransferable->GetTransferData(kFilePromiseURLMime, getter_AddRefs(urlPrimitive));
|
||||||
NS_ENSURE_SUCCESS(rv, E_FAIL);
|
|
||||||
nsCOMPtr<nsISupportsString> srcUrlPrimitive = do_QueryInterface(urlPrimitive);
|
nsCOMPtr<nsISupportsString> srcUrlPrimitive = do_QueryInterface(urlPrimitive);
|
||||||
NS_ENSURE_TRUE(srcUrlPrimitive, E_FAIL);
|
NS_ENSURE_TRUE(srcUrlPrimitive, E_FAIL);
|
||||||
|
|
||||||
@@ -2119,8 +2109,7 @@ HRESULT nsDataObj::GetDownloadDetails(nsIURI **aSourceURI,
|
|||||||
|
|
||||||
nsAutoString srcFileName;
|
nsAutoString srcFileName;
|
||||||
nsCOMPtr<nsISupports> fileNamePrimitive;
|
nsCOMPtr<nsISupports> fileNamePrimitive;
|
||||||
rv = mTransferable->GetTransferData(kFilePromiseDestFilename, getter_AddRefs(fileNamePrimitive));
|
mTransferable->GetTransferData(kFilePromiseDestFilename, getter_AddRefs(fileNamePrimitive));
|
||||||
NS_ENSURE_SUCCESS(rv, E_FAIL);
|
|
||||||
nsCOMPtr<nsISupportsString> srcFileNamePrimitive = do_QueryInterface(fileNamePrimitive);
|
nsCOMPtr<nsISupportsString> srcFileNamePrimitive = do_QueryInterface(fileNamePrimitive);
|
||||||
if (srcFileNamePrimitive) {
|
if (srcFileNamePrimitive) {
|
||||||
srcFileNamePrimitive->GetData(srcFileName);
|
srcFileNamePrimitive->GetData(srcFileName);
|
||||||
|
|||||||
Reference in New Issue
Block a user