Amazefilemanager: Rename is deleting files

Created on 21 Jan 2019  Â·  17Comments  Â·  Source: TeamAmaze/AmazeFileManager

Just noticed this bug on latest v3.3.2 for production.
File gets deleted on renaming, in internal storage
Please confirm and push a fix ASAP.

Area-FileOperations Issue-Bug Severity-High help wanted

All 17 comments

Checked out v3.3.2 tag and tested on Sony Xperia Z1 Compact running CM13 (6.0.1), Oneplus 2 running Slim7 (7.1.2), and LG Nexus 5x running stock firmware (8.1.0). Renaming file in internal storage completed successfully without loss of files.

Thanks for testing. I'll checkout my logs then. My files were definitely getting deleted. OnePlus 6T Stock Pie.

Tried again, couldn't reproduce. Will close for the time being, since no user reported this either.

Confirming that this just happened to me on a OnePlus 5 running Android Pie. (I hope they're missing and not just deleted for good)

The files were image files that were not created by the app, in a device folder. So if you save an image from Twitter and rename it, it should disappear. v3.3.2

I am able to reproduce this behavior on my device (Amaze 3.3.2, OxygenOS 9.0.6, OnePlus 5) with the following steps:

  1. Open up Twitter and "save" an image (which should make it end up in Pictures/Twitter
  2. Open Amaze and go to "Pictures" in the left-hand Hamburger menu. The path up top should read /storage/emulated/0/Pictures
  3. Go to that image and rename it anything (ex: rename IMG_20190627_103401.jpg to aIMG_20190627_103401.jpg ).
  4. "Image Renamed" toast appears. Scroll up to the top and notice that the image now has a "broken" preview and under properties appears as a zero-byte file
  5. Refresh and notice that the image has disappeared.

I don't have adb set up on this computer, but if I were to provide dumps or debug logs of the error, what would you guys need?

I looked at some logcat apps on F-Droid, all of them still require adb - before ask you for root permission which I have reservations on granting such right.

So one way another, you will need adb ready on your computer.

There are several ways to do this:

  • Install Android Studio - installer will help you to install SDK, so you can easily copy and paste logcat messages. But costs you disk space and a lot of unnecessary stuff, unless you will learn writing Android apps in the future
  • Some people made a little package that will just give you adb and fastboot, here, but it's for Windows...
  • Install Android SDK by hand (Scroll to _Command line tools only_). Should be easier for advanced users?

If you are using adb not distributed officially by Google, always check the files/packages for viruses!

Assuming you have adb setup,

  1. enable developer mode on your device
  2. Open developer options, enable ADB debugging over USB
  3. Plug device into your computer
  4. Say adb logcat in a terminal (assuming you have setup paths properly). For Linux you may need to consider udev permissions as well.
  5. Tons of messages will run across the screen; but start your tests. Look closely at messages having com.amaze.filemanager, and also exceptions that came up
  6. Copy those messages to a text file, or paste here as comments. Remember to brace the logcat messages using 3 tildes (```) - read Mastering Markdown examples#code

Your mileage may vary. Good luck...

I'm not able to reproduce the problem on LG Nexus 5x running AOSPExtended (9.0), either master or 3.3.2 release (downloaded from GitHub though). However, I tried to rename only screenshots captured under internal storage's Pictures/Screenshots directory.

On the other device (Oneplus 2 running Slim7 (7.1.2) having Twitter installed, symptom was not reproducible with the exact steps described above.

However, to be safe, please do not close this issue yet, and hope @rfilmyer can give us the logcat messages we need.

I'll work on it tonight or tomorrow night.

On Tue, Jul 9, 2019, 11:53 AM Raymond Lai notifications@github.com wrote:

I'm not able to reproduce the problem on LG Nexus 5x running AOSPExtended
(9.0), either master or 3.3.2 release (downloaded from GitHub though).
However, I tried to rename only screenshots captured under internal
storage's Pictures/Screenshots directory.

On the other device (Oneplus 2 running Slim7 (7.1.2) having Twitter
installed, symptom was not reproducible with the exact steps described
above.

However, to be safe, please do not close this issue yet, and hope
@rfilmyer https://github.com/rfilmyer can give us the logcat messages
we need.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/TeamAmaze/AmazeFileManager/issues/1576?email_source=notifications&email_token=ABNDU5M5KWWMXLLESVX6QO3P6SYA7A5CNFSM4GRNW6R2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZQWUXQ#issuecomment-509700702,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABNDU5NUFW7MZF4NHVSOLOLP6SYA7ANCNFSM4GRNW6RQ
.

Alright. I believe I have 2 logcat examples of this behavior:

  1. rename something without a space (file disappears immediately)
07-10 20:25:20.357  3835  9381 D MediaScannerService: requestScanFile from {P:22979;U:10101}: /storage/emulated/0/Pictures/Twitter/mcdonalds.jpeg, mimeType: null
07-10 20:25:20.349 22979 22979 W com.amaze.filemanager: type=1400 audit(0.0:215451): avc: denied { read } for comm=4173796E635461736B202339 name="/" dev="rootfs" ino=1 scontext=u:r:untrusted_app:s0:c101,c256,c512,c768 tcontext=u:object_r:rootfs:s0 tclass=dir permissive=0
07-10 20:25:20.389 22979 22979 W aze.filemanager: type=1400 audit(0.0:215452): avc: denied { read } for name="/" dev="rootfs" ino=1 scontext=u:r:untrusted_app:s0:c101,c256,c512,c768 tcontext=u:object_r:rootfs:s0 tclass=dir permissive=0
07-10 20:25:20.412   801  4591 W SurfaceFlinger: Attempting to set client state on removed layer: com.amaze.filemanager/com.amaze.filemanager.activities.MainActivity#1
07-10 20:25:20.412   801  4591 W SurfaceFlinger: Attempting to set client state on removed layer: Dim Layer for - Task=49769#0
07-10 20:25:20.412   801  4591 W SurfaceFlinger: Attempting to destroy on removed layer: com.amaze.filemanager/com.amaze.filemanager.activities.MainActivity#1
07-10 20:25:20.413   801  4591 W SurfaceFlinger: Attempting to destroy on removed layer: Dim Layer for - Task=49769#0
07-10 20:25:20.414  8073  8073 D MediaStoreMediaSource: onMediaStoreContentChanged() - Content URI : content://media/external/images/media/473287
07-10 20:25:20.414 27794 27794 D DirectoryStoreMediaSource: onMediaStoreContentChanged() - Content URI : content://media/external/images/media/473287
07-10 20:25:20.414  8073  8073 D MediaStoreMediaSource: onMediaStoreContentChanged() - Schedule single media sync
07-10 20:25:20.415 27794 27794 D MediaStoreMediaSource: onMediaStoreContentChanged() - Content URI : content://media/external/images/media/473287
07-10 20:25:20.415  3835  9381 D MediaScannerService: requestScanFile from {P:22979;U:10101}: /storage/emulated/0/Pictures/Twitter/IMG_20190710_202359.jpg, mimeType: null
07-10 20:25:20.415 27794 27794 D MediaStoreMediaSource: onMediaStoreContentChanged() - Schedule single media sync
07-10 20:25:20.504 27794 27814 W MediaStoreMediaSource: handleQueriedDataInMediaStore - file:/storage/emulated/0/Pictures/Twitter/mcdonalds.jpeg is not existed
07-10 20:25:20.505  8073  8073 D MediaStoreMediaSource: syncMediaWithMediaStore() Single - Add [MediaStore/473287, /storage/emulated/0/Pictures/Twitter/mcdonalds.jpeg]
  1. rename something with a space (broken image lingers until next refresh)
07-10 20:25:38.554  3835  8775 D MediaScannerService: requestScanFile from {P:22979;U:10101}: /storage/emulated/0/Pictures/Twitter/Carpe take my energy.jpg, mimeType: null
07-10 20:25:38.549 22979 22979 W com.amaze.filemanager: type=1400 audit(0.0:215456): avc: denied { read } for comm=4173796E635461736B202339 name="/" dev="rootfs" ino=1 scontext=u:r:untrusted_app:s0:c101,c256,c512,c768 tcontext=u:object_r:rootfs:s0 tclass=dir permissive=0
07-10 20:25:38.585  8073  8073 D MediaStoreMediaSource: onMediaStoreContentChanged() - Content URI : content://media/external/images/media/473288
07-10 20:25:38.585 27794 27794 D DirectoryStoreMediaSource: onMediaStoreContentChanged() - Content URI : content://media/external/images/media/473288
07-10 20:25:38.585 27794 27794 D MediaStoreMediaSource: onMediaStoreContentChanged() - Content URI : content://media/external/images/media/473288
07-10 20:25:38.585  8073  8073 D MediaStoreMediaSource: onMediaStoreContentChanged() - Schedule single media sync
07-10 20:25:38.585 27794 27794 D MediaStoreMediaSource: onMediaStoreContentChanged() - Schedule single media sync
07-10 20:25:38.590  3835  8775 D MediaScannerService: requestScanFile from {P:22979;U:10101}: /storage/emulated/0/Pictures/Twitter/IMG_20190710_202319.jpg, mimeType: null
07-10 20:25:38.589 22979 22979 W aze.filemanager: type=1400 audit(0.0:215457): avc: denied { read } for name="/" dev="rootfs" ino=1 scontext=u:r:untrusted_app:s0:c101,c256,c512,c768 tcontext=u:object_r:rootfs:s0 tclass=dir permissive=0
07-10 20:25:38.621   801  4591 W SurfaceFlinger: Attempting to set client state on removed layer: com.amaze.filemanager/com.amaze.filemanager.activities.MainActivity#1
07-10 20:25:38.621   801  4591 W SurfaceFlinger: Attempting to destroy on removed layer: com.amaze.filemanager/com.amaze.filemanager.activities.MainActivity#1
07-10 20:25:38.643   801  1351 W SurfaceFlinger: Attempting to set client state on removed layer: Dim Layer for - Task=49769#0
07-10 20:25:38.643   801  1351 W SurfaceFlinger: Attempting to destroy on removed layer: Dim Layer for - Task=49769#0
07-10 20:25:38.682  8073  8073 D MediaStoreMediaSource: syncMediaWithMediaStore() Single - Add [MediaStore/473288, /storage/emulated/0/Pictures/Twitter/Carpe take my energy.jpg]
07-10 20:25:38.683 27794 27814 W MediaStoreMediaSource: handleQueriedDataInMediaStore - file:/storage/emulated/0/Pictures/Twitter/Carpe take my energy.jpg is not existed
07-10 20:25:40.231   890  1045 E libc    : Access denied finding property "sys.thermal.para"
07-10 20:25:40.219   890   890 W thermal-engine: type=1400 audit(0.0:215458): avc: denied { read } for name="u:object_r:system_prop:s0" dev="tmpfs" ino=22778 scontext=u:r:thermal-engine:s0 tcontext=u:object_r:system_prop:s0 tclass=file permissive=0
07-10 20:25:40.267 22979 22979 W Glide   : Load failed for /storage/emulated/0/Pictures/Twitter/Carpe take my energy.jpg with size [105x105]
07-10 20:25:40.267 22979 22979 W Glide   : class com.bumptech.glide.load.engine.GlideException: Failed to load resource
07-10 20:25:40.267 22979 22979 W Glide   : There were 3 causes:
07-10 20:25:40.267 22979 22979 W Glide   : java.io.FileNotFoundException(/storage/emulated/0/Pictures/Twitter/Carpe take my energy.jpg (No such file or directory))
07-10 20:25:40.267 22979 22979 W Glide   : java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))
07-10 20:25:40.267 22979 22979 W Glide   : java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))
07-10 20:25:40.267 22979 22979 W Glide   :  call GlideException#logRootCauses(String) for more detail
07-10 20:25:40.267 22979 22979 W Glide   :   Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class java.io.InputStream, LOCAL
07-10 20:25:40.267 22979 22979 W Glide   : There was 1 cause:
07-10 20:25:40.267 22979 22979 W Glide   : java.io.FileNotFoundException(/storage/emulated/0/Pictures/Twitter/Carpe take my energy.jpg (No such file or directory))
07-10 20:25:40.267 22979 22979 W Glide   :  call GlideException#logRootCauses(String) for more detail
07-10 20:25:40.267 22979 22979 W Glide   :     Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetch failed
07-10 20:25:40.267 22979 22979 W Glide   : There was 1 cause:
07-10 20:25:40.267 22979 22979 W Glide   : java.io.FileNotFoundException(/storage/emulated/0/Pictures/Twitter/Carpe take my energy.jpg (No such file or directory))
07-10 20:25:40.267 22979 22979 W Glide   :  call GlideException#logRootCauses(String) for more detail
07-10 20:25:40.267 22979 22979 W Glide   :       Cause (1 of 1): class java.io.FileNotFoundException: /storage/emulated/0/Pictures/Twitter/Carpe take my energy.jpg (No such file or directory)
07-10 20:25:40.267 22979 22979 W Glide   :   Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.os.ParcelFileDescriptor, LOCAL
07-10 20:25:40.267 22979 22979 W Glide   : There was 1 cause:
07-10 20:25:40.267 22979 22979 W Glide   : java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))
07-10 20:25:40.267 22979 22979 W Glide   :  call GlideException#logRootCauses(String) for more detail
07-10 20:25:40.267 22979 22979 W Glide   :     Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetch failed
07-10 20:25:40.267 22979 22979 W Glide   : There was 1 cause:
07-10 20:25:40.267 22979 22979 W Glide   : java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))
07-10 20:25:40.267 22979 22979 W Glide   :  call GlideException#logRootCauses(String) for more detail
07-10 20:25:40.267 22979 22979 W Glide   :       Cause (1 of 1): class java.io.FileNotFoundException: open failed: ENOENT (No such file or directory)
07-10 20:25:40.267 22979 22979 W Glide   :   Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.content.res.AssetFileDescriptor, LOCAL
07-10 20:25:40.267 22979 22979 W Glide   : There was 1 cause:
07-10 20:25:40.267 22979 22979 W Glide   : java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))
07-10 20:25:40.267 22979 22979 W Glide   :  call GlideException#logRootCauses(String) for more detail
07-10 20:25:40.267 22979 22979 W Glide   :     Cause (1 of 1): class java.io.FileNotFoundException: open failed: ENOENT (No such file or directory)
07-10 20:25:40.274 22979 22979 I Glide   : Root cause (1 of 3)
07-10 20:25:40.274 22979 22979 I Glide   : java.io.FileNotFoundException: /storage/emulated/0/Pictures/Twitter/Carpe take my energy.jpg (No such file or directory)
07-10 20:25:40.274 22979 22979 I Glide   :  at java.io.FileInputStream.open0(Native Method)
07-10 20:25:40.274 22979 22979 I Glide   :  at java.io.FileInputStream.open(FileInputStream.java:231)
07-10 20:25:40.274 22979 22979 I Glide   :  at java.io.FileInputStream.<init>(FileInputStream.java:165)
07-10 20:25:40.274 22979 22979 I Glide   :  at java.io.FileInputStream.<init>(FileInputStream.java:112)
07-10 20:25:40.274 22979 22979 I Glide   :  at android.content.ContentResolver.openInputStream(ContentResolver.java:1058)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.data.StreamLocalUriFetcher.loadResourceFromUri(StreamLocalUriFetcher.java:85)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.data.StreamLocalUriFetcher.loadResource(StreamLocalUriFetcher.java:60)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.data.StreamLocalUriFetcher.loadResource(StreamLocalUriFetcher.java:15)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
07-10 20:25:40.274 22979 22979 I Glide   :  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
07-10 20:25:40.274 22979 22979 I Glide   :  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
07-10 20:25:40.274 22979 22979 I Glide   :  at java.lang.Thread.run(Thread.java:764)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
07-10 20:25:40.274 22979 22979 I Glide   : Root cause (2 of 3)
07-10 20:25:40.274 22979 22979 I Glide   : java.io.FileNotFoundException: open failed: ENOENT (No such file or directory)
07-10 20:25:40.274 22979 22979 I Glide   :  at android.os.ParcelFileDescriptor.openInternal(ParcelFileDescriptor.java:313)
07-10 20:25:40.274 22979 22979 I Glide   :  at android.os.ParcelFileDescriptor.open(ParcelFileDescriptor.java:211)
07-10 20:25:40.274 22979 22979 I Glide   :  at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1335)
07-10 20:25:40.274 22979 22979 I Glide   :  at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1263)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.data.FileDescriptorLocalUriFetcher.loadResource(FileDescriptorLocalUriFetcher.java:22)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.data.FileDescriptorLocalUriFetcher.loadResource(FileDescriptorLocalUriFetcher.java:14)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherFailed(DecodeJob.java:397)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.SourceGenerator.onLoadFailed(SourceGenerator.java:119)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:153)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:144)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:49)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
07-10 20:25:40.274 22979 22979 I Glide   :  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
07-10 20:25:40.274 22979 22979 I Glide   :  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
07-10 20:25:40.274 22979 22979 I Glide   :  at java.lang.Thread.run(Thread.java:764)
07-10 20:25:40.274 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
07-10 20:25:40.275 22979 22979 I Glide   : Root cause (3 of 3)
07-10 20:25:40.275 22979 22979 I Glide   : java.io.FileNotFoundException: open failed: ENOENT (No such file or directory)
07-10 20:25:40.275 22979 22979 I Glide   :  at android.os.ParcelFileDescriptor.openInternal(ParcelFileDescriptor.java:313)
07-10 20:25:40.275 22979 22979 I Glide   :  at android.os.ParcelFileDescriptor.open(ParcelFileDescriptor.java:211)
07-10 20:25:40.275 22979 22979 I Glide   :  at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1335)
07-10 20:25:40.275 22979 22979 I Glide   :  at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1263)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherFailed(DecodeJob.java:397)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.SourceGenerator.onLoadFailed(SourceGenerator.java:119)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:153)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:144)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:49)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherFailed(DecodeJob.java:397)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.SourceGenerator.onLoadFailed(SourceGenerator.java:119)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:153)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:144)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:49)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
07-10 20:25:40.275 22979 22979 I Glide   :  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
07-10 20:25:40.275 22979 22979 I Glide   :  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
07-10 20:25:40.275 22979 22979 I Glide   :  at java.lang.Thread.run(Thread.java:764)
07-10 20:25:40.275 22979 22979 I Glide   :  at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
07-10 20:25:40.294 22979 27951 D skia    : --- Failed to create image decoder with message 'unimplemented'
07-10 20:25:40.172  1355  1458 I chatty  : uid=1000(system) PowerManagerSer identical 9 lines
07-10 20:25:40.424  1355  1458 D AutomaticBrightnessController: setAmbientLux(0.0)
07-10 20:25:40.460  1355  8490 W NotificationService: Toast already killed. pkg=com.amaze.filemanager callback=android.app.ITransientNotification$Stub$Proxy@146928b
07-10 20:25:40.294 22979 27951 I chatty  : uid=10101(com.amaze.filemanager) glide-source-th identical 2 lines
07-10 20:25:40.294 22979 27951 D skia    : --- Failed to create image decoder with message 'unimplemented'

Looks like some kind of conflict with MediaStore classes I suspect?

I am having the same problem.

I have a Oneplus 5T with android version 8.1.

I believe this is happening only with specific file types.

For example if i try to rename a "test.jpg" to "test1.jpg" the file gets deleted but it does not happened with .txt files.

I will try to post a logcat when i get time.

I can also duplicate this problem on a One Plus 6T with Android 9. It's the same behavior as @rfilmyer was describing: image files saved from a web browser.

EDIT: I created an image using an Android image editor app, saved it, closed the app, went to Amaze, and tried to rename it. Just like images downloaded from the internet, the newly created image disappears.

Found something interesting. When you put an image in a folder next to, or in a subfolder under, a .nomedia file, you can safely rename the image without issue. So here's what the structure looked like in my test:

Pictures/
   test1/
      Image0.png
   test2/
      Image0.png
      .nomedia

Renaming Pictures/test1/Image0.png caused it to be deleted. Renaming Pictures/test2/Image0.png allowed the rename to occur and the file to remain intact.

I'm thinking the MediaScannerService referenced in @rfilmyer's logs is putting a lock on images, and when renameTo is called on the file, the lock prevents the file from being moved/renamed. When the .nomedia file is present, the service ignores everything in and below that directory, which means no lock, which means renameTo works fine.

My only problem with that theory is that .mp3 files, which MediaScannerService also looks for, don't suffer from this problem. I don't know why that is.

EDIT: Maybe related to #1478?

Tried reproducing the error on v3.4.3 running on OnePlus 7t Pro with Oxygen OS 10.3

  1. Downloaded an image from twitter saved it.
  2. Renamed the image in location /storage/emulated/0/Pictures/Twitter
  3. Renamed Successful also did a refresh it was successful.
  4. Tried adding special characters (_,-) as well as with space in the name of the file but it was successful.
  5. Downloaded text file and renamed it similar to #4, but it was successful.

Tried reproducing the error on v3.4.3 running on OnePlus 7t Pro with Oxygen OS 10.3

  1. Downloaded an image from twitter saved it.
  2. Renamed the image in location /storage/emulated/0/Pictures/Twitter
  3. Renamed Successful also did a refresh it was successful.
  4. Tried adding special characters (_,-) as well as with space in the name of the file but it was successful.
  5. Downloaded text file and renamed it similar to #4, but it was successful.

@VishalNehra any comments on this ?

I'll also attempt to replicate. Thanks for pinging this again.

I have also updated to OxygenOS 10 and am unable to replicate.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

bowiechen picture bowiechen  Â·  3Comments

EmmanuelMess picture EmmanuelMess  Â·  3Comments

staltz picture staltz  Â·  3Comments

mueller-ma picture mueller-ma  Â·  5Comments

marmistrz picture marmistrz  Â·  3Comments