diff --git a/services/web/app/coffee/Features/Project/ProjectLocator.coffee b/services/web/app/coffee/Features/Project/ProjectLocator.coffee index ead0dc3942..998e2fc60b 100644 --- a/services/web/app/coffee/Features/Project/ProjectLocator.coffee +++ b/services/web/app/coffee/Features/Project/ProjectLocator.coffee @@ -54,7 +54,10 @@ module.exports = findRootDoc : (opts, callback)-> getRootDoc = (project)=> - @findElement {project:project, element_id:project.rootDoc_id, type:"docs"}, callback + if project.rootDoc_id? + @findElement {project:project, element_id:project.rootDoc_id, type:"docs"}, callback + else + callback null, null {project, project_id} = opts if project? getRootDoc project diff --git a/services/web/test/UnitTests/coffee/Project/ProjectLocatorTests.coffee b/services/web/test/UnitTests/coffee/Project/ProjectLocatorTests.coffee index b1e2cb9139..18cdb66216 100644 --- a/services/web/test/UnitTests/coffee/Project/ProjectLocatorTests.coffee +++ b/services/web/test/UnitTests/coffee/Project/ProjectLocatorTests.coffee @@ -159,6 +159,13 @@ describe 'project model', -> assert !err? doc._id.should.equal rootDoc._id done() + + it 'should return null when the project has no rootDoc', (done) -> + project.rootDoc_id = null + @locator.findRootDoc project, (err, doc)-> + assert !err? + expect(doc).to.equal null + done() describe 'findElementByPath', ->