-/* $Id: trav.c,v 1.47 2005-01-15 19:38:27 adam Exp $
+/* $Id: trav.c,v 1.51 2006-05-10 08:13:22 adam Exp $
Copyright (C) 1995-2005
Index Data ApS
#include <io.h>
#define S_ISREG(x) (x & _S_IFREG)
#define S_ISDIR(x) (x & _S_IFDIR)
-#else
+#endif
+#if HAVE_UNISTD_H
#include <unistd.h>
#endif
#include <direntz.h>
switch (e[i].kind)
{
case dirs_file:
- fileExtract (zh, NULL, rep, deleteFlag);
+ zebra_extract_file (zh, NULL, rep, deleteFlag);
break;
case dirs_dir:
repositoryExtractR (zh, deleteFlag, rep, level+1);
{
case dirs_file:
sprintf (tmppath, "%s%s", base, dst->path);
- fileExtract (zh, &dst->sysno, tmppath, 1);
+ zebra_extract_file (zh, &dst->sysno, tmppath, 1);
strcpy (tmppath, dst->path);
dst = dirs_read (di);
case dirs_file:
if (e_src[i_src].mtime > dst->mtime)
{
- if (fileExtract (zh, &dst->sysno, tmppath, 0))
+ if (zebra_extract_file (zh, &dst->sysno, tmppath, 0) == ZEBRA_OK)
{
dirs_add (di, src, dst->sysno, e_src[i_src].mtime);
}
switch (e_src[i_src].kind)
{
case dirs_file:
- if (fileExtract (zh, &sysno, tmppath, 0))
+ if (zebra_extract_file (zh, &sysno, tmppath, 0) == ZEBRA_OK)
dirs_add (di, src, sysno, e_src[i_src].mtime);
break;
case dirs_dir:
switch (dst->kind)
{
case dirs_file:
- fileExtract (zh, &dst->sysno, tmppath, 1);
+ zebra_extract_file (zh, &dst->sysno, tmppath, 1);
dirs_del (di, dst->path);
dst = dirs_read (di);
break;
else if (S_ISREG(sbuf.st_mode))
{
struct dirs_entry *e_dst;
- di = dirs_fopen (dict, src);
+ di = dirs_fopen (dict, src, zh->m_flag_rw);
e_dst = dirs_read (di);
if (e_dst)
{
if (sbuf.st_mtime > e_dst->mtime)
- if (fileExtract (zh, &e_dst->sysno, src, 0))
+ if (zebra_extract_file (zh, &e_dst->sysno, src, 0) == ZEBRA_OK)
dirs_add (di, src, e_dst->sysno, sbuf.st_mtime);
}
else
{
SYSNO sysno = 0;
- if (fileExtract (zh, &sysno, src, 0))
+ if (zebra_extract_file (zh, &sysno, src, 0) == ZEBRA_OK)
dirs_add (di, src, sysno, sbuf.st_mtime);
}
dirs_free (&di);
if (ret == -1)
yaz_log (YLOG_WARN|YLOG_ERRNO, "Cannot access path %s", src);
else if (S_ISREG(sbuf.st_mode))
- fileExtract (zh, NULL, src, deleteFlag);
+ zebra_extract_file (zh, NULL, src, deleteFlag);
else if (S_ISDIR(sbuf.st_mode))
repositoryExtractR (zh, deleteFlag, src, 0);
else
repositoryExtract (zh, deleteFlag, path);
}
+#if 0
+static int dump_file_dict_func(char *name, const char *info, int pos,
+ void *client)
+{
+ yaz_log(YLOG_LOG, "%s", name);
+ return 0;
+}
+static void dump_file_dict(Dict dict)
+{
+ int before = 10;
+ int after = 1000;
+ char term[1000];
+
+ strcpy(term, "0");
+ dict_scan (dict, term, &before, &after, 0, dump_file_dict_func);
+}
+#endif
+
void repositoryUpdate (ZebraHandle zh, const char *path)
{
assert (path);
}
else
fileUpdate (zh, dict, path);
+#if 0
+ dump_file_dict(dict);
+#endif
dict_close (dict);
+
}
else
repositoryExtractG (zh, path, 0);
repositoryExtractG (zh, path, 1);
}
+/*
+ * Local variables:
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ * vim: shiftwidth=4 tabstop=8 expandtab
+ */
+