From b85de0d704cf1d8ea4059a25a9ff560984d838f1 Mon Sep 17 00:00:00 2001 From: peri4 Date: Tue, 26 Oct 2021 13:50:27 +0300 Subject: [PATCH] work with PIFile::openTemporary() on Windows --- libs/main/io_devices/pifile.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/libs/main/io_devices/pifile.cpp b/libs/main/io_devices/pifile.cpp index e4fd8fd0..29f3af79 100644 --- a/libs/main/io_devices/pifile.cpp +++ b/libs/main/io_devices/pifile.cpp @@ -148,7 +148,14 @@ PIFile::PIFile(const PIString & path, PIIODevice::DeviceMode mode): PIIODevice(p bool PIFile::openTemporary(PIIODevice::DeviceMode mode) { - return open(PIString(tmpnam(0)), mode); + PIString tp; + char * rc = tmpnam(0); + if (!rc) return false; + tp = rc; +#ifdef WINDOWS + tp = PIDir::temporary().path() + PIDir::separator + "file" + tp.cutLeft(1).cutRight(1); +#endif + return open(tp, mode); }