]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/msw/controls_wrap.cpp
embedded sample's README updates
[wxWidgets.git] / wxPython / src / msw / controls_wrap.cpp
index 0aae7da62235aafbdd9dc8855b1c0f4a749da724..5ee8dfc3c5e0a865bf48f1e7edc77a38883885cb 100644 (file)
@@ -386,7 +386,15 @@ SWIG_CheckLongInRange(long value, const char* type,
 SWIGSTATICINLINE(long)
 SWIG_AsLong(PyObject * obj)
 {
-  return PyInt_Check(obj) ? PyInt_AsLong(obj) : PyLong_AsLong(obj);
+    if (PyNumber_Check(obj))
+        return PyInt_AsLong(obj);
+    else {
+        PyObject* errmsg = PyString_FromFormat("Expected number, got %s",
+                                               obj->ob_type->tp_name);
+        PyErr_SetObject(PyExc_TypeError, errmsg);
+        Py_DECREF(errmsg);
+        return 0;
+    }
 }
 
 
@@ -529,9 +537,9 @@ SWIG_AsUnsignedLong(PyObject * obj)
   if (PyLong_Check(obj)) {
     return PyLong_AsUnsignedLong(obj);
   } else {
-    long i = PyInt_AsLong(obj);
+    long i = SWIG_AsLong(obj);
     if ( !PyErr_Occurred() && (i < 0)) {
-      PyErr_SetString(PyExc_TypeError, "negative value for unsigned type");
+      PyErr_SetString(PyExc_TypeError, "negative value received for unsigned type");
     }
     return i;
   }