File search_path_fix.patch of Package fusesmb
Index: fusesmb-0.8.7/fusesmb.c
===================================================================
--- fusesmb-0.8.7.orig/fusesmb.c 2007-09-07 02:02:44.000000000 +0200
+++ fusesmb-0.8.7/fusesmb.c 2007-11-05 16:06:04.000000000 +0100
@@ -181,7 +181,7 @@ static void *smb_purge_thread(void *data
}
else if (time(NULL) - st.st_mtime > opts.global_interval * 60)
{
- system("fusesmb.cache");
+ system(fusesmb_cache_bin);
}
}
@@ -1069,13 +1069,12 @@ int main(int argc, char *argv[])
we're looking in FUSESMB_CACHE_BINDIR, $PATH or in cwd */
if (-1 == stat(FUSESMB_CACHE_BINDIR"/fusesmb.cache", &st))
{
- if (-1 == stat("fusesmb.cache", &st))
+ if (0 != system("which fusesmb.cache > /dev/null 2>&1"))
{
fprintf(stderr, "Could not find the required file fusesmb.cache.\n"
"This file should either be in:\n"
" - "FUSESMB_CACHE_BINDIR"\n"
" - $PATH\n"
- " - your current working directory\n"
"(%s)\n", strerror(errno));
exit(EXIT_FAILURE);
}