diff --git a/cms/static/coffee/spec/views/course_info_spec.coffee b/cms/static/coffee/spec/views/course_info_spec.coffee
index 7621684a71167c18b09fb63ddc25cf649715ba12..4d985bdea4f66a0151c3f3e41531e4be06383270 100644
--- a/cms/static/coffee/spec/views/course_info_spec.coffee
+++ b/cms/static/coffee/spec/views/course_info_spec.coffee
@@ -65,6 +65,19 @@ define ["js/views/course_info_handout", "js/views/course_info_update", "js/model
                     previewContents = @courseInfoEdit.$el.find('.update-contents').html()
                     expect(previewContents).not.toEqual('unsaved changes')
 
+                @doNotCloseNewCourseInfo = () ->
+                    @courseInfoEdit.onNew(@event)
+                    spyOn(@courseInfoEdit.$modalCover, 'hide').andCallThrough()
+
+                    spyOn(@courseInfoEdit.$codeMirror, 'getValue').andReturn('unsaved changes')
+                    model = @collection.at(0)
+                    spyOn(model, "save").andCallThrough()
+
+                    cancelEditingUpdate(@courseInfoEdit, @courseInfoEdit.$modalCover, false)
+
+                    expect(model.save).not.toHaveBeenCalled()
+                    expect(@courseInfoEdit.$modalCover.hide).not.toHaveBeenCalled()
+
                 @cancelExistingCourseInfo = (useCancelButton) ->
                     @createNewUpdate('existing update')
                     @courseInfoEdit.$el.find('.edit-button').click()
@@ -125,8 +138,8 @@ define ["js/views/course_info_handout", "js/views/course_info_update", "js/model
             it "removes newly created course info on cancel", ->
                 @cancelNewCourseInfo(true)
 
-            it "removes newly created course info on click outside modal", ->
-                @cancelNewCourseInfo(false)
+            it "do not close new course info on click outside modal", ->
+                @doNotCloseNewCourseInfo()
 
             it "does not remove existing course info on cancel", ->
                 @cancelExistingCourseInfo(true)
diff --git a/cms/static/js/views/course_info_update.js b/cms/static/js/views/course_info_update.js
index 821d12fcaaf556d596ff304a6561b27e5453e322..8797f99f3d91c35129a1dc5c4de6c262f20dcfc7 100644
--- a/cms/static/js/views/course_info_update.js
+++ b/cms/static/js/views/course_info_update.js
@@ -64,7 +64,7 @@ define(["js/views/baseview", "underscore", "codemirror", "js/models/course_updat
 
             // Variable stored for unit test.
             this.$modalCover = ModalUtils.showModalCover(false, function() {
-                self.closeEditor(true)
+                // Binding empty function to prevent default hideModal.
             });
 
             $('.date').datepicker('destroy');