@@ -1052,13 +1052,13 @@ pyalsahcontrolvalue_get1(struct pyalsahcontrolvalue *self, PyObject *args, int l
10521052 }
10531053 snd_ctl_elem_value_get_iec958 (self -> value , iec958 );
10541054 if (!list ) {
1055- PyTuple_SET_ITEM (t , 0 , PyUnicode_FromStringAndSize ((char * )iec958 -> status , sizeof (iec958 -> status )));
1056- PyTuple_SET_ITEM (t , 1 , PyUnicode_FromStringAndSize ((char * )iec958 -> subcode , sizeof (iec958 -> subcode )));
1057- PyTuple_SET_ITEM (t , 2 , PyUnicode_FromStringAndSize ((char * )iec958 -> dig_subframe , sizeof (iec958 -> dig_subframe )));
1055+ PyTuple_SET_ITEM (t , 0 , PyBytes_FromStringAndSize ((char * )iec958 -> status , sizeof (iec958 -> status )));
1056+ PyTuple_SET_ITEM (t , 1 , PyBytes_FromStringAndSize ((char * )iec958 -> subcode , sizeof (iec958 -> subcode )));
1057+ PyTuple_SET_ITEM (t , 2 , PyBytes_FromStringAndSize ((char * )iec958 -> dig_subframe , sizeof (iec958 -> dig_subframe )));
10581058 } else {
1059- PyList_SetItem (t , 0 , PyUnicode_FromStringAndSize ((char * )iec958 -> status , sizeof (iec958 -> status )));
1060- PyList_SetItem (t , 1 , PyUnicode_FromStringAndSize ((char * )iec958 -> subcode , sizeof (iec958 -> subcode )));
1061- PyList_SetItem (t , 2 , PyUnicode_FromStringAndSize ((char * )iec958 -> dig_subframe , sizeof (iec958 -> dig_subframe )));
1059+ PyList_SetItem (t , 0 , PyBytes_FromStringAndSize ((char * )iec958 -> status , sizeof (iec958 -> status )));
1060+ PyList_SetItem (t , 1 , PyBytes_FromStringAndSize ((char * )iec958 -> subcode , sizeof (iec958 -> subcode )));
1061+ PyList_SetItem (t , 2 , PyBytes_FromStringAndSize ((char * )iec958 -> dig_subframe , sizeof (iec958 -> dig_subframe )));
10621062 }
10631063 free (iec958 );
10641064 break ;
@@ -1176,30 +1176,33 @@ pyalsahcontrolvalue_settuple(struct pyalsahcontrolvalue *self, PyObject *args)
11761176 Py_DECREF (t );
11771177 Py_RETURN_NONE ;
11781178 }
1179- len = 0 ;
11801179 v = !list ? PyTuple_GET_ITEM (t , 0 ) : PyList_GetItem (t , 0 );
11811180 Py_INCREF (v );
1182- if (PyBytes_AsStringAndSize ( v , & str , & len ))
1181+ if (! PyBytes_Check ( v ))
11831182 goto err1 ;
1183+ len = PyBytes_Size (v );
11841184 if (len > (Py_ssize_t )sizeof (iec958 -> status ))
1185- len = sizeof (iec958 -> status );
1186- memcpy ( iec958 -> status , str , len );
1187- len = 0 ;
1185+ len = ( Py_ssize_t ) sizeof (iec958 -> status );
1186+ str = PyBytes_AsString ( v );
1187+ memcpy ( iec958 -> status , str , ( size_t ) len ) ;
11881188 v = !list ? PyTuple_GET_ITEM (t , 1 ) : PyList_GetItem (t , 1 );
11891189 Py_INCREF (v );
1190- if (PyBytes_AsStringAndSize ( v , & str , & len ))
1190+ if (! PyBytes_Check ( v ))
11911191 goto err1 ;
1192+ len = PyBytes_Size (v );
11921193 if (len > (Py_ssize_t )sizeof (iec958 -> subcode ))
1193- len = sizeof (iec958 -> subcode );
1194- memcpy ( iec958 -> subcode , str , len );
1195- len = 0 ;
1194+ len = ( Py_ssize_t ) sizeof (iec958 -> subcode );
1195+ str = PyBytes_AsString ( v );
1196+ memcpy ( iec958 -> subcode , str , ( size_t ) len ) ;
11961197 v = !list ? PyTuple_GET_ITEM (t , 2 ) : PyList_GetItem (t , 2 );
11971198 Py_INCREF (v );
1198- if (PyBytes_AsStringAndSize ( v , & str , & len ))
1199+ if (! PyBytes_Check ( v ))
11991200 goto err1 ;
1201+ len = PyBytes_Size (v );
12001202 if (len > (Py_ssize_t )sizeof (iec958 -> dig_subframe ))
1201- len = sizeof (iec958 -> dig_subframe );
1202- memcpy (iec958 -> dig_subframe , str , len );
1203+ len = (Py_ssize_t )sizeof (iec958 -> dig_subframe );
1204+ str = PyBytes_AsString (v );
1205+ memcpy (iec958 -> dig_subframe , str , (size_t )len );
12031206 free (iec958 );
12041207 break ;
12051208 err1 :
0 commit comments