Fix for mbsetup default JAM paths

This commit is contained in:
Michiel Broek 2002-11-10 14:54:43 +00:00
parent cf7948d309
commit e98e35e244
2 changed files with 38 additions and 11 deletions

View File

@ -52,6 +52,12 @@ v0.35.05 19-Oct-2002
Added length check when importing taglines. Added length check when importing taglines.
Now writes also ~/etc/msg.txt for MsgEd after messagebase is Now writes also ~/etc/msg.txt for MsgEd after messagebase is
updated. updated.
When a new echomail area was created with a default group
setting, then when the group was selected setup would create
the jam basepath itself instead of using the base from the
group.
New JAM areas will not have spaces anymore in the pathnames.
Spaces are replaced by underscores.
mbfido: mbfido:
With ticfile processing, the KeepDate setup setting now works. With ticfile processing, the KeepDate setup setting now works.

View File

@ -1156,19 +1156,40 @@ int EditMsgRec(int Area)
* Invent the place for the JAM message base. * Invent the place for the JAM message base.
*/ */
temp = calloc(PATH_MAX, sizeof(char)); temp = calloc(PATH_MAX, sizeof(char));
sprintf(temp, "%s/%s", msgs.Group, msgs.Tag); if (strlen(mgroup.BasePath)) {
for (i = 0; i < strlen(temp); i++) { sprintf(temp, "%s", msgs.Tag);
if (isupper(temp[i])) for (i = 0; i < strlen(temp); i++) {
temp[i] = tolower(temp[i]); if (isupper(temp[i]))
/* temp[i] = tolower(temp[i]);
* If dots in the group or area tag, replace them /*
* with directory slashes to create a group tree. * If dots in the group or area tag, replace them
*/ * with directory slashes to create a group tree.
if (temp[i] == '.') */
temp[i] = '/'; if (temp[i] == '.')
temp[i] = '/';
}
sprintf(msgs.Base, "%s/%s", mgroup.BasePath, temp);
} else {
sprintf(temp, "%s/%s", msgs.Group, msgs.Tag);
for (i = 0; i < strlen(temp); i++) {
if (isupper(temp[i]))
temp[i] = tolower(temp[i]);
/*
* If dots in the group or area tag, replace them
* with directory slashes to create a group tree.
*/
if (temp[i] == '.')
temp[i] = '/';
}
sprintf(msgs.Base, "%s/var/mail/%s", getenv("MBSE_ROOT"), temp);
} }
sprintf(msgs.Base, "%s/var/mail/%s", getenv("MBSE_ROOT"), temp);
free(temp); free(temp);
/*
* Now fix any spaces in the path.
*/
for (i = 0; i < strlen(msgs.Base); i++)
if (msgs.Base[i] == ' ')
msgs.Base[i] = '_';
} }
} }
SetScreen(); SetScreen();