summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--it.class4
1 files changed, 4 insertions, 0 deletions
diff --git a/it.class b/it.class
index e6e67d9..cbb5486 100644
--- a/it.class
+++ b/it.class
@@ -1217,8 +1217,12 @@ static function file_put($filename, $data, $p = array())
$tmpdir = is_dir($tmp) && is_writable($tmp) && stat($tmp)[0] == stat(dirname($filename))[0] ? $tmp : dirname($filename);
$tmpfile = "$tmpdir/.it_put." . basename($filename) . "." . getmypid();
if (($result = it::file_put_contents($filename == "-" ? "php://stdout" : $tmpfile, $data)) !== false && $filename != "-")
+ {
if (($result = rename($tmpfile, $filename)) && $p['cdist'])
$result = it::cdist($filename);
+ else
+ @unlink($tmpfile);
+ }
return $result;
}