summaryrefslogtreecommitdiff
path: root/Plugins/utils
diff options
context:
space:
mode:
Diffstat (limited to 'Plugins/utils')
-rw-r--r--Plugins/utils/ContactAsyncQueue.cpp7
-rw-r--r--Plugins/utils/mir_buffer.h10
2 files changed, 15 insertions, 2 deletions
diff --git a/Plugins/utils/ContactAsyncQueue.cpp b/Plugins/utils/ContactAsyncQueue.cpp
index ca6bf83..9ea2682 100644
--- a/Plugins/utils/ContactAsyncQueue.cpp
+++ b/Plugins/utils/ContactAsyncQueue.cpp
@@ -22,9 +22,12 @@ Boston, MA 02111-1307, USA.
// Itens with higher time at end
-static int QueueSortItems(const QueueItem *i1, const QueueItem *i2)
+static int QueueSortItems(const QueueItem *oldItem, const QueueItem *newItem)
{
- return i1->check_time - i2->check_time;
+ if (oldItem->check_time == newItem->check_time)
+ return -1;
+
+ return oldItem->check_time - newItem->check_time;
}
// Itens with higher time at end
diff --git a/Plugins/utils/mir_buffer.h b/Plugins/utils/mir_buffer.h
index 4daf01e..f783c65 100644
--- a/Plugins/utils/mir_buffer.h
+++ b/Plugins/utils/mir_buffer.h
@@ -308,6 +308,16 @@ class Buffer
memmove(str, tmp, len * sizeof(T));
}
+ void reverse()
+ {
+ for(size_t i = 0; i < len/2; i++)
+ {
+ T tmp = str[i];
+ str[i] = str[len-i-1];
+ str[len-i-1] = tmp;
+ }
+ }
+
T *appender(size_t appLen)
{
alloc(len + appLen + 1);