]> source.dussan.org Git - nextcloud-server.git/commitdiff
fix expire function
authorBjörn Schießle <schiessle@owncloud.com>
Mon, 4 Mar 2013 16:20:14 +0000 (17:20 +0100)
committerBjörn Schießle <schiessle@owncloud.com>
Mon, 4 Mar 2013 16:20:14 +0000 (17:20 +0100)
apps/files_versions/lib/versions.php

index 178ef7227358c18edce4a64b7602b5169767f578..c37133cf32ccaae54548b4c148dff4a5a566099e 100644 (file)
@@ -442,12 +442,12 @@ class Storage {
                                }
                        }
 
-                       // check if enough space is available after versions are rearranged.
-                       // if not we delete the oldest versions until we meet the size limit for versions
-                       $numOfVersions = count($all_versions);
+                       // Check if enough space is available after versions are rearranged.
+                       // If not we delete the oldest versions until we meet the size limit for versions,
+                       // but always keep the two latest versions
+                       $numOfVersions = count($all_versions) -2 ;
                        $i = 0;
-                       while ($availableSpace < 0) {
-                               if ($i = $numOfVersions-2) break; // keep at least the last version
+                       while ($availableSpace < 0 && $i < $numOfVersions) {
                                $versions_fileview->unlink($all_versions[$i]['path'].'.v'.$all_versions[$i]['version']);
                                $versionsSize -= $all_versions[$i]['size'];
                                $availableSpace += $all_versions[$i]['size'];