diff options
author | 2009-12-22 21:29:09 +0100 | |
---|---|---|
committer | 2009-12-22 21:29:09 +0100 | |
commit | 72c0be35abcbda89d376c640a99785ce28b4f02b (patch) | |
tree | 8975005b4db41c5616d5c97e547a89bd128d2fce /plugins/nullout | |
parent | b98ce0097b2e661d9e69efc422701197b38c16d7 (diff) |
fixed crash on unload of nullout plugin
Diffstat (limited to 'plugins/nullout')
-rw-r--r-- | plugins/nullout/nullout.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/plugins/nullout/nullout.c b/plugins/nullout/nullout.c index 05934abf..5f3dd996 100644 --- a/plugins/nullout/nullout.c +++ b/plugins/nullout/nullout.c @@ -22,8 +22,8 @@ #include <string.h> #include "deadbeef.h" -#define trace(...) { fprintf(stderr, __VA_ARGS__); } -//#define trace(fmt,...) +//#define trace(...) { fprintf(stderr, __VA_ARGS__); } +#define trace(fmt,...) static DB_output_t plugin; DB_functions_t *deadbeef; @@ -80,6 +80,7 @@ pnull_get_endianness (void); int pnull_init (void) { + trace ("pnull_init\n"); state = OUTPUT_STATE_STOPPED; null_rate = 44100; null_terminate = 0; @@ -95,8 +96,12 @@ pnull_change_rate (int rate) { int pnull_free (void) { + trace ("pnull_free\n"); if (!null_terminate) { - null_terminate = 1; + if (null_tid) { + null_terminate = 1; + deadbeef->thread_join (null_tid); + } null_tid = 0; state = OUTPUT_STATE_STOPPED; null_terminate = 0; |