Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

A file cannot be renamed on F-02F #506

Closed
mvysny opened this issue May 16, 2015 · 5 comments
Closed

A file cannot be renamed on F-02F #506

mvysny opened this issue May 16, 2015 · 5 comments

Comments

@mvysny
Copy link
Owner

mvysny commented May 16, 2015

java.lang.RuntimeException: Unable to start activity ComponentInfo{sk.baka.aedict3/sk.baka.aedict3.EdictEntryDetailActivity}: java.lang.RuntimeException: java.io.IOException: Failed to rename /storage/emulated/0/aedict3/box985254337.tmp to /storage/emulated/0/aedict3/recentlyviewed.bin
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2234)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2287)
at android.app.ActivityThread.access$600(ActivityThread.java:183)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1288)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5252)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:798)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:565)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.RuntimeException: java.io.IOException: Failed to rename /storage/emulated/0/aedict3/box985254337.tmp to /storage/emulated/0/aedict3/recentlyviewed.bin
at sk.baka.aedict3.cloud.FileStorage.writeFile(FileStorage.java:280)
at sk.baka.aedict3.cloud.FileStorage.writeFile(FileStorage.java:245)
at sk.baka.aedict3.cloud.FileStorage.access$500(FileStorage.java:34)
at sk.baka.aedict3.cloud.FileStorage$RecentlyViewed.add(FileStorage.java:550)
at sk.baka.aedict3.search.RecentlyViewedFragment.recentlyViewed(RecentlyViewedFragment.java:83)
at sk.baka.aedict3.EdictEntryDetailActivity.onCreate(EdictEntryDetailActivity.java:202)
at android.app.Activity.performCreate(Activity.java:5146)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1092)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2198)
... 11 more
Caused by: java.io.IOException: Failed to rename /storage/emulated/0/aedict3/box985254337.tmp to /storage/emulated/0/aedict3/recentlyviewed.bin
at sk.baka.aedict.util.Writables.write(Writables.java:322)
at sk.baka.aedict3.cloud.FileStorage.writeLocal(FileStorage.java:147)
at sk.baka.aedict3.cloud.FileStorage.writeFile(FileStorage.java:271)
... 19 more

@mvysny
Copy link
Owner Author

mvysny commented May 16, 2015

https://github.com/mvysny/dirutils to the rescue! I have reworked the write() code to use dirutils, let us see what the problem is this time.

@mvysny
Copy link
Owner Author

mvysny commented May 16, 2015

Updated write() function is in Aedict 3.19

@mvysny
Copy link
Owner Author

mvysny commented May 16, 2015

This is probably caused because of an unfortunate mistake: I have created directories with the "t" sticky bit. Files can be created in this directory, but can only be deleted by root and owner. Since Android takes the ownership of the files immediately from Aedict, Aedict no longer can delete such files. I will implement a workaround which traverses the aedict3 directory once and fixes the access rights. This should fix all SD-Card related problems users are recently reporting.
EDIT: I can no longer modify access rights for those directories, because Android takes over the ownership of those directories. So, the workaround can not be implemented.

@mvysny
Copy link
Owner Author

mvysny commented May 17, 2015

Reported to Android as https://code.google.com/p/android/issues/detail?id=173708

@mvysny
Copy link
Owner Author

mvysny commented May 17, 2015

I have also improved exception message and added FAQ section for this. Closing as won't fix as I cannot do anything with those directories besides recommending factory reset. This is recommended in FAQ.

@mvysny mvysny closed this as completed May 17, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant