Commit 8fbf6612 authored by Felipe Franciosi's avatar Felipe Franciosi Committed by Daniel P. Berrangé
Browse files

io: Fix double shift usages on QIOChannel features



When QIOChannels were introduced in 666a3af9, the feature bits were
already defined shifted. However, when using them, the code was shifting
them again. The incorrect use was consistent until 74b6ce43, where
QIO_CHANNEL_FEATURE_LISTEN was defined shifted but tested unshifted.

This patch changes the definition to be unshifted and fixes the
incorrect usage introduced on 74b6ce43.

Signed-off-by: default avatarFelipe Franciosi <felipe@nutanix.com>
Signed-off-by: default avatarDaniel P. Berrange <berrange@redhat.com>
parent da158a86
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -40,9 +40,9 @@ typedef struct QIOChannelClass QIOChannelClass;
typedef enum QIOChannelFeature QIOChannelFeature;

enum QIOChannelFeature {
    QIO_CHANNEL_FEATURE_FD_PASS  = (1 << 0),
    QIO_CHANNEL_FEATURE_SHUTDOWN = (1 << 1),
    QIO_CHANNEL_FEATURE_LISTEN   = (1 << 2),
    QIO_CHANNEL_FEATURE_FD_PASS,
    QIO_CHANNEL_FEATURE_SHUTDOWN,
    QIO_CHANNEL_FEATURE_LISTEN,
};


+1 −1
Original line number Diff line number Diff line
@@ -403,7 +403,7 @@ static void qio_channel_socket_finalize(Object *obj)
    QIOChannelSocket *ioc = QIO_CHANNEL_SOCKET(obj);

    if (ioc->fd != -1) {
        if (QIO_CHANNEL(ioc)->features & QIO_CHANNEL_FEATURE_LISTEN) {
        if (QIO_CHANNEL(ioc)->features & (1 << QIO_CHANNEL_FEATURE_LISTEN)) {
            Error *err = NULL;

            socket_listen_cleanup(ioc->fd, &err);