@@ -1436,7 +1436,8 @@ static PyMethodDef unicodedata_functions[] = {
1436
1436
};
1437
1437
1438
1438
static void
1439
- ucd_dealloc (PreviousDBVersion * self ) {
1439
+ ucd_dealloc (PreviousDBVersion * self )
1440
+ {
1440
1441
PyTypeObject * tp = Py_TYPE (self );
1441
1442
PyObject_Del (self );
1442
1443
Py_DECREF (tp );
@@ -1447,7 +1448,7 @@ static PyType_Slot unicodedata_ucd_type_slots[] = {
1447
1448
{Py_tp_getattro , PyObject_GenericGetAttr },
1448
1449
{Py_tp_methods , unicodedata_functions },
1449
1450
{Py_tp_members , DB_members },
1450
- {0 ,0 }
1451
+ {0 , 0 }
1451
1452
};
1452
1453
1453
1454
static PyType_Spec unicodedata_ucd_type_spec = {
@@ -1492,37 +1493,47 @@ PyInit_unicodedata(void)
1492
1493
state -> ucd_type = (PyTypeObject * )PyType_FromSpec (
1493
1494
& unicodedata_ucd_type_spec );
1494
1495
if (state -> ucd_type == NULL ) {
1495
- return NULL ;
1496
+ goto error ;
1496
1497
}
1497
1498
}
1498
1499
1499
- PyModule_AddStringConstant (mod , "unidata_version" , UNIDATA_VERSION );
1500
- Py_INCREF (state -> ucd_type );
1501
1500
PyModule_AddObject (mod , "UCD" , (PyObject * )state -> ucd_type );
1502
1501
1502
+ if (PyModule_AddStringConstant (
1503
+ mod , "unidata_version" , UNIDATA_VERSION ) < 0 ) {
1504
+ goto error ;
1505
+ }
1506
+
1507
+ if (PyModule_AddType (mod , state -> ucd_type ) < 0 ) {
1508
+ goto error ;
1509
+ }
1503
1510
1504
1511
/* Previous versions */
1505
1512
PyObject * v ;
1506
1513
v = new_previous_version (state , "3.2.0" , get_change_3_2_0 , normalization_3_2_0 );
1507
1514
if (v == NULL ) {
1508
- return NULL ;
1515
+ goto error ;
1509
1516
}
1510
1517
1511
1518
if (PyModule_AddObject (mod , "ucd_3_2_0" , v ) < 0 ) {
1512
1519
Py_DECREF (v );
1513
- return NULL ;
1520
+ goto error ;
1514
1521
}
1515
1522
1516
1523
/* Export C API */
1517
1524
v = PyCapsule_New ((void * )& hashAPI , PyUnicodeData_CAPSULE_NAME , NULL );
1518
1525
if (v == NULL ) {
1519
- return NULL ;
1526
+ goto error ;
1520
1527
}
1521
1528
if (PyModule_AddObject (mod , "ucnhash_CAPI" , v ) < 0 ) {
1522
1529
Py_DECREF (v );
1523
- return NULL ;
1530
+ goto error ;
1524
1531
}
1525
1532
return mod ;
1533
+
1534
+ error :
1535
+ Py_DECREF (mod );
1536
+ return NULL ;
1526
1537
}
1527
1538
1528
1539
/*
0 commit comments