From 0a4bcc57f5d0f319f72f751c4406ca1877401b63 Mon Sep 17 00:00:00 2001 From: Diogenes Molinares Date: Thu, 18 Jun 2020 16:19:31 +0200 Subject: Avoid destination's file outside repository (#861) --- .../main/java/com/zeapo/pwdstore/crypto/PasswordCreationActivity.kt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'app/src/main/java/com/zeapo/pwdstore/crypto') diff --git a/app/src/main/java/com/zeapo/pwdstore/crypto/PasswordCreationActivity.kt b/app/src/main/java/com/zeapo/pwdstore/crypto/PasswordCreationActivity.kt index 1fdeafe9..c34d1a8a 100644 --- a/app/src/main/java/com/zeapo/pwdstore/crypto/PasswordCreationActivity.kt +++ b/app/src/main/java/com/zeapo/pwdstore/crypto/PasswordCreationActivity.kt @@ -18,6 +18,7 @@ import androidx.lifecycle.lifecycleScope import com.github.ajalt.timberkt.e import com.google.android.material.dialog.MaterialAlertDialogBuilder import com.zeapo.pwdstore.PasswordEntry +import com.zeapo.pwdstore.utils.isInsideRepository import com.zeapo.pwdstore.R import com.zeapo.pwdstore.autofill.oreo.AutofillPreferences import com.zeapo.pwdstore.autofill.oreo.DirectoryStructure @@ -235,6 +236,11 @@ class PasswordCreationActivity : BasePgpActivity(), OpenPgpServiceConnection.OnB snackbar(message = getString(R.string.password_creation_duplicate_error)) return@executeApiAsync } + + if (!isInsideRepository(file)) { + snackbar(message = getString(R.string.message_error_destination_outside_repo)) + return@executeApiAsync + } try { file.outputStream().use { it.write(outputStream.toByteArray()) -- cgit v1.2.3