Я принимаю данные из сокета. Сокет tcp. Пакеты - JSON объекты, разделённые байтовым нулём (0). Иногда приходят 2 пакета одновременно. Вопрос - как их расклеить? Вот код без расклеивания:

Код AS3:
public class Buffer
{
public var b: String = new String();
public var objects: Vector.<Object> = new Vector.<Object>();
public function Buffer()
{
}
public function full(connection:Socket): Boolean {
var str: String = connection.readUTFBytes( connection.bytesAvailable );
try {
var obj: Object = JSON.decode(str);
objects.push(obj);
}catch (error:Error) {
trace("Ошибка при разборе строки \"" + str + "\" (" + error.message + ")");
}
return true;
}
public function getObj(): Object {
return objects.shift();
}
}
Он, в случае прихода двух пакетов, второй просто игнорит.