1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
From 3d7fa24ca267e333d7406eff38ec02b519110ecc Mon Sep 17 00:00:00 2001
From: Iain Nicol <iainn@src.gnome.org>
Date: Sun, 29 May 2011 21:50:58 +0000
Subject: Pointer arithmetic fixes for end of string access
[bug #651416]
---
diff --git a/src/fr-command-7z.c b/src/fr-command-7z.c
index 3f66338..5e505fa 100644
--- a/src/fr-command-7z.c
+++ b/src/fr-command-7z.c
@@ -158,7 +158,7 @@ list__process_line (char *line,
fdata->original_path = g_strdup (fields[1]);
fdata->full_path = g_strconcat ((fdata->original_path[0] != '/') ? "/" : "",
fdata->original_path,
- (fdata->dir && (fdata->original_path[strlen (fdata->original_path - 1)] != '/')) ? "/" : "",
+ (fdata->dir && (fdata->original_path[strlen (fdata->original_path) - 1] != '/')) ? "/" : "",
NULL);
}
else if (strcmp (fields[0], "Folder") == 0) {
diff --git a/src/fr-window.c b/src/fr-window.c
index 743c8fe..db8c8c6 100644
--- a/src/fr-window.c
+++ b/src/fr-window.c
@@ -1236,7 +1236,7 @@ fr_window_dir_exists_in_archive (FrWindow *window,
return TRUE;
}
else if (fdata->dir
- && (fdata->full_path[strlen (fdata->full_path)] != '/')
+ && (fdata->full_path[strlen (fdata->full_path) - 1] != '/')
&& (strncmp (dir_name, fdata->full_path, dir_name_len - 1) == 0))
{
return TRUE;
--
cgit v0.9
|