diff options
Diffstat (limited to 'meta/recipes-extended/which/which-2.18/fix_name_conflict_group_member.patch')
-rw-r--r-- | meta/recipes-extended/which/which-2.18/fix_name_conflict_group_member.patch | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/meta/recipes-extended/which/which-2.18/fix_name_conflict_group_member.patch b/meta/recipes-extended/which/which-2.18/fix_name_conflict_group_member.patch new file mode 100644 index 0000000000..568d4233fd --- /dev/null +++ b/meta/recipes-extended/which/which-2.18/fix_name_conflict_group_member.patch | |||
@@ -0,0 +1,51 @@ | |||
1 | # glibc also implements the function group_member. To avoid name conflict, | ||
2 | # here let us append a "_" to which's version. | ||
3 | # | ||
4 | # Signed-off-by Dexuan Cui <dexuan.cui@intel.com>, 2010-08-20 | ||
5 | # (this patch is licensed under GPLv2) | ||
6 | |||
7 | --- which-2.18/bash.c | ||
8 | +++ which-2.18/bash.c | ||
9 | @@ -45,7 +45,12 @@ | ||
10 | * - changed all occurences of 'gid_t' into 'GID_T'. | ||
11 | * - exported functions needed in which.c | ||
12 | */ | ||
13 | -static int group_member (GID_T gid); | ||
14 | + | ||
15 | +/* | ||
16 | + * glibc also implements the function group_member. To avoid name conflict, | ||
17 | + * here let us append a "_" to which's version. | ||
18 | + */ | ||
19 | +static int _group_member (GID_T gid); | ||
20 | static char* extract_colon_unit (char const* string, int *p_index); | ||
21 | |||
22 | /*=========================================================================== | ||
23 | @@ -200,8 +205,8 @@ | ||
24 | |||
25 | /* From bash-2.05b / general.c / line 805 */ | ||
26 | /* Return non-zero if GID is one that we have in our groups list. */ | ||
27 | -int | ||
28 | -group_member (GID_T gid) | ||
29 | +static int | ||
30 | +_group_member (GID_T gid) | ||
31 | { | ||
32 | #if defined (HAVE_GETGROUPS) | ||
33 | register int i; | ||
34 | @@ -290,7 +295,7 @@ | ||
35 | return (X_BIT (u_mode_bits (finfo.st_mode))) ? (FS_EXISTS | FS_EXECABLE) : FS_EXISTS; | ||
36 | |||
37 | /* Otherwise, if we are in the owning group, the group permissions apply. */ | ||
38 | - if (group_member (finfo.st_gid)) | ||
39 | + if (_group_member (finfo.st_gid)) | ||
40 | return (X_BIT (g_mode_bits (finfo.st_mode))) ? (FS_EXISTS | FS_EXECABLE) : FS_EXISTS; | ||
41 | |||
42 | /* Otherwise, if we are in the other group, the other permissions apply. */ | ||
43 | @@ -331,7 +336,7 @@ | ||
44 | /* Given a string containing units of information separated by colons, | ||
45 | return the next one pointed to by (P_INDEX), or NULL if there are no more. | ||
46 | Advance (P_INDEX) to the character after the colon. */ | ||
47 | -char* | ||
48 | +static char* | ||
49 | extract_colon_unit (char const* string, int* p_index) | ||
50 | { | ||
51 | int i, start, len; | ||