]> git.ipfire.org Git - people/ms/libloc.git/blobdiff - src/python/writer.c
python: Do not use any GNU-style initialisers for structs
[people/ms/libloc.git] / src / python / writer.c
index e21e95b33786c4aac7a1ffa44f8535d355c347a6..9e980035f93fdfeeaa9cb77310bc1e31af292f6f 100644 (file)
@@ -127,8 +127,19 @@ static PyObject* Writer_add_network(WriterObject* self, PyObject* args) {
 
        // Create network object
        int r = loc_writer_add_network(self->writer, &network, string);
-       if (r)
+       if (r) {
+               switch (r) {
+                       case -EINVAL:
+                               PyErr_SetString(PyExc_ValueError, "Invalid network");
+                               break;
+
+                       case -EBUSY:
+                               PyErr_SetString(PyExc_IndexError, "A network already exists here");
+                               break;
+               }
+
                return NULL;
+       }
 
        PyObject* obj = new_network(&NetworkType, network);
        loc_network_unref(network);
@@ -209,13 +220,13 @@ static struct PyGetSetDef Writer_getsetters[] = {
 
 PyTypeObject WriterType = {
        PyVarObject_HEAD_INIT(NULL, 0)
-       tp_name:                "location.Writer",
-       tp_basicsize:           sizeof(WriterObject),
-       tp_flags:               Py_TPFLAGS_DEFAULT|Py_TPFLAGS_BASETYPE,
-       tp_new:                 Writer_new,
-       tp_dealloc:             (destructor)Writer_dealloc,
-       tp_init:                (initproc)Writer_init,
-       tp_doc:                 "Writer object",
-       tp_methods:             Writer_methods,
-       tp_getset:              Writer_getsetters,
+       .tp_name =               "location.Writer",
+       .tp_basicsize =          sizeof(WriterObject),
+       .tp_flags =              Py_TPFLAGS_DEFAULT|Py_TPFLAGS_BASETYPE,
+       .tp_new =                Writer_new,
+       .tp_dealloc =            (destructor)Writer_dealloc,
+       .tp_init =               (initproc)Writer_init,
+       .tp_doc =                "Writer object",
+       .tp_methods =            Writer_methods,
+       .tp_getset =             Writer_getsetters,
 };