Skip to content

Commit 66c1733

Browse files
authored
r.geomorphon: rename variable 'dirname' (#6632)
The name is conflicting with the namesake of POSIX's function, causing segmentation fault on some systems. Closes #3731
1 parent 3999ef4 commit 66c1733

File tree

3 files changed

+12
-11
lines changed

3 files changed

+12
-11
lines changed

raster/r.geomorphon/local_proto.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ const char *form_long_name(const FORMS);
8686

8787
/* pattern */
8888
int calc_pattern(PATTERN *pattern, int row, int cur_row, int col, const int);
89-
extern const char *dirname[];
89+
extern const char *direction_name[];
9090

9191
/* geom */
9292
void generate_ternary_codes(void);

raster/r.geomorphon/pattern.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
* 5|6|7 */
77
static int nextr[NUM_DIRS] = {-1, -1, -1, 0, 1, 1, 1, 0};
88
static int nextc[NUM_DIRS] = {1, 0, -1, -1, -1, 0, 1, 1};
9-
const char *dirname[NUM_DIRS] = {"NE", "N", "NW", "W", "SW", "S", "SE", "E"};
9+
const char *direction_name[NUM_DIRS] = {"NE", "N", "NW", "W",
10+
"SW", "S", "SE", "E"};
1011

1112
/*
1213
* A more thorough comparison using a few factors of different priority
@@ -125,7 +126,7 @@ int calc_pattern(PATTERN *pattern, int row, int cur_row, int col,
125126
zenith_easting = nadir_easting = target_easting;
126127
pattern->e[i] = cur_easting;
127128
pattern->n[i] = cur_northing;
128-
prof_sso(dirname[i]);
129+
prof_sso(direction_name[i]);
129130
}
130131
while (cur_distance < search_distance) {
131132
if (cur_row + j * nextr[i] < 0 ||

raster/r.geomorphon/profile.c

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -145,42 +145,42 @@ void prof_pattern(const double o_elevation, const PATTERN *p)
145145

146146
prof_sso("pattern");
147147
for (i = 0; i < NUM_DIRS; i++)
148-
prof_int(dirname[i], p->pattern[i]);
148+
prof_int(direction_name[i], p->pattern[i]);
149149
prof_eso();
150150

151151
prof_sso("rel_elevation_m");
152152
for (i = 0; i < NUM_DIRS; i++)
153-
prof_mtr(dirname[i], p->elevation[i]);
153+
prof_mtr(direction_name[i], p->elevation[i]);
154154
prof_eso();
155155

156156
prof_sso("abs_elevation_m");
157157
for (i = 0; i < NUM_DIRS; i++)
158-
prof_mtr(dirname[i], o_elevation + p->elevation[i]);
158+
prof_mtr(direction_name[i], o_elevation + p->elevation[i]);
159159
prof_eso();
160160

161161
prof_sso("distance_m");
162162
for (i = 0; i < NUM_DIRS; i++)
163-
prof_mtr(dirname[i], p->distance[i]);
163+
prof_mtr(direction_name[i], p->distance[i]);
164164
prof_eso();
165165

166166
prof_sso("offset_easting_m");
167167
for (i = 0; i < NUM_DIRS; i++)
168-
prof_mtr(dirname[i], p->x[i]);
168+
prof_mtr(direction_name[i], p->x[i]);
169169
prof_eso();
170170

171171
prof_sso("offset_northing_m");
172172
for (i = 0; i < NUM_DIRS; i++)
173-
prof_mtr(dirname[i], p->y[i]);
173+
prof_mtr(direction_name[i], p->y[i]);
174174
prof_eso();
175175

176176
prof_sso("easting");
177177
for (i = 0; i < NUM_DIRS; i++)
178-
prof_dbl(dirname[i], p->e[i]);
178+
prof_dbl(direction_name[i], p->e[i]);
179179
prof_eso();
180180

181181
prof_sso("northing");
182182
for (i = 0; i < NUM_DIRS; i++)
183-
prof_dbl(dirname[i], p->n[i]);
183+
prof_dbl(direction_name[i], p->n[i]);
184184
prof_eso();
185185
}
186186

0 commit comments

Comments
 (0)