X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=lib%2Fpython%2Fdolmod.c;h=14181744a5a47c5caff7ee6740399b5821afbfbd;hb=48cff6fe16a5fa6579da7d035322a431ce52711c;hp=71623a6e40ef82215db5f1751f7f54a88245d565;hpb=9cbeb60c78389bde5a290e263335cffffbb5ced6;p=doldaconnect.git diff --git a/lib/python/dolmod.c b/lib/python/dolmod.c index 71623a6..1418174 100644 --- a/lib/python/dolmod.c +++ b/lib/python/dolmod.c @@ -1,6 +1,6 @@ /* * Dolda Connect - Modular multiuser Direct Connect-style client - * Copyright (C) 2004 Fredrik Tolf (fredrik@dolda2000.com) + * Copyright (C) 2004 Fredrik Tolf * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -189,11 +189,11 @@ static PyObject *mod_select(PyObject *self, PyObject *args) return(NULL); } if(((pfd.revents & POLLIN) && dc_handleread()) || ((pfd.revents & POLLOUT) && dc_handlewrite())) { - if(errno == 0) { - fd = -1; + fd = -1; + if(errno == 0) Py_RETURN_FALSE; - } PyErr_SetFromErrno(PyExc_OSError); + return(NULL); } if(ret > 0) Py_RETURN_TRUE; @@ -267,13 +267,13 @@ static PyObject *mod_qcmd(PyObject *self, PyObject *args, PyObject *kwargs) if(PyMapping_HasKeyString(kwargs, "cb")) { cb = PyMapping_GetItemString(kwargs, "cb"); if(PyCallable_Check(cb)) { - ret = PyInt_FromLong(dc_queuecmd(qcmd_cb, cb, cmd, L"%%a", toks, NULL)); + ret = PyInt_FromLong(dc_queuecmd(qcmd_cb, cb, cmd, L"%a", toks, NULL)); } else { PyErr_SetString(PyExc_TypeError, "Callback must be callable"); Py_DECREF(cb); } } else { - ret = PyInt_FromLong(dc_queuecmd(NULL, NULL, cmd, L"%%a", toks, NULL)); + ret = PyInt_FromLong(dc_queuecmd(NULL, NULL, cmd, L"%a", toks, NULL)); } out: @@ -402,7 +402,7 @@ static PyObject *mod_checkproto(PyObject *self, PyObject *args) PyErr_SetString(PyExc_TypeError, "first argument must be a response object"); return(NULL); } - resp = tmp; + resp = (struct respobj *)tmp; if(dc_checkprotocol(resp->resp, version)) Py_RETURN_FALSE; else