diff --git a/dll/win32/shell32/shlfileop.cpp b/dll/win32/shell32/shlfileop.cpp index f90f3265773..26f88e3594f 100644 --- a/dll/win32/shell32/shlfileop.cpp +++ b/dll/win32/shell32/shlfileop.cpp @@ -1972,14 +1972,14 @@ validate_operation(LPSHFILEOPSTRUCTW lpFileOp, FILE_LIST *flFrom, FILE_LIST *flT { strTitle.LoadStringW(IDS_MOVEERRORTITLE); if (IsAttribDir(feFrom->attributes)) - strText.Format(IDS_MOVEERRORSAMEFOLDER, feFrom->szFilename); + strText.Format(IDS_MOVEERRORSAMEFOLDER, wcslen(feFrom->szFilename) ? feFrom->szFilename : feFrom->szFullPath); else - strText.Format(IDS_MOVEERRORSAME, feFrom->szFilename); + strText.Format(IDS_MOVEERRORSAME, wcslen(feFrom->szFilename) ? feFrom->szFilename : feFrom->szFullPath); } else { strTitle.LoadStringW(IDS_COPYERRORTITLE); - strText.Format(IDS_COPYERRORSAME, feFrom->szFilename); + strText.Format(IDS_COPYERRORSAME, wcslen(feFrom->szFilename) ? feFrom->szFilename : feFrom->szFullPath); return ERROR_SUCCESS; } MessageBoxW(hwnd, strText, strTitle, MB_ICONERROR); @@ -2007,12 +2007,12 @@ validate_operation(LPSHFILEOPSTRUCTW lpFileOp, FILE_LIST *flFrom, FILE_LIST *flT if (wFunc == FO_MOVE) { strTitle.LoadStringW(IDS_MOVEERRORTITLE); - strText.Format(IDS_MOVEERRORSUBFOLDER, feFrom->szFilename); + strText.Format(IDS_MOVEERRORSUBFOLDER, wcslen(feFrom->szFilename) ? feFrom->szFilename : feFrom->szFullPath); } else { strTitle.LoadStringW(IDS_COPYERRORTITLE); - strText.Format(IDS_COPYERRORSUBFOLDER, feFrom->szFilename); + strText.Format(IDS_COPYERRORSUBFOLDER, wcslen(feFrom->szFilename) ? feFrom->szFilename : feFrom->szFullPath); } MessageBoxW(hwnd, strText, strTitle, MB_ICONERROR); return DE_DESTSUBTREE;