================
@@ -77,16 +77,19 @@ ProgressEvent::Create(uint64_t progress_id, 
std::optional<StringRef> message,
   if (event.GetEventType() == progressStart && event.GetEventName().empty())
     return std::nullopt;
 
-  if (prev_event && prev_event->EqualsForIDE(event))
+  if (prev_event && prev_event->EqualsForIDE(event, total))
     return std::nullopt;
 
   return event;
 }
 
-bool ProgressEvent::EqualsForIDE(const ProgressEvent &other) const {
+bool ProgressEvent::EqualsForIDE(const ProgressEvent &other, uint64_t total) 
const {
   return m_progress_id == other.m_progress_id &&
-         m_event_type == other.m_event_type &&
-         m_percentage == other.m_percentage;
+         m_event_type == other.m_event_type && 
+         // If we check the percentage of a non-deterministic event
----------------
ashgti wrote:

But won't they have different event types if its changed? For a 
non-determinitic progress event, it should only go from `m_event_type == 
progressStart` to `m_event_type == progressEnd`, right? If we have 2 starts or 
2 ends that feels like the logic got mixed up somewhere else, right?

https://github.com/llvm/llvm-project/pull/140162
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to