@@ -98,9 +98,6 @@ dbm_length(dbmobject *dp)
98
98
PyTypeObject * tp = Py_TYPE (dp );
99
99
_dbm_state * state = PyType_GetModuleState (tp );
100
100
assert (state != NULL );
101
- if (state == NULL ) {
102
- return -1 ;
103
- }
104
101
if (dp -> di_dbm == NULL ) {
105
102
PyErr_SetString (state -> dbm_error , "DBM object has already been closed" );
106
103
return -1 ;
@@ -125,11 +122,10 @@ dbm_subscript(dbmobject *dp, PyObject *key)
125
122
Py_ssize_t tmp_size ;
126
123
PyTypeObject * tp = Py_TYPE (dp );
127
124
_dbm_state * state = PyType_GetModuleState (tp );
128
- if (state == NULL ) {
125
+ assert (state != NULL );
126
+ if (!PyArg_Parse (key , "s#" , & krec .dptr , & tmp_size )) {
129
127
return NULL ;
130
128
}
131
- if (!PyArg_Parse (key , "s#" , & krec .dptr , & tmp_size ) )
132
- return NULL ;
133
129
134
130
krec .dsize = tmp_size ;
135
131
check_dbmobject_open (dp , state -> dbm_error );
@@ -159,9 +155,7 @@ dbm_ass_sub(dbmobject *dp, PyObject *v, PyObject *w)
159
155
}
160
156
PyTypeObject * tp = Py_TYPE (dp );
161
157
_dbm_state * state = PyType_GetModuleState (tp );
162
- if (state == NULL ) {
163
- return -1 ;
164
- }
158
+ assert (state != NULL );
165
159
krec .dsize = tmp_size ;
166
160
if (dp -> di_dbm == NULL ) {
167
161
PyErr_SetString (state -> dbm_error , "DBM object has already been closed" );
@@ -237,9 +231,7 @@ _dbm_dbm_keys_impl(dbmobject *self, PyTypeObject *cls)
237
231
int err ;
238
232
239
233
_dbm_state * state = PyType_GetModuleState (cls );
240
- if (state == NULL ) {
241
- return NULL ;
242
- }
234
+ assert (state != NULL );
243
235
check_dbmobject_open (self , state -> dbm_error );
244
236
v = PyList_New (0 );
245
237
if (v == NULL ) {
@@ -271,9 +263,7 @@ dbm_contains(PyObject *self, PyObject *arg)
271
263
272
264
PyTypeObject * tp = Py_TYPE (dp );
273
265
_dbm_state * state = PyType_GetModuleState (tp );
274
- if (state == NULL ) {
275
- return -1 ;
276
- }
266
+ assert (state != NULL );
277
267
if ((dp )-> di_dbm == NULL ) {
278
268
PyErr_SetString (state -> dbm_error ,
279
269
"DBM object has already been closed" );
@@ -316,15 +306,14 @@ _dbm_dbm_get_impl(dbmobject *self, PyTypeObject *cls, const char *key,
316
306
{
317
307
datum dbm_key , val ;
318
308
_dbm_state * state = PyType_GetModuleState (cls );
319
- if (state == NULL ) {
320
- return NULL ;
321
- }
309
+ assert (state != NULL );
322
310
dbm_key .dptr = (char * )key ;
323
311
dbm_key .dsize = key_length ;
324
312
check_dbmobject_open (self , state -> dbm_error );
325
313
val = dbm_fetch (self -> di_dbm , dbm_key );
326
- if (val .dptr != NULL )
314
+ if (val .dptr != NULL ) {
327
315
return PyBytes_FromStringAndSize (val .dptr , val .dsize );
316
+ }
328
317
329
318
Py_INCREF (default_value );
330
319
return default_value ;
@@ -351,15 +340,14 @@ _dbm_dbm_setdefault_impl(dbmobject *self, PyTypeObject *cls, const char *key,
351
340
datum dbm_key , val ;
352
341
Py_ssize_t tmp_size ;
353
342
_dbm_state * state = PyType_GetModuleState (cls );
354
- if (state == NULL ) {
355
- return NULL ;
356
- }
343
+ assert (state != NULL );
357
344
dbm_key .dptr = (char * )key ;
358
345
dbm_key .dsize = key_length ;
359
346
check_dbmobject_open (self , state -> dbm_error );
360
347
val = dbm_fetch (self -> di_dbm , dbm_key );
361
- if (val .dptr != NULL )
348
+ if (val .dptr != NULL ) {
362
349
return PyBytes_FromStringAndSize (val .dptr , val .dsize );
350
+ }
363
351
if (default_value == NULL ) {
364
352
default_value = PyBytes_FromStringAndSize (NULL , 0 );
365
353
if (default_value == NULL ) {
@@ -461,19 +449,23 @@ dbmopen_impl(PyObject *module, PyObject *filename, const char *flags,
461
449
{
462
450
int iflags ;
463
451
_dbm_state * state = get_dbm_state (module );
464
- if (state == NULL ) {
465
- return NULL ;
466
- }
467
- if ( strcmp (flags , "r" ) == 0 )
452
+ assert (state != NULL );
453
+ if (strcmp (flags , "r" ) == 0 ) {
468
454
iflags = O_RDONLY ;
469
- else if ( strcmp (flags , "w" ) == 0 )
455
+ }
456
+ else if (strcmp (flags , "w" ) == 0 ) {
470
457
iflags = O_RDWR ;
471
- else if ( strcmp (flags , "rw" ) == 0 ) /* B/W compat */
458
+ }
459
+ else if (strcmp (flags , "rw" ) == 0 ) {
460
+ /* B/W compat */
472
461
iflags = O_RDWR |O_CREAT ;
473
- else if ( strcmp (flags , "c" ) == 0 )
462
+ }
463
+ else if (strcmp (flags , "c" ) == 0 ) {
474
464
iflags = O_RDWR |O_CREAT ;
475
- else if ( strcmp (flags , "n" ) == 0 )
465
+ }
466
+ else if (strcmp (flags , "n" ) == 0 ) {
476
467
iflags = O_RDWR |O_CREAT |O_TRUNC ;
468
+ }
477
469
else {
478
470
PyErr_SetString (state -> dbm_error ,
479
471
"arg 2 to open should be 'r', 'w', 'c', or 'n'" );
0 commit comments