<div dir="ltr">BTW, this exact same code seems to have been copied either to or from OptionValueFileSpecList::SetValueFromString, as it appears to have the same bug.  Again, not sure how to see it fail in the debugger, but maybe someone knows?</div><br><div class="gmail_quote"><div dir="ltr">On Fri, Nov 18, 2016 at 1:07 PM Zachary Turner <<a href="mailto:zturner@google.com">zturner@google.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg">Also, I just noticed the loop only runs one time, so it appears equivalent to<div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">m_path_mappings.Remove(remove_indexes.size() - 1, m_notify_changes);</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">which seems completely wrong</div></div><br class="gmail_msg"><div class="gmail_quote gmail_msg"><div dir="ltr" class="gmail_msg">On Fri, Nov 18, 2016 at 1:05 PM Zachary Turner <<a href="mailto:zturner@google.com" class="gmail_msg" target="_blank">zturner@google.com</a>> wrote:<br class="gmail_msg"></div><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg">In the switch / case handler for eVarSetOperationRemove, there is the following code:<div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg"><div class="gmail_msg">      if (num_remove_indexes) {</div><div class="gmail_msg">        // Sort and then erase in reverse so indexes are always valid</div><div class="gmail_msg">        std::sort(remove_indexes.begin(), remove_indexes.end());</div><div class="gmail_msg">        for (size_t j = num_remove_indexes - 1; j < num_remove_indexes; ++j) {</div><div class="gmail_msg">          m_path_mappings.Remove(j, m_notify_changes);</div><div class="gmail_msg">        }</div><div class="gmail_msg">      }</div></div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">Should the line that calls Remove() not be like this:</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">          m_path_mappings.Remove(<b class="gmail_msg">remove_indexes[j]</b>, m_notify_changes);  <br class="gmail_msg"></div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">?  What effect will this have on LLDB?</div></div></blockquote></div></blockquote></div>