diff --git a/app/lib/tag_manager.rb b/app/lib/tag_manager.rb index 6170a90d..55aed92e 100644 --- a/app/lib/tag_manager.rb +++ b/app/lib/tag_manager.rb @@ -48,6 +48,7 @@ class TagManager end def unique_tag_to_local_id(tag, expected_type) + return nil unless local_id?(tag) matches = Regexp.new("objectId=([\\d]+):objectType=#{expected_type}").match(tag) return matches[1] unless matches.nil? end diff --git a/app/services/process_interaction_service.rb b/app/services/process_interaction_service.rb index 16eac235..bc836151 100644 --- a/app/services/process_interaction_service.rb +++ b/app/services/process_interaction_service.rb @@ -123,7 +123,9 @@ class ProcessInteractionService < BaseService end def status(xml) - Status.find(TagManager.instance.unique_tag_to_local_id(activity_id(xml), 'Status')) + uri = activity_id(xml) + return nil unless TagManager.instance.local_id?(uri) + Status.find(TagManager.instance.unique_tag_to_local_id(uri, 'Status')) end def activity_id(xml)