pidgin/pidgin

Merged in iterate-on-receiving-data-in-jabber-callback (pull request #636)

iterate on jabber callback when receiving more data than buffer size

Approved-by: Elliott Sales de Andrade
Approved-by: Gary Kramlich
/* This file is part of the Project Athena Zephyr Notification System.
* It contains source for the ZGetLocations function.
*
* Created by: Robert French
*
* Copyright (c) 1987 by the Massachusetts Institute of Technology.
* For copying and distribution information, see the file
* "mit-copyright.h".
*/
#include "internal.h"
/* Prototype for -Wmissing-prototypes */
Code_t ZGetLocations(ZLocations_t *location, int *numlocs);
Code_t ZGetLocations(ZLocations_t *location, int *numlocs)
{
int i;
if (!__locate_list) {
return (ZERR_NOLOCATIONS);
}
if (__locate_next == __locate_num) {
return (ZERR_NOMORELOCS);
}
for (i = 0; i < MIN(*numlocs, __locate_num - __locate_next); i++) {
location[i] = __locate_list[i + __locate_next];
}
if (__locate_num - __locate_next < *numlocs) {
*numlocs = __locate_num - __locate_next;
}
__locate_next += *numlocs;
return ZERR_NONE;
}