Skip to content
Snippets Groups Projects
Commit fa6b8f8c authored by Dmitry Simonenko's avatar Dmitry Simonenko
Browse files

gh-185: add slash separator for pathes that are relative from work_dir.

closes #185.
parent 1dc8a656
No related branches found
No related tags found
No related merge requests found
......@@ -139,31 +139,37 @@ int main(int argc, char *argv[])
return 1;
}
char cur_dir_snap[PATH_MAX], cur_dir_wal[PATH_MAX];
tss.snap_dir = cur_dir_snap;
tss.wal_dir = cur_dir_wal;
char workdir[PATH_MAX];
char snapdir[PATH_MAX], waldir[PATH_MAX];
tss.snap_dir = snapdir;
tss.wal_dir = waldir;
if (tss.opts.cfg.work_dir != NULL)
snprintf(workdir, sizeof(workdir), "%s", tss.opts.cfg.work_dir);
else
getcwd(workdir, PATH_MAX);
if (tss.opts.cfg.work_dir != NULL) {
strncpy((char *)tss.snap_dir, tss.opts.cfg.work_dir, PATH_MAX);
strncpy((char *)tss.wal_dir, tss.opts.cfg.work_dir, PATH_MAX);
} else {
getcwd((char *)tss.snap_dir, PATH_MAX);
getcwd((char *)tss.wal_dir, PATH_MAX);
}
if (tss.opts.cfg.snap_dir != NULL) {
if (tss.opts.cfg.snap_dir[0] == '/')
tss.snap_dir = tss.opts.cfg.snap_dir;
else
strncat((char *)tss.snap_dir, tss.opts.cfg.snap_dir,
PATH_MAX);
else {
snprintf(snapdir, sizeof(snapdir), "%s/%s", workdir,
tss.opts.cfg.snap_dir);
}
} else {
snprintf(snapdir, sizeof(snapdir), "%s", workdir);
}
if (tss.opts.cfg.wal_dir != NULL) {
if (tss.opts.cfg.wal_dir[0] == '/')
tss.wal_dir = tss.opts.cfg.wal_dir;
else
strncat((char *)tss.wal_dir, tss.opts.cfg.wal_dir,
PATH_MAX);
snprintf(waldir, sizeof(waldir), "%s/%s", workdir,
tss.opts.cfg.wal_dir);
} else {
snprintf(waldir, sizeof(waldir), "%s", workdir);
}
/* create spaces */
rc = ts_space_init(&tss.s);
if (rc == -1) {
......
......@@ -238,6 +238,8 @@ int ts_space_fillof(struct ts_spaces *s, int n, tarantool_cfg_space *cs)
int ts_space_fill(struct ts_spaces *s, struct ts_options *opts)
{
if (opts->cfg.space == NULL)
return 0;
int i = 0;
for (; opts->cfg.space[i]; i++) {
tarantool_cfg_space *cs = opts->cfg.space[i];
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment