X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=bfile%2Fbfile.c;h=a160f132f527d4b67c9125ba42f84a05f7aa6004;hb=805db1945539e97bd09b17d91eefc8eeb1652213;hp=85b01bb769eba878a6096ea38340d0f8e69fb543;hpb=bc1fc7bc062889d184f91a501156c6698011fefb;p=idzebra-moved-to-github.git diff --git a/bfile/bfile.c b/bfile/bfile.c index 85b01bb..a160f13 100644 --- a/bfile/bfile.c +++ b/bfile/bfile.c @@ -4,7 +4,14 @@ * Sebastian Hammer, Adam Dickmeiss * * $Log: bfile.c,v $ - * Revision 1.16 1995-12-08 16:21:13 adam + * Revision 1.18 1996-01-02 08:59:06 quinn + * Changed "commit" setting to "shadow". + * + * Revision 1.17 1995/12/11 09:03:51 adam + * New function: cf_unlink. + * New member of commit file head: state (0) deleted, (1) hash file. + * + * Revision 1.16 1995/12/08 16:21:13 adam * Work on commit/update. * * Revision 1.15 1995/12/01 16:24:28 adam @@ -67,11 +74,11 @@ void bf_cache (int enableFlag) if (enableFlag) { if (!commit_area) - if (res_get (common_resource, "commit")) - commit_area = mf_init ("commit"); + if (res_get (common_resource, "shadow")) + commit_area = mf_init ("shadow"); else { - logf (LOG_FATAL, "Commit area must be defined if commit" + logf (LOG_FATAL, "Shadow area must be defined if commit" "is to be enabled"); exit (1); } @@ -188,18 +195,27 @@ void bf_commitClean (void) char path[256]; MFile mf; CFile cf; + int mustDisable = 0; + int firstTime; + + if (!commit_area) + { + bf_cache (1); + mustDisable = 1; + } - assert (commit_area); if (!(inf = fopen ("cache", "r"))) return ; while (fscanf (inf, "%s %d", path, &block_size) == 2) { mf = mf_open (0, path, block_size, 0); - cf = cf_open (mf, commit_area, path, block_size, 1, NULL); - + cf = cf_open (mf, commit_area, path, block_size, 1, &firstTime); + cf_unlink (cf); cf_close (cf); mf_close (mf); } fclose (inf); unlink ("cache"); + if (mustDisable) + bf_cache (0); }