- strncpy (tmpfil, m_scratch ("", invo_name), sizeof(tmpfil));
- if ((out = fopen (tmpfil, "w")) == NULL) {
- int olderr;
- extern int errno;
- char newfil[80];
-
- olderr = errno;
- strncpy (newfil, m_tmpfil (invo_name), sizeof(newfil));
- if ((out = fopen (newfil, "w")) == NULL) {
+ cp = m_mktemp(invo_name, NULL, &out);
+ if (cp == NULL) {
+ /* Try again, but try to create under /tmp */
+ int olderr = errno;
+ cp = m_mktemp2(NULL, invo_name, NULL, &out);
+ if (cp == NULL) {