char *
m_draft(char *which)
{
- register char *cp;
register struct msgs *mp;
static char buffer[BUFSIZ];
char *folder;
- cp = draftfolder;
- folder = path(*cp == '+' || *cp == '@' ? cp + 1 : cp,
- *cp != '@' ? TFOLDER : TSUBCWF);
-
- chdir(m_maildir(""));
- strncpy(buffer, m_maildir(folder), sizeof(buffer));
-
- create_folder(buffer, 0, done);
-
- if (chdir(buffer) == -1)
- adios(buffer, "unable to change directory to");
-
- if (!(mp = folder_read(folder)))
+ folder = getcpy(toabsdir(draftfolder));
+ create_folder(folder, 0, done);
+ if (!(mp = folder_read(folder))) {
adios(NULL, "unable to read folder %s", folder);
+ }
/*
** Make sure we have enough message status space for all