* Sebastian Hammer, Adam Dickmeiss
*
* $Log: mfile.c,v $
- * Revision 1.39 2000-05-05 13:48:03 adam
+ * Revision 1.40 2000-10-17 12:37:09 adam
+ * Fixed notification of live-updates. Fixed minor problem with mf_init
+ * where it didn't handle shadow area file names correctly.
+ *
+ * Revision 1.39 2000/05/05 13:48:03 adam
* Fixed locking for metafiles.
*
* Revision 1.38 2000/03/20 19:08:35 adam
/* look at each file */
while ((dent = readdir(dd)))
{
- if (*dent->d_name == '.')
- continue;
- if (sscanf(dent->d_name, "%[^-]-%d.mf", metaname, &number) != 2)
+ int len = strlen(dent->d_name);
+ const char *cp = strrchr (dent->d_name, '-');
+ if (strchr (".-", *dent->d_name))
+ continue;
+ if (len < 5 || !cp || strcmp (dent->d_name + len - 3, ".mf"))
{
- logf (LOG_DEBUG, "bf: %s is not a part-file.", dent->d_name);
- continue;
+ logf (LOG_WARN, "bf: %s is not a part-file.", dent->d_name);
+ continue;
}
+ number = atoi(cp+1);
+ memcpy (metaname, dent->d_name, cp - dent->d_name);
+ metaname[ cp - dent->d_name] = '\0';
+
for (meta_f = ma->mfiles; meta_f; meta_f = meta_f->next)
{
/* known metafile */