From 8a52791ee8387e6f5cac570088ee18183900741b Mon Sep 17 00:00:00 2001
From: Derek Jones
Date: Thu, 24 Sep 2009 14:25:39 +0000
Subject: increased randomness of file name used in is_really_writable()
---
system/codeigniter/Common.php | 2 +-
user_guide/changelog.html | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/system/codeigniter/Common.php b/system/codeigniter/Common.php
index eb9dce648..73ff0196f 100644
--- a/system/codeigniter/Common.php
+++ b/system/codeigniter/Common.php
@@ -62,7 +62,7 @@ function is_really_writable($file)
// write a file then read it. Bah...
if (is_dir($file))
{
- $file = rtrim($file, '/').'/'.md5(rand(1,100));
+ $file = rtrim($file, '/').'/'.md5(mt_rand(1,100).mt_rand(1,100));
if (($fp = @fopen($file, FOPEN_WRITE_CREATE)) === FALSE)
{
diff --git a/user_guide/changelog.html b/user_guide/changelog.html
index 6ec6cd32f..a6eaef166 100644
--- a/user_guide/changelog.html
+++ b/user_guide/changelog.html
@@ -76,6 +76,7 @@ SVN Revision:
Bug fixes for 1.7.3
+ - Increased randomness withis_really_writable() to avoid file collisions when hundreds or thousands of requests occur at once.
- Fixed or clarified assorted user guide typos or examples.
--
cgit v1.2.3-24-g4f1b