0.4.2 - Fixed issue with photo upload streams

This commit is contained in:
2025-08-17 00:57:48 -06:00
parent 183957c1e8
commit 9eaa4e40ae
2 changed files with 27 additions and 35 deletions

View File

@@ -14,8 +14,8 @@ android {
applicationId = "com.atridad.openclimb" applicationId = "com.atridad.openclimb"
minSdk = 31 minSdk = 31
targetSdk = 35 targetSdk = 35
versionCode = 8 versionCode = 9
versionName = "0.4.1" versionName = "0.4.2"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
} }

View File

@@ -35,18 +35,11 @@ object ImageUtils {
*/ */
fun saveImageFromUri(context: Context, imageUri: Uri): String? { fun saveImageFromUri(context: Context, imageUri: Uri): String? {
return try { return try {
val inputStream = context.contentResolver.openInputStream(imageUri) // Decode bitmap from a fresh stream to avoid mark/reset dependency
inputStream?.use { input -> val originalBitmap = context.contentResolver.openInputStream(imageUri)?.use { input ->
// Decode with options to get EXIF data BitmapFactory.decodeStream(input)
val options = BitmapFactory.Options().apply { } ?: return null
inJustDecodeBounds = true
}
input.reset()
BitmapFactory.decodeStream(input, null, options)
// Reset stream and decode with proper orientation
input.reset()
val originalBitmap = BitmapFactory.decodeStream(input)
val orientedBitmap = correctImageOrientation(context, imageUri, originalBitmap) val orientedBitmap = correctImageOrientation(context, imageUri, originalBitmap)
val compressedBitmap = compressImage(orientedBitmap) val compressedBitmap = compressImage(orientedBitmap)
@@ -68,7 +61,6 @@ object ImageUtils {
// Return relative path // Return relative path
"$IMAGES_DIR/$filename" "$IMAGES_DIR/$filename"
}
} catch (e: Exception) { } catch (e: Exception) {
e.printStackTrace() e.printStackTrace()
null null