Fixed error reporting bug in dolmod.
[doldaconnect.git] / lib / python / dolmod.c
index 4f46682..1418174 100644 (file)
@@ -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 <fredrik@dolda2000.com>
  *  
  *  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;
@@ -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