diff --git a/core/model/ErrorPage.php b/core/model/ErrorPage.php
index <HASH>..<HASH> 100755
--- a/core/model/ErrorPage.php
+++ b/core/model/ErrorPage.php
@@ -58,7 +58,8 @@ class ErrorPage extends Page {
 	function requireDefaultRecords() {
 		parent::requireDefaultRecords();
 
-		if(!DataObject::get_one('ErrorPage', "\"ErrorCode\" = '404'")) {
+		$errorPage = DataObject::get_one('ErrorPage', "\"ErrorCode\" = '404'");
+		if(!($errorPage && $errorPage->exists())) {
 			$errorpage = new ErrorPage();
 			$errorpage->ErrorCode = 404;
 			$errorpage->Title = _t('ErrorPage.DEFAULTERRORPAGETITLE', 'Page not found');
BUGFIX Ensure that before creating default <I> error page, we don't have one already that exists with a record ID (from r<I>)


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@<I> <I>b<I>ca-7a2a-<I>-9d3b-<I>d<I>a<I>a9