Rebase against bd2999db92e63f3aa8b48945503c616c28726842.

[dwmapi-DwmSetWindowAttribute]
Removed patch to fake success in dwmapi.DwmSetWindowAttribute function
(accepted upstream).

[ntdll-NtSetLdtEntries]
Partially removed patch to implement ntdll.NtSetLdtEntries (accepted upstream).

[shell32-UNIXFS_get_unix_path]
Removed patch to check IsWoW64Process before calling Wow64 functions in
UNIXFS_get_unix_path (fixed upstream).
This commit is contained in:
Sebastian Lackner
2016-05-02 20:34:01 +02:00
parent 07d872e2bc
commit 8e5acbdae3
18 changed files with 113 additions and 359 deletions

View File

@@ -1,14 +1,14 @@
From 46894941581a7d408983d55039308e03f2842b7a Mon Sep 17 00:00:00 2001
From 10dda0bfac5b79169b84f5a6eb97f0a8aee7a4eb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Tue, 24 Feb 2015 04:25:29 +0100
Subject: shell32: Correct indentation in shfileop.c.
---
dlls/shell32/shlfileop.c | 730 +++++++++++++++++++++++------------------------
1 file changed, 365 insertions(+), 365 deletions(-)
dlls/shell32/shlfileop.c | 728 +++++++++++++++++++++++------------------------
1 file changed, 364 insertions(+), 364 deletions(-)
diff --git a/dlls/shell32/shlfileop.c b/dlls/shell32/shlfileop.c
index 62d7880..ee40e39 100644
index 07635c8..ef2532d 100644
--- a/dlls/shell32/shlfileop.c
+++ b/dlls/shell32/shlfileop.c
@@ -164,7 +164,7 @@ static INT_PTR ConfirmMsgBox_Init(HWND hDlg, LPARAM lParam)
@@ -807,7 +807,7 @@ index 62d7880..ee40e39 100644
}
/*************************************************************************
* SHFileOperationA [SHELL32.@]
@@ -865,43 +865,43 @@ static DWORD SHNameTranslate(LPWSTR* wString, LPCWSTR* pWToFrom, BOOL more)
@@ -865,42 +865,42 @@ static DWORD SHNameTranslate(LPWSTR* wString, LPCWSTR* pWToFrom, BOOL more)
*/
int WINAPI SHFileOperationA(LPSHFILEOPSTRUCTA lpFileOp)
{
@@ -840,7 +840,6 @@ index 62d7880..ee40e39 100644
- if (ForFree) continue;
- retCode = ERROR_OUTOFMEMORY;
- nFileOp.fAnyOperationsAborted = TRUE;
- SetLastError(retCode);
- return retCode;
- }
- }
@@ -877,7 +876,6 @@ index 62d7880..ee40e39 100644
+ if (ForFree) continue;
+ retCode = ERROR_OUTOFMEMORY;
+ nFileOp.fAnyOperationsAborted = TRUE;
+ SetLastError(retCode);
+ return retCode;
+ }
+ }
@@ -888,7 +886,7 @@ index 62d7880..ee40e39 100644
}
#define ERROR_SHELL_INTERNAL_FILE_NOT_FOUND 1026
@@ -931,7 +931,7 @@ typedef struct
@@ -930,7 +930,7 @@ typedef struct
static inline void grow_list(FILE_LIST *list)
{
FILE_ENTRY *new = HeapReAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, list->feFiles,
@@ -897,7 +895,7 @@ index 62d7880..ee40e39 100644
list->feFiles = new;
list->num_alloc *= 2;
}
@@ -1023,7 +1023,7 @@ static HRESULT parse_file_list(FILE_LIST *flList, LPCWSTR szFiles)
@@ -1022,7 +1022,7 @@ static HRESULT parse_file_list(FILE_LIST *flList, LPCWSTR szFiles)
/* empty list */
if (!szFiles[0])
return ERROR_ACCESS_DENIED;
@@ -906,7 +904,7 @@ index 62d7880..ee40e39 100644
flList->feFiles = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY,
flList->num_alloc * sizeof(FILE_ENTRY));
@@ -1127,7 +1127,7 @@ static void copy_dir_to_dir(FILE_OPERATION *op, const FILE_ENTRY *feFrom, LPCWST
@@ -1126,7 +1126,7 @@ static void copy_dir_to_dir(FILE_OPERATION *op, const FILE_ENTRY *feFrom, LPCWST
/* Don't ask the user about overwriting files when he accepted to overwrite the
folder. FIXME: this is not exactly what Windows does - e.g. there would be
an additional confirmation for a nested folder */
@@ -915,7 +913,7 @@ index 62d7880..ee40e39 100644
SHFileOperationW(&fileOp);
}
@@ -1339,7 +1339,7 @@ static DWORD delete_files(LPSHFILEOPSTRUCTW lpFileOp, const FILE_LIST *flFrom)
@@ -1339,7 +1339,7 @@ static int delete_files(LPSHFILEOPSTRUCTW lpFileOp, const FILE_LIST *flFrom)
/* Windows also checks only the first item */
bTrash = (lpFileOp->fFlags & FOF_ALLOWUNDO)
@@ -924,7 +922,7 @@ index 62d7880..ee40e39 100644
if (!(lpFileOp->fFlags & FOF_NOCONFIRMATION) || (!bTrash && lpFileOp->fFlags & FOF_WANTNUKEWARNING))
if (!confirm_delete_list(lpFileOp->hwnd, lpFileOp->fFlags, bTrash, flFrom))
@@ -1374,11 +1374,11 @@ static DWORD delete_files(LPSHFILEOPSTRUCTW lpFileOp, const FILE_LIST *flFrom)
@@ -1374,11 +1374,11 @@ static int delete_files(LPSHFILEOPSTRUCTW lpFileOp, const FILE_LIST *flFrom)
break;
}
}
@@ -938,7 +936,7 @@ index 62d7880..ee40e39 100644
else
ret = SHELL_DeleteDirectoryW(lpFileOp->hwnd, fileEntry->szFullPath, FALSE);
@@ -1528,8 +1528,8 @@ static DWORD rename_files(LPSHFILEOPSTRUCTW lpFileOp, const FILE_LIST *flFrom, c
@@ -1503,8 +1503,8 @@ static int rename_files(LPSHFILEOPSTRUCTW lpFileOp, const FILE_LIST *flFrom, con
static void check_flags(FILEOP_FLAGS fFlags)
{
WORD wUnsupportedFlags = FOF_NO_CONNECTED_ELEMENTS |
@@ -949,7 +947,7 @@ index 62d7880..ee40e39 100644
if (fFlags & wUnsupportedFlags)
FIXME("Unsupported flags: %04x\n", fFlags);
@@ -1611,19 +1611,19 @@ int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
@@ -1587,19 +1587,19 @@ int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
*/
void WINAPI SHFreeNameMappings(HANDLE hNameMapping)
{
@@ -979,7 +977,7 @@ index 62d7880..ee40e39 100644
}
/*************************************************************************
@@ -1729,14 +1729,14 @@ DWORD WINAPI SheChangeDirW(LPWSTR path)
@@ -1705,14 +1705,14 @@ DWORD WINAPI SheChangeDirW(LPWSTR path)
}
/*************************************************************************
@@ -1000,5 +998,5 @@ index 62d7880..ee40e39 100644
--
2.3.0
2.8.0

View File

@@ -1,4 +1,4 @@
From 725a496f1d8484b7392ef0f14cb13ddd18b1dca5 Mon Sep 17 00:00:00 2001
From 3c2e5967acbc177bf43c2cb6012bdc22c7a59fb2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Fri, 27 Feb 2015 01:04:33 +0100
Subject: shell32: Implement file operation progress dialog.
@@ -11,7 +11,7 @@ Based on a patch by Huw Campbell.
3 files changed, 285 insertions(+), 7 deletions(-)
diff --git a/dlls/shell32/shell32.rc b/dlls/shell32/shell32.rc
index 37acbe7..dd054fb 100644
index bfba962..277b23a 100644
--- a/dlls/shell32/shell32.rc
+++ b/dlls/shell32/shell32.rc
@@ -184,6 +184,13 @@ If the files in the destination folder have the same names as files in the\n\
@@ -29,7 +29,7 @@ index 37acbe7..dd054fb 100644
IDS_RESTART_TITLE "Restart"
IDS_RESTART_PROMPT "Do you want to simulate a Windows reboot?"
diff --git a/dlls/shell32/shlfileop.c b/dlls/shell32/shlfileop.c
index ed8ff38..0d50223 100644
index 5f0189b..5ad241c 100644
--- a/dlls/shell32/shlfileop.c
+++ b/dlls/shell32/shlfileop.c
@@ -65,6 +65,10 @@ typedef struct
@@ -140,7 +140,7 @@ index ed8ff38..0d50223 100644
if (ret)
{
SHChangeNotify(SHCNE_CREATE, SHCNF_PATHW, dest, NULL);
@@ -1293,6 +1332,8 @@ static DWORD copy_files(FILE_OPERATION *op, BOOL multidest, const FILE_LIST *flF
@@ -1292,6 +1331,8 @@ static int copy_files(FILE_OPERATION *op, BOOL multidest, const FILE_LIST *flFro
}
/* Vista return code. XP would return e.g. ERROR_FILE_NOT_FOUND, ERROR_ALREADY_EXISTS */
@@ -149,7 +149,7 @@ index ed8ff38..0d50223 100644
if (op->bCancelled)
return ERROR_CANCELLED;
}
@@ -1374,13 +1415,17 @@ static DWORD delete_files(FILE_OPERATION *op, const FILE_LIST *flFrom)
@@ -1374,13 +1415,17 @@ static int delete_files(FILE_OPERATION *op, const FILE_LIST *flFrom)
/* delete the file or directory */
if (IsAttribFile(fileEntry->attributes))
@@ -169,7 +169,7 @@ index ed8ff38..0d50223 100644
}
return ERROR_SUCCESS;
@@ -1485,6 +1530,11 @@ static DWORD move_files(FILE_OPERATION *op, BOOL multidest, const FILE_LIST *flF
@@ -1455,6 +1500,11 @@ static int move_files(FILE_OPERATION *op, BOOL multidest, const FILE_LIST *flFro
move_to_dir(op, entryToMove, fileDest);
else
SHNotifyMoveFileW(op, entryToMove->szFullPath, fileDest->szFullPath);
@@ -181,7 +181,7 @@ index ed8ff38..0d50223 100644
}
if (mismatched > 0)
@@ -1544,6 +1594,7 @@ int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
@@ -1514,6 +1564,7 @@ int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
{
FILE_OPERATION op;
FILE_LIST flFrom, flTo;
@@ -189,7 +189,7 @@ index ed8ff38..0d50223 100644
int ret = 0;
if (!lpFileOp)
@@ -1562,9 +1613,31 @@ int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
@@ -1532,9 +1583,31 @@ int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
ZeroMemory(&op, sizeof(op));
op.req = lpFileOp;
@@ -221,7 +221,7 @@ index ed8ff38..0d50223 100644
switch (lpFileOp->wFunc)
{
case FO_COPY:
@@ -1584,6 +1657,12 @@ int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
@@ -1554,6 +1627,12 @@ int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
break;
}
@@ -234,17 +234,17 @@ index ed8ff38..0d50223 100644
destroy_file_list(&flFrom);
if (lpFileOp->wFunc != FO_DELETE)
@@ -1592,6 +1671,9 @@ int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
@@ -1562,6 +1641,9 @@ int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
if (ret == ERROR_CANCELLED)
lpFileOp->fAnyOperationsAborted = TRUE;
+ if (SUCCEEDED(co_ret))
+ CoUninitialize();
+
SetLastError(ERROR_SUCCESS);
return ret;
}
@@ -1822,3 +1904,184 @@ HRESULT WINAPI SHPathPrepareForWriteW(HWND hwnd, IUnknown *modless, LPCWSTR path
@@ -1793,3 +1875,184 @@ HRESULT WINAPI SHPathPrepareForWriteW(HWND hwnd, IUnknown *modless, LPCWSTR path
else
return HRESULT_FROM_WIN32(ERROR_DIRECTORY);
}
@@ -449,5 +449,5 @@ index 183a75e..8ee525a 100644
#define IDS_RECYCLEBIN_FOLDER_NAME 8964
--
2.3.0
2.8.0