Skip to content

Commit 888820b

Browse files
hg42machiav3lli
authored andcommitted
make all properties optional, which allows compatibility with older backups (e.g. when it was without media, or without iv)
1 parent 62aa8cc commit 888820b

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

app/src/main/java/com/machiav3lli/backup/items/BackupProperties.kt

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -36,15 +36,15 @@ open class BackupProperties : AppMetaInfo, Parcelable {
3636
@Serializable(with = LocalDateTimeSerializer::class)
3737
var backupDate: LocalDateTime? = null
3838
private set
39-
val hasApk: Boolean
40-
val hasAppData: Boolean
41-
val hasDevicesProtectedData: Boolean
42-
val hasExternalData: Boolean
43-
val hasObbData: Boolean
44-
val hasMediaData: Boolean
39+
var hasApk: Boolean = false
40+
var hasAppData: Boolean = false
41+
var hasDevicesProtectedData: Boolean = false
42+
var hasExternalData: Boolean = false
43+
var hasObbData: Boolean = false
44+
var hasMediaData: Boolean = false
4545
var cipherType: String? = null
46-
val iv: ByteArray?
47-
val cpuArch: String?
46+
var iv: ByteArray? = null
47+
var cpuArch: String? = null
4848

4949
fun getBackupDir(appBackupDir: StorageFile?): StorageFile? =
5050
appBackupDir?.findFile(backupFolderName)
@@ -141,8 +141,9 @@ open class BackupProperties : AppMetaInfo, Parcelable {
141141
hasObbData = source.readByte().toInt() != 0
142142
hasMediaData = source.readByte().toInt() != 0
143143
cipherType = source.readString()
144-
iv = ByteArray(Cipher.getInstance(cipherType).blockSize)
145-
source.readByteArray(iv)
144+
iv = ByteArray(Cipher.getInstance(cipherType).blockSize).also {
145+
source.readByteArray(it)
146+
}
146147
cpuArch = source.readString()
147148
}
148149

0 commit comments

Comments
 (0)