Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Bug: Can't import many files with CJK filenames - filename too long #6137

Closed
david-allison opened this issue May 9, 2020 · 3 comments · Fixed by #6140
Closed

Bug: Can't import many files with CJK filenames - filename too long #6137

david-allison opened this issue May 9, 2020 · 3 comments · Fixed by #6140
Assignees
Labels
Bug Import Reproduced This bug has been reproduced by a maintainer

Comments

@david-allison
Copy link
Member

david-allison commented May 9, 2020

Non-crash, but annoying

https://couchdb.ankidroid.org/acralyzer/_design/acralyzer/index.html#/report-details/02a88253-f48e-4a3b-8119-c1e578ca495d

44 character Chinese filename gets expanded to 291 character URLEncoded filename which fails the import. Filename removed for user privacy.

ImportUtils/ Could not copy file to /data/user/0/com.ichi2.anki/cache/[FileName]
java.nio.file.FileSystemException: /data/user/0/com.ichi2.anki/cache/[FileName]: File name too long
at sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:244)
at sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:108)
at java.nio.file.Files.deleteIfExists(Files.java:1165)
at java.nio.file.Files.copy(Files.java:3004)
at com.ichi2.compat.CompatV26.copyFile(CompatV26.java:3)
at com.ichi2.utils.ImportUtils.copyFileToCache(ImportUtils.java:2)
at com.ichi2.utils.ImportUtils.handleContentProviderFile(ImportUtils.java:15)
at com.ichi2.utils.ImportUtils.handleFileImportInternal(ImportUtils.java:11)
at com.ichi2.utils.ImportUtils.handleFileImport(ImportUtils.java:4)
at com.ichi2.anki.IntentHandler.onCreate(IntentHandler.java:11)
at android.app.Activity.performCreate(Activity.java:8066)
at android.app.Activity.performCreate(Activity.java:8054)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1313)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3733)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3939)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:91)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:149)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:103)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2373)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:213)
at android.app.ActivityThread.main(ActivityThread.java:8147)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1101)

java.nio.file.FileSystemException: /data/user/0/com.ichi2.anki/cache/[FileName]: File name too long
at sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:244)
at sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:108)
at java.nio.file.Files.deleteIfExists(Files.java:1165)
at java.nio.file.Files.copy(Files.java:3004)
at com.ichi2.compat.CompatV26.copyFile(CompatV26.java:3)
at com.ichi2.utils.ImportUtils.copyFileToCache(ImportUtils.java:2)
at com.ichi2.utils.ImportUtils.handleContentProviderFile(ImportUtils.java:15)
at com.ichi2.utils.ImportUtils.handleFileImportInternal(ImportUtils.java:11)
at com.ichi2.utils.ImportUtils.handleFileImport(ImportUtils.java:4)
at com.ichi2.anki.IntentHandler.onCreate(IntentHandler.java:11)
at android.app.Activity.performCreate(Activity.java:8066)
at android.app.Activity.performCreate(Activity.java:8054)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1313)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3733)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3939)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:91)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:149)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:103)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2373)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:213)
at android.app.ActivityThread.main(ActivityThread.java:8147)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1101)
@david-allison
Copy link
Member Author

david-allison commented May 9, 2020

@david-allison
Copy link
Member Author

david-allison commented May 9, 2020

@david-allison david-allison added Bug Reproduced This bug has been reproduced by a maintainer labels May 9, 2020
@david-allison
Copy link
Member Author

Reproduced with 好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好.apkg

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Bug Import Reproduced This bug has been reproduced by a maintainer
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant