X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=bfile%2Fmfile.c;h=6dd5fa1e512685841c249c5d34f6b38b596f318c;hb=66754808c6d7f236dac6c6d6ab50d1ad976cfacc;hp=78528ff83ae48910a88ccc01ad2e34678e7f4ab2;hpb=90a8309f2165abe2cd76e096837d886cc9fe89fb;p=idzebra-moved-to-github.git diff --git a/bfile/mfile.c b/bfile/mfile.c index 78528ff..6dd5fa1 100644 --- a/bfile/mfile.c +++ b/bfile/mfile.c @@ -4,7 +4,19 @@ * Sebastian Hammer, Adam Dickmeiss * * $Log: mfile.c,v $ - * Revision 1.13 1995-11-30 17:00:50 adam + * Revision 1.17 1996-03-20 13:29:11 quinn + * Bug-fix + * + * Revision 1.16 1995/12/12 15:57:57 adam + * Implemented mf_unlink. cf_unlink uses mf_unlink. + * + * Revision 1.15 1995/12/08 16:21:14 adam + * Work on commit/update. + * + * Revision 1.14 1995/12/05 13:12:37 quinn + * Added + * + * Revision 1.13 1995/11/30 17:00:50 adam * Several bug fixes. Commit system runs now. * * Revision 1.12 1995/11/24 17:26:11 quinn @@ -58,6 +70,7 @@ #include #include #include +#include #include #include @@ -167,7 +180,8 @@ MFile_area mf_init(const char *name) logf (LOG_DEBUG, "mf_init(%s)", name); for (mp = open_areas; mp; mp = mp->next) if (!strcmp(name, mp->name)) - abort(); + return mp; + ma = xmalloc(sizeof(MFile_area_struct)); strcpy(ma->name, name); ma->next = open_areas; open_areas = ma; @@ -391,7 +405,6 @@ int mf_write(MFile mf, int no, int offset, int num, const void *buf) /* file needs to grow */ while (ps >= mf->files[mf->cur_file].blocks) { - logf (LOG_DEBUG, "File grows"); /* file overflow - allocate new file */ if (mf->files[mf->cur_file].dir->max_bytes >= 0 && (ps - mf->files[mf->cur_file].blocks + 1) * mf->blocksize > @@ -469,7 +482,10 @@ int mf_write(MFile mf, int no, int offset, int num, const void *buf) */ int mf_unlink(MFile mf) { - abort(); + int i; + + for (i = 0; i < mf->no_files; i++) + unlink (mf->files[i].path); return 0; }