[Spice-devel] [PATCH spice-server 1/2] Change ENABLE_EXTRA_CHECKS statements to #ifdef
Uri Lublin
uril at redhat.com
Thu Mar 15 11:19:02 UTC 2018
On 03/13/2018 03:37 PM, Eduardo Lima (Etrunko) wrote:
> On 13/03/18 04:21, Frediano Ziglio wrote:
>>>
>>> This patch makes it clear that this is a configure switch and not a
>>> variable defined somewhere else in the code.
>>>
>>
>> The code is intended that way to make the compiler always parse
>> these parts. Note that that define is always defined so your code
>> is not doing what you are intending.
>
> I have sent this patch by mistake, but anyway, the fact of it always
> being defined is true with autotools, but it is not with meson.
So with meson it's either 1 or undefined ?
Note that in this case the current code would fail to build
when ENABLE_EXTRA_CHECKS is undefined.
> Do you think it would make sense to have this patch or is it better to
> keep as is? If the latter, I think it would be better to keep a static
> variable and change its value according to the define.
This patch makes sense to me.
Perhaps replace the #ifdef with
#if defined(ENABLE_EXTRA_CHECKS) && ENABLE_EXTRA_CHECKS
Uri.
>
> Regards, Eduardo.
>
>>
>> Frediano
>>
>>> Signed-off-by: Eduardo Lima (Etrunko) <etrunko at redhat.com>
>>> ---
>>> server/display-channel.c | 4 +++-
>>> server/reds.c | 6 +++---
>>> server/stream-device.c | 22 +++++++++++-----------
>>> 3 files changed, 17 insertions(+), 15 deletions(-)
>>>
>>> diff --git a/server/display-channel.c b/server/display-channel.c
>>> index 6dc10ee7..ae2af71d 100644
>>> --- a/server/display-channel.c
>>> +++ b/server/display-channel.c
>>> @@ -89,7 +89,8 @@ display_channel_finalize(GObject *object)
>>> display_channel_destroy_surfaces(self);
>>> image_cache_reset(&self->priv->image_cache);
>>>
>>> - if (ENABLE_EXTRA_CHECKS) {
>>> +#ifdef ENABLE_EXTRA_CHECKS
>>> + {
>>> unsigned int count;
>>> _Drawable *drawable;
>>> VideoStream *stream;
>>> @@ -111,6 +112,7 @@ display_channel_finalize(GObject *object)
>>> spice_assert(self->priv->surfaces[count].context.canvas ==
>>> NULL);
>>> }
>>> }
>>> +#endif
>>>
>>> monitors_config_unref(self->priv->monitors_config);
>>> g_array_unref(self->priv->video_codecs);
>>> diff --git a/server/reds.c b/server/reds.c
>>> index 73c9ec20..ca6fd44a 100644
>>> --- a/server/reds.c
>>> +++ b/server/reds.c
>>> @@ -4434,9 +4434,9 @@ red_char_device_vdi_port_finalize(GObject *object)
>>> dev->priv->current_read_buf = NULL;
>>> }
>>> g_free(dev->priv->mig_data);
>>> - if (ENABLE_EXTRA_CHECKS) {
>>> - spice_assert(dev->priv->num_read_buf == 0);
>>> - }
>>> +#ifdef ENABLE_EXTRA_CHECKS
>>> + spice_assert(dev->priv->num_read_buf == 0);
>>> +#endif
>>>
>>> G_OBJECT_CLASS(red_char_device_vdi_port_parent_class)->finalize(object);
>>> }
>>> diff --git a/server/stream-device.c b/server/stream-device.c
>>> index 6cf29d37..15048b82 100644
>>> --- a/server/stream-device.c
>>> +++ b/server/stream-device.c
>>> @@ -197,9 +197,9 @@ handle_msg_invalid(StreamDevice *dev,
>>> SpiceCharDeviceInstance *sin, const char *
>>> {
>>> static const char default_error_msg[] = "Protocol error";
>>>
>>> - if (ENABLE_EXTRA_CHECKS) {
>>> - spice_assert(dev->hdr_pos >= sizeof(StreamDevHeader));
>>> - }
>>> +#ifdef ENABLE_EXTRA_CHECKS
>>> + spice_assert(dev->hdr_pos >= sizeof(StreamDevHeader));
>>> +#endif
>>>
>>> if (!error_msg) {
>>> error_msg = default_error_msg;
>>> @@ -234,10 +234,10 @@ handle_msg_format(StreamDevice *dev,
>>> SpiceCharDeviceInstance *sin)
>>> {
>>> SpiceCharDeviceInterface *sif = spice_char_device_get_interface(sin);
>>>
>>> - if (ENABLE_EXTRA_CHECKS) {
>>> - spice_assert(dev->hdr_pos >= sizeof(StreamDevHeader));
>>> - spice_assert(dev->hdr.type == STREAM_TYPE_FORMAT);
>>> - }
>>> +#ifdef ENABLE_EXTRA_CHECKS
>>> + spice_assert(dev->hdr_pos >= sizeof(StreamDevHeader));
>>> + spice_assert(dev->hdr.type == STREAM_TYPE_FORMAT);
>>> +#endif
>>>
>>> int n = sif->read(sin, dev->msg->buf + dev->msg_pos,
>>> sizeof(StreamMsgFormat) - dev->msg_pos);
>>> if (n < 0) {
>>> @@ -262,10 +262,10 @@ handle_msg_data(StreamDevice *dev,
>>> SpiceCharDeviceInstance *sin)
>>> SpiceCharDeviceInterface *sif = spice_char_device_get_interface(sin);
>>> int n;
>>>
>>> - if (ENABLE_EXTRA_CHECKS) {
>>> - spice_assert(dev->hdr_pos >= sizeof(StreamDevHeader));
>>> - spice_assert(dev->hdr.type == STREAM_TYPE_DATA);
>>> - }
>>> +#ifdef ENABLE_EXTRA_CHECKS
>>> + spice_assert(dev->hdr_pos >= sizeof(StreamDevHeader));
>>> + spice_assert(dev->hdr.type == STREAM_TYPE_DATA);
>>> +#endif
>>>
>>> while (1) {
>>> uint8_t buf[16 * 1024];
>
>
More information about the Spice-devel
mailing list