- * If we have been give a valid message name, then use that.
- * Else, if we are given the "use" option, then use the
- * current message. Else, use special sequence "new".
- */
- if (!m_convert (mp, msg && *msg ? msg : use ? "cur" : "new"))
- done (1);
- seq_setprev (mp);
-
- if (mp->numsel > 1)
- adios (NULL, "only one message draft at a time!");
-
- snprintf (buffer, sizeof(buffer), "%s/%s", mp->foldpath, m_name (mp->lowsel));
- cp = buffer;
+ ** The draft message name to return is defined by `which'.
+ ** Usually it is seq_cur (for the current draft) or seq_beyond
+ ** (to start a new draft).
+ */
+ if (!m_convert(mp, which))
+ done(1);
+ seq_setprev(mp);