diff options
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp')
-rw-r--r-- | lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp index 4d489f1..56fc549 100644 --- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp +++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp @@ -3109,14 +3109,16 @@ static GDBStoppointType GetGDBStoppointType(Watchpoint *wp) { assert(wp); bool watch_read = wp->WatchpointRead(); bool watch_write = wp->WatchpointWrite(); + bool watch_modify = wp->WatchpointModify(); - // watch_read and watch_write cannot both be false. - assert(watch_read || watch_write); - if (watch_read && watch_write) + // watch_read, watch_write, watch_modify cannot all be false. + assert((watch_read || watch_write || watch_modify) && + "watch_read, watch_write, watch_modify cannot all be false."); + if (watch_read && (watch_write || watch_modify)) return eWatchpointReadWrite; else if (watch_read) return eWatchpointRead; - else // Must be watch_write, then. + else // Must be watch_write or watch_modify, then. return eWatchpointWrite; } |