summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/controllers/issues_controller.rb2
-rw-r--r--test/functional/issues_controller_test.rb6
2 files changed, 7 insertions, 1 deletions
diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb
index 2a60c3616..b0db5c800 100644
--- a/app/controllers/issues_controller.rb
+++ b/app/controllers/issues_controller.rb
@@ -149,7 +149,7 @@ class IssuesController < ApplicationController
if request.get? || request.xhr?
@issue.start_date ||= Date.today
else
- requested_status = IssueStatus.find_by_id(params[:issue][:status_id])
+ requested_status = IssueStatus.find_by_id(params[:issue][:status_id]) if params[:issue]
# Check that the user is allowed to apply the requested status
@issue.status = (@allowed_statuses.include? requested_status) ? requested_status : default_status
call_hook(:controller_issues_new_before_save, { :params => params, :issue => @issue })
diff --git a/test/functional/issues_controller_test.rb b/test/functional/issues_controller_test.rb
index 532d13e2d..89b226053 100644
--- a/test/functional/issues_controller_test.rb
+++ b/test/functional/issues_controller_test.rb
@@ -649,6 +649,12 @@ class IssuesControllerTest < ActionController::TestCase
:value => 'Value for field 2'}
end
+ test "POST new with no issue params" do
+ @request.session[:user_id] = 2
+ post :new, :project_id => 1
+ assert_response :success
+ end
+
def test_copy_routing
assert_routing(
{:method => :get, :path => '/projects/world_domination/issues/567/copy'},