Function glib::file_open_tmp

source ·
pub fn file_open_tmp(
    tmpl: Option<impl AsRef<Path>>
) -> Result<(RawFd, PathBuf), Error>
Expand description

Opens a file for writing in the preferred directory for temporary files (as returned by tmp_dir()).

tmpl should be a string in the GLib file name encoding containing a sequence of six ‘X’ characters, as the parameter to mkstemp(). However, unlike these functions, the template should only be a basename, no directory components are allowed. If template is None, a default template is used.

Note that in contrast to mkstemp() (and mkstemp()) tmpl is not modified, and might thus be a read-only literal string.

Upon success, and if name_used is non-None, the actual name used is returned in name_used. This string should be freed with g_free() when not needed any longer. The returned name is in the GLib file name encoding.

tmpl

Template for file name, as in mkstemp(), basename only, or None for a default template

Returns

A file handle (as from open()) to the file opened for reading and writing. The file is opened in binary mode on platforms where there is a difference. The file handle should be closed with close(). In case of errors, -1 is returned and error will be set.

name_used

location to store actual name used, or None