summaryrefslogtreecommitdiff
path: root/gio/src/file.ccg
diff options
context:
space:
mode:
Diffstat (limited to 'gio/src/file.ccg')
-rw-r--r--gio/src/file.ccg12
1 files changed, 12 insertions, 0 deletions
diff --git a/gio/src/file.ccg b/gio/src/file.ccg
index adef931e..8e8204a9 100644
--- a/gio/src/file.ccg
+++ b/gio/src/file.ccg
@@ -189,6 +189,18 @@ File::create_for_commandline_arg(const std::string& arg)
return Glib::wrap(G_FILE(cfile));
}
+std::pair<Glib::RefPtr<File>, Glib::RefPtr<FileIOStream>>
+File::create_tmp(const std::string& tmpl)
+{
+ GError* gerror = nullptr;
+ GFileIOStream* ciostream = nullptr;
+ GFile* cfile = g_file_new_tmp(tmpl.empty() ? nullptr : tmpl.c_str(), &ciostream, &gerror);
+ if (gerror)
+ ::Glib::Error::throw_exception(gerror);
+
+ return {Glib::wrap(cfile), Glib::wrap(ciostream)};
+}
+
Glib::RefPtr<File>
File::create_for_parse_name(const Glib::ustring& parse_name)
{