projects
/
mmh
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Allow send(1) to send from folder other than +drafts
[mmh]
/
uip
/
send.c
diff --git
a/uip/send.c
b/uip/send.c
index
619ff62
..
c1665b2
100644
(file)
--- a/
uip/send.c
+++ b/
uip/send.c
@@
-81,7
+81,7
@@
main(int argc, char **argv)
int msgnum, status;
int in, out;
int n;
int msgnum, status;
int in, out;
int n;
- char *cp, *maildir = NULL;
+ char *cp, *maildir = NULL, *folder = NULL;
char buf[BUFSIZ], **argp, **arguments;
char *msgs[MAXARGS], *vec[MAXARGS];
char *files[MAXARGS];
char buf[BUFSIZ], **argp, **arguments;
char *msgs[MAXARGS], *vec[MAXARGS];
char *files[MAXARGS];
@@
-125,6
+125,12
@@
main(int argc, char **argv)
vec[vecp++] = --cp;
continue;
}
vec[vecp++] = --cp;
continue;
}
+ } else if (*cp == '+' || *cp == '@') {
+ if (folder) {
+ adios(EX_USAGE, NULL, "only one folder at a time!");
+ } else {
+ folder = mh_xstrdup(expandfol(cp));
+ }
} else {
if (*cp == '/') {
files[nfiles++] = cp;
} else {
if (*cp == '/') {
files[nfiles++] = cp;
@@
-139,17
+145,18
@@
main(int argc, char **argv)
}
if (nmsgs) {
}
if (nmsgs) {
- maildir = toabsdir(draftfolder);
+ folder = folder ? folder : draftfolder;
+ maildir = toabsdir(folder);
if (chdir(maildir) == NOTOK) {
adios(EX_OSERR, maildir, "unable to change directory to");
}
if (chdir(maildir) == NOTOK) {
adios(EX_OSERR, maildir, "unable to change directory to");
}
- if (!(mp = folder_read(draftfolder))) {
- adios(EX_IOERR, NULL, "unable to read draft folder %s",
- draftfolder);
+ if (!(mp = folder_read(folder))) {
+ adios(EX_IOERR, NULL, "unable to read folder %s",
+ folder);
}
if (mp->nummsg == 0) {
}
if (mp->nummsg == 0) {
- adios(EX_DATAERR, NULL, "no messages in draft folder %s",
- draftfolder);
+ adios(EX_DATAERR, NULL, "no messages in folder %s",
+ folder);
}
/* parse all the msgranges/sequences and set SELECTED */
for (msgnum = 0; msgnum < nmsgs; msgnum++) {
}
/* parse all the msgranges/sequences and set SELECTED */
for (msgnum = 0; msgnum < nmsgs; msgnum++) {