-/* $Id: main.c,v 1.102 2003-03-04 23:30:20 adam Exp $
+/* $Id: main.c,v 1.103 2003-03-25 19:56:01 adam Exp $
Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002
Index Data Aps
}
else if (!strcmp (arg, "clean"))
{
- assert (!"todo");
+ zebra_clean (zh);
}
else if (!strcmp (arg, "stat") || !strcmp (arg, "status"))
{
-/* $Id: trav.c,v 1.41 2002-09-03 11:44:54 adam Exp $
+/* $Id: trav.c,v 1.42 2003-03-25 19:56:01 adam Exp $
Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002
Index Data Aps
void repositoryDelete (ZebraHandle zh)
{
- repositoryExtractG (zh, 1, &zh->rGroup);
+ struct recordGroup *rGroup = &zh->rGroup;
+ groupRes (zh, rGroup);
+ assert (rGroup->path);
+ repositoryExtractG (zh, 1, rGroup);
}
-/* $Id: zebraapi.c,v 1.93 2003-03-13 04:25:17 pop Exp $
+/* $Id: zebraapi.c,v 1.94 2003-03-25 19:56:01 adam Exp $
Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003
Index Data Aps
repositoryShow (zh);
}
-int zebra_commit (ZebraHandle zh)
+static int zebra_commit_ex (ZebraHandle zh, int clean_only)
{
int seqno;
char val;
bf_cache (bfs, rval);
if (bf_commitExists (bfs))
{
- zebra_set_state (zh, 'c', seqno);
-
- logf (LOG_LOG, "commit start");
- bf_commitExec (bfs);
+ if (clean_only)
+ zebra_set_state (zh, 'd', seqno);
+ else
+ {
+ zebra_set_state (zh, 'c', seqno);
+
+ logf (LOG_LOG, "commit start");
+ bf_commitExec (bfs);
#ifndef WIN32
- sync ();
+ sync ();
#endif
+ }
logf (LOG_LOG, "commit clean");
bf_commitClean (bfs, rval);
seqno++;
return 0;
}
+int zebra_clean (ZebraHandle zh)
+{
+ zebra_commit_ex(zh, 1);
+}
+
+int zebra_commit (ZebraHandle zh)
+{
+ zebra_commit_ex(zh, 0);
+}
+
int zebra_init (ZebraHandle zh)
{
const char *rval;