[gnome-bluetooth/wip/hadess/sendto-fixes: 2/3] sendto: Fix out of bounds access
- From: Bastien Nocera <hadess src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-bluetooth/wip/hadess/sendto-fixes: 2/3] sendto: Fix out of bounds access
- Date: Wed, 23 Feb 2022 13:10:36 +0000 (UTC)
commit 53fbc6f065e928db9a446e04de2c716027aac20d
Author: Jan Tojnar <jtojnar gmail com>
Date: Tue Feb 22 11:19:25 2022 +0100
sendto: Fix out of bounds access
When running `bluetooth-sendto` without arguments and selecting some files,
the app would try to access memory after the model list returned by gtk_file_chooser_get_files.
sendto/main.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
---
diff --git a/sendto/main.c b/sendto/main.c
index 42f2c749..2f36f592 100644
--- a/sendto/main.c
+++ b/sendto/main.c
@@ -706,13 +706,14 @@ show_select_dialog(void)
if (select_dialog_response == GTK_RESPONSE_ACCEPT) {
g_autoptr(GListModel) selected_files = NULL;
- int i;
+ guint i, n_items;
selected_files = gtk_file_chooser_get_files(GTK_FILE_CHOOSER(dialog));
+ n_items = g_list_model_get_n_items(selected_files);
- files = g_new(gchar *, g_list_model_get_n_items(selected_files) + 1);
+ files = g_new(gchar *, n_items + 1);
- for (i = 0; g_list_model_get_n_items(selected_files); i++) {
+ for (i = 0; i < n_items; i++) {
g_autoptr(GFile) file = g_list_model_get_item(selected_files, i);
files[i] = g_file_get_path(file);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]