mirror of
https://github.com/debauchee/barrier.git
synced 2026-02-12 14:45:21 +08:00
Applied a number of patches.
* HP-UX fixes (Bernd Noll) * Now handling accept() taking an int 3rd arg * Now casting sizeof() to socklen_t where necessary * BSD ports fix (Kristen Glynn) * Now defining NULL via stddef.h * Crash on X11 using clipboard (Daniel Gollub) * CXWindowsClipboard::pushReplies() increments iterator better * Solaris/HP-UX compile errors * Now #ifdef out sets of key syms if first key sym undefined * Fix assertion on bad mouse position (ubiquitous_q) * Validate mouse position from client and fix if necessary
This commit is contained in:
@@ -929,16 +929,19 @@ CXWindowsClipboard::pushReplies()
|
||||
// send the first reply for each window if that reply hasn't
|
||||
// been sent yet.
|
||||
for (CReplyMap::iterator index = m_replies.begin();
|
||||
index != m_replies.end(); ++index) {
|
||||
index != m_replies.end(); ) {
|
||||
assert(!index->second.empty());
|
||||
if (!index->second.front()->m_replied) {
|
||||
pushReplies(index, index->second, index->second.begin());
|
||||
}
|
||||
else {
|
||||
++index;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
CXWindowsClipboard::pushReplies(CReplyMap::iterator mapIndex,
|
||||
CXWindowsClipboard::pushReplies(CReplyMap::iterator& mapIndex,
|
||||
CReplyList& replies, CReplyList::iterator index)
|
||||
{
|
||||
CReply* reply = *index;
|
||||
@@ -959,9 +962,12 @@ CXWindowsClipboard::pushReplies(CReplyMap::iterator mapIndex,
|
||||
CXWindowsUtil::CErrorLock lock(m_display);
|
||||
Window requestor = mapIndex->first;
|
||||
XSelectInput(m_display, requestor, m_eventMasks[requestor]);
|
||||
m_replies.erase(mapIndex);
|
||||
m_replies.erase(mapIndex++);
|
||||
m_eventMasks.erase(requestor);
|
||||
}
|
||||
else {
|
||||
++mapIndex;
|
||||
}
|
||||
}
|
||||
|
||||
bool
|
||||
|
||||
Reference in New Issue
Block a user