@@ -664,34 +664,40 @@ function execOperation(type, action, url, $target, name) {
664664 newName = helpers . fixFilename ( newName ) ;
665665 if ( ! newName ) return ;
666666 startLoading ( ) ;
667- const isNestedPath = newName . split ( "/" ) . filter ( Boolean ) . length > 1 ;
668- let newUrl ;
667+ try {
668+ const isNestedPath = newName . split ( "/" ) . filter ( Boolean ) . length > 1 ;
669+ let newUrl ;
669670
670- if ( action === "new file" ) {
671- newUrl = await helpers . createFileStructure ( url , newName ) ;
672- } else {
673- newUrl = await helpers . createFileStructure ( url , newName , false ) ;
674- }
675- if ( ! newUrl ) return ;
671+ if ( action === "new file" ) {
672+ newUrl = await helpers . createFileStructure ( url , newName ) ;
673+ } else {
674+ newUrl = await helpers . createFileStructure ( url , newName , false ) ;
675+ }
676+ if ( ! newUrl ) return ;
676677
677- if ( isNestedPath ) {
678- openFolder . find ( url ) ?. reload ( ) ;
679- await FileList . refresh ( ) ;
680- toast ( strings . success ) ;
681- return ;
682- }
678+ if ( isNestedPath ) {
679+ openFolder . find ( url ) ?. reload ( ) ;
680+ await FileList . refresh ( ) ;
681+ toast ( strings . success ) ;
682+ return ;
683+ }
683684
684- newName = Url . basename ( newUrl . uri ) ;
685- if ( $target . unclasped ) {
686- if ( newUrl . type === "file" ) {
687- appendTile ( $target , createFileTile ( newName , newUrl . uri ) ) ;
688- } else if ( newUrl . type === "folder" ) {
689- appendList ( $target , createFolderTile ( newName , newUrl . uri ) ) ;
685+ newName = Url . basename ( newUrl . uri ) ;
686+ if ( $target . unclasped ) {
687+ if ( newUrl . type === "file" ) {
688+ appendTile ( $target , createFileTile ( newName , newUrl . uri ) ) ;
689+ } else if ( newUrl . type === "folder" ) {
690+ appendList ( $target , createFolderTile ( newName , newUrl . uri ) ) ;
691+ }
690692 }
691- }
692693
693- FileList . append ( url , newUrl . uri ) ;
694- toast ( strings . success ) ;
694+ FileList . append ( url , newUrl . uri ) ;
695+ toast ( strings . success ) ;
696+ } catch ( error ) {
697+ helpers . error ( error ) ;
698+ } finally {
699+ stopLoading ( ) ;
700+ }
695701 }
696702
697703 async function paste ( ) {
0 commit comments