New submission from user:

test patch

----------
files: python.diff
messages: 55112
nosy: user
severity: normal
status: open
title: test

__________________________________
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue1000>
__________________________________
Index: Modules/_ssl.c
===================================================================
--- Modules/_ssl.c      (revision 51574)
+++ Modules/_ssl.c      (working copy)
@@ -317,7 +317,7 @@
 
        if (!PyArg_ParseTuple(args, "O!|zz:ssl",
                              PySocketModule.Sock_Type,
-                             (PyObject*)&Sock,
+                             &Sock,
                              &key_file, &cert_file))
                return NULL;
 
Index: Modules/_ctypes/callproc.c
===================================================================
--- Modules/_ctypes/callproc.c  (revision 51574)
+++ Modules/_ctypes/callproc.c  (working copy)
@@ -1230,11 +1230,11 @@
 
 static PyObject *py_dl_close(PyObject *self, PyObject *args)
 {
-       void * handle;
+       int handle;
 
        if (!PyArg_ParseTuple(args, "i:dlclose", &handle))
                return NULL;
-       if (dlclose(handle)) {
+       if (dlclose((void*)handle)) {
                PyErr_SetString(PyExc_OSError,
                                       ctypes_dlerror());
                return NULL;
@@ -1246,12 +1246,12 @@
 static PyObject *py_dl_sym(PyObject *self, PyObject *args)
 {
        char *name;
-       void *handle;
+       int handle;
        void *ptr;
 
        if (!PyArg_ParseTuple(args, "is:dlsym", &handle, &name))
                return NULL;
-       ptr = ctypes_dlsym(handle, name);
+       ptr = ctypes_dlsym((void*)handle, name);
        if (!ptr) {
                PyErr_SetString(PyExc_OSError,
                                       ctypes_dlerror());
@@ -1269,7 +1269,7 @@
 static PyObject *
 call_function(PyObject *self, PyObject *args)
 {
-       PPROC func;
+       int func;
        PyObject *arguments;
        PyObject *result;
 
@@ -1279,7 +1279,7 @@
                              &PyTuple_Type, &arguments))
                return NULL;
 
-       result =  _CallProc(func,
+       result =  _CallProc((PPROC)func,
                            arguments,
 #ifdef MS_WIN32
                            NULL,
@@ -1300,7 +1300,7 @@
 static PyObject *
 call_cdeclfunction(PyObject *self, PyObject *args)
 {
-       PPROC func;
+       int func;
        PyObject *arguments;
        PyObject *result;
 
@@ -1310,7 +1310,7 @@
                              &PyTuple_Type, &arguments))
                return NULL;
 
-       result =  _CallProc(func,
+       result =  _CallProc((PPROC)func,
                            arguments,
 #ifdef MS_WIN32
                            NULL,
@@ -1493,7 +1493,7 @@
 #else
                              "On:resize",
 #endif
-                             (PyObject *)&obj, &size))
+                             &obj, &size))
                return NULL;
 
        dict = PyObject_stgdict((PyObject *)obj);
Index: Modules/dbmmodule.c
===================================================================
--- Modules/dbmmodule.c (revision 51574)
+++ Modules/dbmmodule.c (working copy)
@@ -208,11 +208,13 @@
 static PyObject *
 dbm_has_key(register dbmobject *dp, PyObject *args)
 {
+       char *tmp_ptr;
        datum key, val;
        int tmp_size;
        
-       if (!PyArg_ParseTuple(args, "s#:has_key", &key.dptr, &tmp_size))
+       if (!PyArg_ParseTuple(args, "s#:has_key", &tmp_ptr, &tmp_size))
                return NULL;
+       key.dptr = tmp_ptr;
        key.dsize = tmp_size;
         check_dbmobject_open(dp);
        val = dbm_fetch(dp->di_dbm, key);
@@ -224,11 +226,13 @@
 {
        datum key, val;
        PyObject *defvalue = Py_None;
+       char *tmp_ptr;
        int tmp_size;
 
        if (!PyArg_ParseTuple(args, "s#|O:get",
-                              &key.dptr, &tmp_size, &defvalue))
+                              &tmp_ptr, &tmp_size, &defvalue))
                return NULL;
+       key.dptr = tmp_ptr;
        key.dsize = tmp_size;
         check_dbmobject_open(dp);
        val = dbm_fetch(dp->di_dbm, key);
@@ -245,11 +249,13 @@
 {
        datum key, val;
        PyObject *defvalue = NULL;
+       char *tmp_ptr;
        int tmp_size;
 
        if (!PyArg_ParseTuple(args, "s#|S:setdefault",
-                              &key.dptr, &tmp_size, &defvalue))
+                              &tmp_ptr, &tmp_size, &defvalue))
                return NULL;
+       key.dptr = tmp_ptr;
        key.dsize = tmp_size;
         check_dbmobject_open(dp);
        val = dbm_fetch(dp->di_dbm, key);
Index: Modules/audioop.c
===================================================================
--- Modules/audioop.c   (revision 51574)
+++ Modules/audioop.c   (working copy)
@@ -472,8 +472,12 @@
         double aj_m1, aj_lm1;
         double sum_ri_2, sum_aij_2, sum_aij_ri, result, best_result, factor;
 
+       /* Passing a short** for an 's' argument is correct only
+          if the string contents is aligned for interpretation
+          as short[]. Due to the definition of PyStringObject,
+          this is currently (Python 2.6) the case. */
         if ( !PyArg_ParseTuple(args, "s#s#:findfit",
-                              &cp1, &len1, &cp2, &len2) )
+                              (char**)&cp1, &len1, (char**)&cp2, &len2) )
                 return 0;
         if ( len1 & 1 || len2 & 1 ) {
                 PyErr_SetString(AudioopError, "Strings should be even-sized");
@@ -530,7 +534,7 @@
         double sum_ri_2, sum_aij_ri, result;
 
         if ( !PyArg_ParseTuple(args, "s#s#:findfactor",
-                              &cp1, &len1, &cp2, &len2) )
+                              (char**)&cp1, &len1, (char**)&cp2, &len2) )
                 return 0;
         if ( len1 & 1 || len2 & 1 ) {
                 PyErr_SetString(AudioopError, "Strings should be even-sized");
@@ -562,7 +566,8 @@
         double aj_m1, aj_lm1;
         double result, best_result;
 
-        if ( !PyArg_ParseTuple(args, "s#i:findmax", &cp1, &len1, &len2) )
+        if ( !PyArg_ParseTuple(args, "s#i:findmax", 
+                              (char**)&cp1, &len1, &len2) )
                 return 0;
         if ( len1 & 1 ) {
                 PyErr_SetString(AudioopError, "Strings should be even-sized");
_______________________________________________
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to