diff --git a/classes/File.php b/classes/File.php index 8991616f82..d31141cf8e 100644 --- a/classes/File.php +++ b/classes/File.php @@ -82,14 +82,15 @@ class File extends Managed_DataObject * @param string $given_url * @return File */ - public static function saveNew(array $redir_data, $given_url) { + public static function saveNew(array $redir_data, $given_url) + { + $file = null; - // I don't know why we have to keep doing this but I'm adding this last check to avoid - // uniqueness bugs. - - $file = File::getKV('urlhash', self::hashurl($given_url)); - - if (!$file instanceof File) { + try { + // I don't know why we have to keep doing this but we run a last check to avoid + // uniqueness bugs. + $file = File::getByUrl($given_url); + } catch (NoResultException $e) { $file = new File; $file->urlhash = self::hashurl($given_url); $file->url = $given_url;