diff options
author | Alexander Larsson <alexl@redhat.com> | 2010-06-29 21:42:59 +0200 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2010-06-30 22:35:17 +0200 |
commit | a24a8ff72ae40432f2ffe246f973057e38b042b0 (patch) | |
tree | 34fa9ddf1033ec22e3bc113582bef07f7e29c6b5 /spice1.proto | |
parent | 0f5a6f57b70bb7c94e15e908db4627d44c339b9c (diff) | |
download | spice-a24a8ff72ae40432f2ffe246f973057e38b042b0.tar.gz spice-a24a8ff72ae40432f2ffe246f973057e38b042b0.tar.xz spice-a24a8ff72ae40432f2ffe246f973057e38b042b0.zip |
Store SpicePath segment count rather than size
Internally and in the network protocol (for the new version) we
now store the actual number of segments rather than the size of the
full segments array in bytes. This change consists of multiple changes
to handle this:
* Make the qxl parser calculate num_segments
* Make the canvas stroke code handle the new SpicePath layout.
* Fix up is_equal_path in red_worker.c for the new layout
* replace multiple calls to spice_marshall_PathSegment with a single
spice_marshall_Path call
* Make the byte_size() array size handling do the conversion from
network size to number of elements when marshalling/demarshalling.
* Update the current spice protocol to send the segment count rather than
the size
* Update the old spice protocol to use the new byte_size functionallity
to calculate the size sent and the number of elements recieved
Diffstat (limited to 'spice1.proto')
-rw-r--r-- | spice1.proto | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/spice1.proto b/spice1.proto index 75749af1..0150de22 100644 --- a/spice1.proto +++ b/spice1.proto @@ -374,8 +374,8 @@ struct PathSegment { } @ctype(SpicePathSeg); struct Path { - uint32 size; - PathSegment segments[bytes(size)] @end; + uint32 segments_size @bytes_count; + PathSegment segments[bytes(segments_size, num_segments)] @end; }; struct Clip { |