srd_dbg("Adding '%s' to module path.", path);
new_path = g_string_sized_new(256);
- g_string_assign(new_path, g_strdup(path));
+ g_string_assign(new_path, path);
py_cur_path = PySys_GetObject("path");
for (i = 0; i < PyList_Size(py_cur_path); i++) {
- g_string_append(new_path, g_strdup(G_SEARCHPATH_SEPARATOR_S));
+ g_string_append(new_path, G_SEARCHPATH_SEPARATOR_S);
py_item = PyList_GetItem(py_cur_path, i);
if (!PyUnicode_Check(py_item))
/* Shouldn't happen. */
if (py_str_as_str(py_item, &item) != SRD_OK)
continue;
g_string_append(new_path, item);
+ g_free(item);
}
/* Convert to wide chars. */
*/
if (PyDict_SetItemString(py_di_options, key, py_optval) == -1)
goto err_out;
+ g_free(key);
}
ret = SRD_OK;
g_free(pdo);
}
g_slist_free(di->pd_output);
+ g_free(di);
}
/** @private */
}
g_variant_ref_sink(o->def);
d->options = g_slist_append(d->options, o);
+ g_free(key);
}
Py_DecRef(py_keys);
Py_DecRef(py_values);
/* The module itself. */
Py_XDECREF(dec->py_mod);
- /* TODO: (g_)free dec itself? */
+ g_free(dec);
return SRD_OK;
}