diff --git a/mozilla/widget/src/windows/nsDragService.cpp b/mozilla/widget/src/windows/nsDragService.cpp index 69851a7912c..b12e055b344 100644 --- a/mozilla/widget/src/windows/nsDragService.cpp +++ b/mozilla/widget/src/windows/nsDragService.cpp @@ -222,6 +222,12 @@ nsDragService::InvokeDragSession(nsIDOMNode *aDOMNode, if (NS_FAILED(rv)) return rv; + // set the directory promise flavour + // if this fails it won't affect the drag so we can just continue + trans->SetTransferData(kFilePromiseDirectoryMime, + dropLocalFile, + sizeof(nsILocalFile*)); + // Create a new FileURI to pass to the nsIDownload nsCOMPtr targetURI; diff --git a/mozilla/widget/src/windows/nsDragService.h b/mozilla/widget/src/windows/nsDragService.h index 2c9d760c458..b94fd142747 100644 --- a/mozilla/widget/src/windows/nsDragService.h +++ b/mozilla/widget/src/windows/nsDragService.h @@ -63,14 +63,14 @@ typedef struct { #endif // SHCNE_RENAMEITEM_DEF // Register for shell notifications func ptr -typedef ULONG (*SHCNRegPtr)(HWND hWnd, // Ordinal of 2 - int fSources, - LONG fEvents, - UINT wMsg, - int cEntries, - SHChangeNotifyStruct *pschn); +typedef WINSHELLAPI ULONG (WINAPI *SHCNRegPtr)(HWND hWnd, // Ordinal of 2 + int fSources, + LONG fEvents, + UINT wMsg, + int cEntries, + SHChangeNotifyStruct *pschn); // Unregister form from the shell notifications func ptr -typedef BOOL (*SHCNDeregPtr)(ULONG ulID); // Ordinal of 4 +typedef WINSHELLAPI BOOL (WINAPI *SHCNDeregPtr)(ULONG ulID); // Ordinal of 4 /** * Native Win32 DragService wrapper