File: tempstream1.cc

package info (click to toggle)
bobcat 3.01.00-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 6,612 kB
  • sloc: cpp: 12,107; makefile: 8,055; perl: 401; sh: 329
file content (20 lines) | stat: -rw-r--r-- 392 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "tempstream.ih"

TempStream::TempStream(string const &base)
{
    char *buf = new char[base.length() + 6 + 1];

    strcpy(buf + base.length(), "XXXXXX");
    base.copy(buf, string::npos);

    int fd = mkostemp(buf, O_RDWR);

    if (fd == -1)
        throw Errno("TempStream");

    d_fileName = buf;
    delete[] buf;
    ::close(fd);

    open(d_fileName, ios::out | ios::in);
}