jimingham wrote:

The problem was is currently you cna make a process, then do:

    listener = lldb.SBListener("my_listener")
    process.broadcaster.AddListener(listener, 
lldb.SBProcess.eBroadcastBitStateChanged)

and nothing marks this as a Shadow listener, so when we go to deliver events, 
we don't wait on the consumption by the Primary listener.

But I don't think I should need SetShadow for this.  I don't think we need to 
mark the listener outside the "Add" action as Shadow.  Instead, AddListener 
should see if there IS a primary listener, and if there is one, then any other 
listener has to be a shadow listener.

Actually, I wonder if we really need this distinction to be marked explicitly, 
I might have been being too general.  If you have a primary listener, then all 
the other listeners have to be shadow listeners.  I don't think anything else 
makes sense.  And conversely, if you don't have a primary listener, then I 
marking some of the listeners as shadow doesn't do anything useful.


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

Reply via email to