Showing the changes to python (1 of 1 file). Show all
Unified · Split
| @@ -256,6 +256,22 @@ static struct PyModuleDef moduledef = { · 255 unmodified lines | |||
| 256 | }; | 256 | }; |
| 257 | #endif | 257 | #endif |
| 258 | 258 | ||
| 259 | void | ||
| 260 | aubio_log_function(int level, const char *message, void *data) | ||
| 261 | { | ||
| 262 | // remove trailing \n | ||
| 263 | char *pos; | ||
| 264 | if ((pos=strchr(message, '\n')) != NULL) { | ||
| 265 | *pos = '\0'; | ||
| 266 | } | ||
| 267 | // warning or error | ||
| 268 | if (level == AUBIO_LOG_ERR) { | ||
| 269 | PyErr_Format(PyExc_RuntimeError, "%s", message); | ||
| 270 | } else { | ||
| 271 | PyErr_WarnEx(PyExc_UserWarning, message, 1); | ||
| 272 | } | ||
| 273 | } | ||
| 274 | |||
| 259 | static PyObject * | 275 | static PyObject * |
| 260 | initaubio (void) | 276 | initaubio (void) |
| 261 | { | 277 | { |
| @@ -315,6 +331,8 @@ initaubio (void) · 53 unmodified lines | |||
| 315 | // add ufunc | 331 | // add ufunc |
| 316 | add_ufuncs(m); | 332 | add_ufuncs(m); |
| 317 | 333 | ||
| 334 | aubio_log_set_level_function(AUBIO_LOG_ERR, aubio_log_function, NULL); | ||
| 335 | aubio_log_set_level_function(AUBIO_LOG_WRN, aubio_log_function, NULL); | ||
| 318 | return m; | 336 | return m; |
| 319 | } | 337 | } |
| 320 | 338 | ||