Преглед на файлове

fix(fs): support asset filenames with percent encoding

Fix #10188
Andelf преди 2 години
родител
ревизия
8f5b1da36f
променени са 1 файла, в които са добавени 11 реда и са изтрити 5 реда
  1. 11 5
      resources/js/preload.js

+ 11 - 5
resources/js/preload.js

@@ -116,15 +116,21 @@ contextBridge.exposeInMainWorld('apis', {
 
 
     const dest = path.join(repoPathRoot, to)
     const dest = path.join(repoPathRoot, to)
     const assetsRoot = path.dirname(dest)
     const assetsRoot = path.dirname(dest)
-    
+
     await fs.promises.mkdir(assetsRoot, { recursive: true })
     await fs.promises.mkdir(assetsRoot, { recursive: true })
 
 
-    from = from && decodeURIComponent(from || getFilePathFromClipboard())
+    from = from || getFilePathFromClipboard()
 
 
     if (from) {
     if (from) {
-      // console.debug('copy file: ', from, dest)
-      await fs.promises.copyFile(from, dest)
-      return path.basename(from)
+      try {
+        // console.debug('copy file: ', from, dest)
+        await fs.promises.copyFile(from, dest)
+        return path.basename(from)
+      } catch (e) {
+        from = decodeURIComponent(from)
+        await fs.promises.copyFile(from, dest)
+        return path.basename(from)
+      }
     }
     }
 
 
     // support image
     // support image