diff --git a/app/services/issues/update_service.rb b/app/services/issues/update_service.rb
index e3b508d4965184b6c2beaeda325bda808ceae2e4..f848ecedd6b5fd6619b4428120839e966e626f11 100644
--- a/app/services/issues/update_service.rb
+++ b/app/services/issues/update_service.rb
@@ -1,9 +1,7 @@
 module Issues
   class UpdateService < Issues::BaseService
     def execute(issue)
-      state = params[:state_event]
-
-      case state
+      case params.delete(:state_event)
       when 'reopen'
         Issues::ReopenService.new(project, current_user, {}).execute(issue)
       when 'close'
@@ -16,7 +14,7 @@ module Issues
       filter_params
       old_labels = issue.labels.to_a
 
-      if params.present? && issue.update_attributes(params.except(:state_event))
+      if params.present? && issue.update_attributes(params)
         issue.reset_events_cache
 
         if issue.labels != old_labels
diff --git a/app/services/merge_requests/update_service.rb b/app/services/merge_requests/update_service.rb
index 108d755aa031cb323eebbf8cc3ad525b077b00e2..e5c5368f5d60fb23092df6cec7c9f1d6ab518c6a 100644
--- a/app/services/merge_requests/update_service.rb
+++ b/app/services/merge_requests/update_service.rb
@@ -11,9 +11,7 @@ module MergeRequests
       params.except!(:target_project_id)
       params.except!(:source_branch)
 
-      state = params[:state_event]
-
-      case state
+      case params.delete(:state_event)
       when 'reopen'
         MergeRequests::ReopenService.new(project, current_user, {}).execute(merge_request)
       when 'close'
@@ -26,9 +24,7 @@ module MergeRequests
       filter_params
       old_labels = merge_request.labels.to_a
 
-      if params.present? && merge_request.update_attributes(
-        params.except(:state_event)
-      )
+      if params.present? && merge_request.update_attributes(params)
         merge_request.reset_events_cache
 
         if merge_request.labels != old_labels