File tree Expand file tree Collapse file tree 1 file changed +16
-2
lines changed
Expand file tree Collapse file tree 1 file changed +16
-2
lines changed Original file line number Diff line number Diff line change @@ -38,6 +38,20 @@ struct test_data {
3838 const char * alternative ; /* output: ... or this. */
3939};
4040
41+ /*
42+ * Compatibility wrappers for OpenBSD, whose basename(3) and dirname(3)
43+ * have const parameters.
44+ */
45+ static char * posix_basename (char * path )
46+ {
47+ return basename (path );
48+ }
49+
50+ static char * posix_dirname (char * path )
51+ {
52+ return dirname (path );
53+ }
54+
4155static int test_function (struct test_data * data , char * (* func )(char * input ),
4256 const char * funcname )
4357{
@@ -251,10 +265,10 @@ int cmd_main(int argc, const char **argv)
251265 }
252266
253267 if (argc == 2 && !strcmp (argv [1 ], "basename" ))
254- return test_function (basename_data , basename , argv [1 ]);
268+ return test_function (basename_data , posix_basename , argv [1 ]);
255269
256270 if (argc == 2 && !strcmp (argv [1 ], "dirname" ))
257- return test_function (dirname_data , dirname , argv [1 ]);
271+ return test_function (dirname_data , posix_dirname , argv [1 ]);
258272
259273 fprintf (stderr , "%s: unknown function name: %s\n" , argv [0 ],
260274 argv [1 ] ? argv [1 ] : "(there was none)" );
You can’t perform that action at this time.
0 commit comments