Defect #36318
closedSaving time tracking activities without any change may turn a system activity into a project activity
0%
Description
If you save system activities without editing them in the project settings, some activities will be created as project-specific activities.
Files
Updated by Yuichi HARADA almost 3 years ago
- File 36318.patch 36318.patch added
The following patch will solve the issue. I have attached a patch.
diff --git a/app/models/enumeration.rb b/app/models/enumeration.rb
index 5f0e023ed9..534d8239e1 100644
--- a/app/models/enumeration.rb
+++ b/app/models/enumeration.rb
@@ -117,7 +117,7 @@ class Enumeration < ActiveRecord::Base
# Does the +new+ Hash have the same custom values as the previous Enumeration?
def self.same_custom_values?(new, previous)
previous.custom_field_values.each do |custom_value|
- if custom_value.value != new["custom_field_values"][custom_value.custom_field_id.to_s]
+ if custom_value.to_s != new["custom_field_values"][custom_value.custom_field_id.to_s].to_s
return false
end
end
Updated by Go MAEDA almost 3 years ago
Could you explain the conditions that cause this issue?
Updated by Go MAEDA almost 3 years ago
Go MAEDA wrote:
Could you explain the conditions that cause this issue?
I understand the condition.
The issue occurs when the value of a custom field of the activity is nil
, and the new value for the custom field in the "new" hash is unset (the value will be a blank string). As a result, the conditional expression of the if statement will be false and a project-specific activity will be wrongly created.
Updated by Go MAEDA almost 3 years ago
- Status changed from New to Confirmed
- Target version set to 4.1.6
Setting the target version to 4.1.6.
Updated by Yuichi HARADA almost 3 years ago
- File 36318-v2.patch 36318-v2.patch added
I forgot to fix test/unit/time_entry_activity_test.rb. Reattached the patch.
Updated by Go MAEDA almost 3 years ago
- Subject changed from Some system activities are created as project-specific activities when there are custom fields for activities to Saving time tracking activities without any change may turn a system activity to a project activity
Updated by Go MAEDA almost 3 years ago
- Subject changed from Saving time tracking activities without any change may turn a system activity to a project activity to Saving time tracking activities without any change may turn a system activity into a project activity
- Status changed from Confirmed to Closed
- Assignee set to Go MAEDA
- Target version changed from 4.1.6 to 5.0.0
- Resolution set to Fixed
Committed the fix. Thank you.