Always request write permission when updating existing file on 30+
A casual file output stream was needed to fix the file size update issue
This commit is contained in:
parent
89a8902bc4
commit
2131cb79d3
2 changed files with 11 additions and 9 deletions
|
@ -873,6 +873,10 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
|
|||
ensureBackgroundThread {
|
||||
val file = File(path)
|
||||
val fileDirItem = FileDirItem(path, path.getFilenameFromPath())
|
||||
try {
|
||||
val out = FileOutputStream(file)
|
||||
saveBitmap(file, bitmap, out, showSavingToast)
|
||||
} catch (e: Exception) {
|
||||
getFileOutputStream(fileDirItem, true) {
|
||||
if (it != null) {
|
||||
saveBitmap(file, bitmap, it, showSavingToast)
|
||||
|
@ -881,6 +885,7 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
showErrorToast(e)
|
||||
} catch (e: OutOfMemoryError) {
|
||||
|
|
|
@ -78,10 +78,7 @@ class SaveAsDialog(
|
|||
if (activity.getDoesFilePathExist(newPath)) {
|
||||
val title = String.format(activity.getString(R.string.file_already_exists_overwrite), newFilename)
|
||||
ConfirmationDialog(activity, title) {
|
||||
val newFile = File(newPath)
|
||||
val isInDownloadDir = activity.isInDownloadDir(newPath)
|
||||
val isInSubFolderInDownloadDir = activity.isInSubFolderInDownloadDir(newPath)
|
||||
if ((isRPlus() && !isExternalStorageManager()) && isInDownloadDir && !isInSubFolderInDownloadDir && !newFile.canWrite()) {
|
||||
if ((isRPlus() && !isExternalStorageManager())) {
|
||||
val fileDirItem = arrayListOf(File(newPath).toFileDirItem(activity))
|
||||
val fileUris = activity.getFileUrisFromFileDirItems(fileDirItem)
|
||||
activity.updateSDK30Uris(fileUris) { success ->
|
||||
|
|
Loading…
Reference in a new issue