Windows path uses backward slashes. Also, the executable name has a .exe extension in it. While creating log files, we use the program name to create log file names. It feels a little odd to have log file names like ovsdb-server.exe.log etc. Using _splitpath_s() is a way to have same log file names on both windows and linux platforms.
Signed-off-by: Gurucharan Shetty <gshe...@nicira.com> --- lib/util.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/lib/util.c b/lib/util.c index 984ab45..0ebf085 100644 --- a/lib/util.c +++ b/lib/util.c @@ -373,11 +373,18 @@ void set_program_name__(const char *argv0, const char *version, const char *date, const char *time) { +#ifdef _WIN32 + char *basename; + size_t max_len = strlen(argv0) + 1; + basename = xmalloc(max_len); + _splitpath_s(argv0, NULL, 0, NULL, 0, basename, max_len, NULL, 0); + assert_single_threaded(); + program_name = basename; +#else const char *slash = strrchr(argv0, '/'); - assert_single_threaded(); - program_name = slash ? slash + 1 : argv0; +#endif free(program_version); -- 1.7.9.5 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev