Revision d1af0e05 ui/vnc-enc-zlib.c

b/ui/vnc-enc-zlib.c
47 47

  
48 48
static void vnc_zlib_start(VncState *vs)
49 49
{
50
    buffer_reset(&vs->zlib);
50
    buffer_reset(&vs->zlib.zlib);
51 51

  
52 52
    // make the output buffer be the zlib buffer, so we can compress it later
53
    vs->zlib_tmp = vs->output;
54
    vs->output = vs->zlib;
53
    vs->zlib.tmp = vs->output;
54
    vs->output = vs->zlib.zlib;
55 55
}
56 56

  
57 57
static int vnc_zlib_stop(VncState *vs)
58 58
{
59
    z_streamp zstream = &vs->zlib_stream;
59
    z_streamp zstream = &vs->zlib.stream;
60 60
    int previous_out;
61 61

  
62 62
    // switch back to normal output/zlib buffers
63
    vs->zlib = vs->output;
64
    vs->output = vs->zlib_tmp;
63
    vs->zlib.zlib = vs->output;
64
    vs->output = vs->zlib.tmp;
65 65

  
66 66
    // compress the zlib buffer
67 67

  
......
75 75
        zstream->zalloc = vnc_zlib_zalloc;
76 76
        zstream->zfree = vnc_zlib_zfree;
77 77

  
78
        err = deflateInit2(zstream, vs->tight_compression, Z_DEFLATED, MAX_WBITS,
78
        err = deflateInit2(zstream, vs->tight.compression, Z_DEFLATED, MAX_WBITS,
79 79
                           MAX_MEM_LEVEL, Z_DEFAULT_STRATEGY);
80 80

  
81 81
        if (err != Z_OK) {
......
83 83
            return -1;
84 84
        }
85 85

  
86
        vs->zlib_level = vs->tight_compression;
86
        vs->zlib.level = vs->tight.compression;
87 87
        zstream->opaque = vs;
88 88
    }
89 89

  
90
    if (vs->tight_compression != vs->zlib_level) {
91
        if (deflateParams(zstream, vs->tight_compression,
90
    if (vs->tight.compression != vs->zlib.level) {
91
        if (deflateParams(zstream, vs->tight.compression,
92 92
                          Z_DEFAULT_STRATEGY) != Z_OK) {
93 93
            return -1;
94 94
        }
95
        vs->zlib_level = vs->tight_compression;
95
        vs->zlib.level = vs->tight.compression;
96 96
    }
97 97

  
98 98
    // reserve memory in output buffer
99
    buffer_reserve(&vs->output, vs->zlib.offset + 64);
99
    buffer_reserve(&vs->output, vs->zlib.zlib.offset + 64);
100 100

  
101 101
    // set pointers
102
    zstream->next_in = vs->zlib.buffer;
103
    zstream->avail_in = vs->zlib.offset;
102
    zstream->next_in = vs->zlib.zlib.buffer;
103
    zstream->avail_in = vs->zlib.zlib.offset;
104 104
    zstream->next_out = vs->output.buffer + vs->output.offset;
105 105
    zstream->avail_out = vs->output.capacity - vs->output.offset;
106 106
    zstream->data_type = Z_BINARY;
......
145 145

  
146 146
void vnc_zlib_clear(VncState *vs)
147 147
{
148
    if (vs->zlib_stream.opaque) {
149
        deflateEnd(&vs->zlib_stream);
148
    if (vs->zlib.stream.opaque) {
149
        deflateEnd(&vs->zlib.stream);
150 150
    }
151
    buffer_free(&vs->zlib);
151
    buffer_free(&vs->zlib.zlib);
152 152
}

Also available in: Unified diff