Skip to content

Commit 4bdd551

Browse files
committed
better input validation for bookmarks dialog. fixes #4337, #4336, #4335 & #4334
1 parent 5cb924a commit 4bdd551

2 files changed

Lines changed: 13 additions & 2 deletions

File tree

app/src/main/java/com/amaze/filemanager/ui/fragments/preferencefragments/BookmarksPrefsFragment.kt

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ class BookmarksPrefsFragment : BasePrefsFragment() {
152152
path: String,
153153
): Pair<Boolean, Int> {
154154
return when {
155-
name.isEmpty() -> Pair(false, R.string.invalid_name)
155+
name.isEmpty() || path.isEmpty() -> Pair(false, R.string.invalid_name)
156156
dataUtils.containsBooks(arrayOf(name, path)) != -1 -> Pair(false, R.string.bookmark_exists)
157157
!FileUtils.isPathAccessible(path, activity.prefs) -> Pair(false, R.string.ftp_path_change_error_invalid)
158158
else -> Pair(true, 0)
@@ -190,6 +190,17 @@ class BookmarksPrefsFragment : BasePrefsFragment() {
190190
.setOnClickListener {
191191
val oldName = p.title.toString()
192192
val oldPath = p.summary.toString()
193+
194+
val result = isValidBookmark(editText1.text.toString(), editText2.text.toString())
195+
if (!result.first) {
196+
Toast.makeText(
197+
requireContext(),
198+
requireContext().getString(result.second),
199+
Toast.LENGTH_SHORT,
200+
).show()
201+
return@setOnClickListener
202+
}
203+
193204
dataUtils.removeBook(position[p]!!)
194205
position.remove(p)
195206
bookmarksList?.removePreference(p)

app/src/main/java/com/amaze/filemanager/utils/DataUtils.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ int contains(String[] a, ArrayList<String[]> b) {
174174
if (b == null) return -1;
175175
int i = 0;
176176
for (String[] x : b) {
177-
if (x[0].equals(a[0]) && x[1].equals(a[1])) return i;
177+
if (x[0].equals(a[0]) || x[1].equals(a[1])) return i;
178178
i++;
179179
}
180180
return -1;

0 commit comments

Comments
 (0)