@@ -752,6 +752,12 @@ int32 SetPosixPermissions(ExtensionString filename, int32 mode)
752
752
753
753
int32 ShellDeleteFileOrDirectory (ExtensionString filename, bool allowUndo)
754
754
{
755
+ DWORD dwAttr = GetFileAttributes (filename.c_str ());
756
+
757
+ if (dwAttr == INVALID_FILE_ATTRIBUTES) {
758
+ return ERR_NOT_FOUND;
759
+ }
760
+
755
761
WCHAR filepath[MAX_PATH+1 ] = {0 };
756
762
wcscpy (filepath, filename.c_str ());
757
763
SHFILEOPSTRUCT operation = {0 };
@@ -776,32 +782,12 @@ int32 ShellDeleteFileOrDirectory(ExtensionString filename, bool allowUndo)
776
782
777
783
int32 DeleteFileOrDirectory (ExtensionString filename)
778
784
{
779
- DWORD dwAttr = GetFileAttributes (filename.c_str ());
780
- int32 error = NO_ERROR;
781
-
782
- if (dwAttr == INVALID_FILE_ATTRIBUTES) {
783
- error = ERR_NOT_FOUND;
784
- }
785
-
786
- if (error == NO_ERROR) {
787
- error = ShellDeleteFileOrDirectory (filename, false );
788
- }
789
-
790
- return error;
785
+ return ShellDeleteFileOrDirectory (filename, false );
791
786
}
792
787
793
788
void MoveFileOrDirectoryToTrash (ExtensionString filename, CefRefPtr<CefBrowser> browser, CefRefPtr<CefProcessMessage> response)
794
789
{
795
- DWORD dwAttr = GetFileAttributes (filename.c_str ());
796
- int32 error = NO_ERROR;
797
-
798
- if (dwAttr == INVALID_FILE_ATTRIBUTES) {
799
- error = ERR_NOT_FOUND;
800
- }
801
-
802
- if (error == NO_ERROR) {
803
- error = ShellDeleteFileOrDirectory (filename, true );
804
- }
790
+ int32 error = ShellDeleteFileOrDirectory (filename, true );
805
791
806
792
response->GetArgumentList ()->SetInt (1 , error);
807
793
browser->SendProcessMessage (PID_RENDERER, response);
0 commit comments