From f52cfa5607fcd2362436e07348f692d71dad56cd Mon Sep 17 00:00:00 2001 From: "Andrew V. Samoilov" Date: Wed, 30 May 2001 12:05:50 +0000 Subject: [PATCH] 2001-05-30 Ludovic Drolez * sfs.c (sfs_init): Don't hardcode location of sfs.ini, use mc_home to make mc relocatable. --- vfs/ChangeLog | 5 +++++ vfs/sfs.c | 18 ++++++++++++------ 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/vfs/ChangeLog b/vfs/ChangeLog index 4d2aa899b..d2930dc84 100644 --- a/vfs/ChangeLog +++ b/vfs/ChangeLog @@ -1,3 +1,8 @@ +2001-05-30 Ludovic Drolez + + * sfs.c (sfs_init): Don't hardcode location of sfs.ini, + use mc_home to make mc relocatable. + 2001-05-28 Andrew V. Samoilov * sfs.c (shell): Variable moved to ... diff --git a/vfs/sfs.c b/vfs/sfs.c index 702b14dd8..2d85f9ce4 100644 --- a/vfs/sfs.c +++ b/vfs/sfs.c @@ -291,20 +291,26 @@ static int sfs_ungetlocalcopy (vfs *me, char *path, char *local, int has_changed static int sfs_init (vfs *me) { - FILE *cfg = fopen (LIBDIR "extfs/sfs.ini", "r"); + char *mc_sfsini; + FILE *cfg; + + mc_sfsini = concat_dir_and_file (mc_home, "extfs/sfs.ini"); + cfg = fopen (mc_sfsini, "r"); if (!cfg){ - fprintf (stderr, _("Warning: %sextfs/sfs.ini not found\n"), LIBDIR); - return 0; + fprintf (stderr, _("Warning: %s not found\n"), mc_sfsini); + free (mc_sfsini); + return 0; } + free (mc_sfsini); sfs_no = 0; while (sfs_no < MAXFS){ - char key[256]; + char key[256]; char *c, *semi = NULL, flags = 0; int i; - if (!fgets (key, 250, cfg)) + if (!fgets (key, sizeof (key), cfg)) break; if (*key == '#') @@ -326,7 +332,7 @@ static int sfs_init (vfs *me) } c = semi + 1; - while ((*c != ' ') && (*c != 9)) { + while ((*c != ' ') && (*c != '\t')) { switch (*c) { case '1': flags |= F_1; break; case '2': flags |= F_2; break;