From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-2.9 required=3.0 tests=ALL_TRUSTED,AWL,BAYES_00 shortcircuit=no autolearn=unavailable version=3.3.2 X-Original-To: ruby-posix-mq@bogomips.org Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 36B1D1F7B4 for ; Sun, 11 Jan 2015 03:19:35 +0000 (UTC) From: Eric Wong To: ruby-posix-mq@bogomips.org Subject: [PATCH] favor comparisons against zero instead of -1 Date: Sun, 11 Jan 2015 03:19:33 +0000 Message-Id: <1420946373-17909-1-git-send-email-e@80x24.org> X-Mailer: git-send-email 2.2.1.202.g43dc65d List-Id: This should allow faster instructions to be used in some cases. Technically this may be less pedantically correct, but there is enough existing code out there which does the same thing to discourage kernel/libc developers from overloading negative return values. ...And glibc even favors comparison against zero, too. --- ext/posix_mq/posix_mq.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/ext/posix_mq/posix_mq.c b/ext/posix_mq/posix_mq.c index 14fe819..78544c8 100644 --- a/ext/posix_mq/posix_mq.c +++ b/ext/posix_mq/posix_mq.c @@ -521,7 +521,7 @@ static VALUE s_unlink(VALUE self, VALUE name) { int rv = mq_unlink(StringValueCStr(name)); - if (rv == -1) + if (rv < 0) rb_sys_fail("mq_unlink"); return INT2NUM(1); @@ -549,7 +549,7 @@ static VALUE _unlink(VALUE self) assert(TYPE(mq->name) == T_STRING && "mq->name is not a string"); rv = mq_unlink(RSTRING_PTR(mq->name)); - if (rv == -1) + if (rv < 0) rb_sys_fail("mq_unlink"); return self; @@ -598,7 +598,7 @@ static VALUE _send(int sflags, int argc, VALUE *argv, VALUE self) retry: WITHOUT_GVL(xsend, &x, RUBY_UBF_IO, 0); - if (x.retval == -1) { + if (x.retval < 0) { if (errno == EINTR) goto retry; if (errno == EAGAIN && (sflags & PMQ_TRY)) @@ -632,7 +632,7 @@ static VALUE send0(VALUE self, VALUE buffer) retry: WITHOUT_GVL(xsend, &x, RUBY_UBF_IO, 0); - if (x.retval == -1) { + if (x.retval < 0) { if (errno == EINTR) goto retry; rb_sys_fail("mq_send"); @@ -814,7 +814,7 @@ static VALUE _close(VALUE self) struct posix_mq *mq = get(self, 1); if (! MQ_IO_CLOSE(mq)) { - if (mq_close(mq->des) == -1) + if (mq_close(mq->des) < 0) rb_sys_fail("mq_close"); } mq->des = MQD_INVALID; @@ -901,12 +901,12 @@ static void my_mq_notify(mqd_t des, struct sigevent *not) { int rv = mq_notify(des, not); - if (rv == -1) { + if (rv < 0) { if (errno == ENOMEM) { rb_gc(); rv = mq_notify(des, not); } - if (rv == -1) + if (rv < 0) rb_sys_fail("mq_notify"); } } -- EW