about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--app/lib/tag_manager.rb1
-rw-r--r--app/services/process_interaction_service.rb4
2 files changed, 4 insertions, 1 deletions
diff --git a/app/lib/tag_manager.rb b/app/lib/tag_manager.rb
index 6170a90de..55aed92e3 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 16eac2353..bc8361510 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)