equal
deleted
inserted
replaced
92 { |
92 { |
93 qint16 px = qToBigEndian((qint16)point.x()); |
93 qint16 px = qToBigEndian((qint16)point.x()); |
94 qint16 py = qToBigEndian((qint16)point.y()); |
94 qint16 py = qToBigEndian((qint16)point.y()); |
95 quint8 flags = 2; |
95 quint8 flags = 2; |
96 if(!cnt) flags |= 0x80; |
96 if(!cnt) flags |= 0x80; |
97 b.append((const char *)&flags, 1); |
|
98 b.append((const char *)&px, 2); |
97 b.append((const char *)&px, 2); |
99 b.append((const char *)&py, 2); |
98 b.append((const char *)&py, 2); |
|
99 b.append((const char *)&flags, 1); |
100 |
100 |
101 ++cnt; |
101 ++cnt; |
102 } |
102 } |
103 |
103 |
104 } |
104 } |
113 |
113 |
114 QList<QPoint> points; |
114 QList<QPoint> points; |
115 |
115 |
116 while(data.size() >= 5) |
116 while(data.size() >= 5) |
117 { |
117 { |
118 quint8 flags = *(quint8 *)data.data(); |
|
119 data.remove(0, 1); |
|
120 qint16 px = qFromBigEndian(*(qint16 *)data.data()); |
118 qint16 px = qFromBigEndian(*(qint16 *)data.data()); |
121 data.remove(0, 2); |
119 data.remove(0, 2); |
122 qint16 py = qFromBigEndian(*(qint16 *)data.data()); |
120 qint16 py = qFromBigEndian(*(qint16 *)data.data()); |
123 data.remove(0, 2); |
121 data.remove(0, 2); |
|
122 quint8 flags = *(quint8 *)data.data(); |
|
123 data.remove(0, 1); |
124 |
124 |
125 //last chunk or first point |
125 //last chunk or first point |
126 if((data.size() < 5) || (flags & 0x80)) |
126 if((data.size() < 5) || (flags & 0x80)) |
127 { |
127 { |
128 if(points.size()) |
128 if(points.size()) |