summaryrefslogtreecommitdiff
path: root/plugins/nullout
diff options
context:
space:
mode:
authorGravatar Alexey Yakovenko <wakeroid@gmail.com>2009-12-22 21:29:09 +0100
committerGravatar Alexey Yakovenko <wakeroid@gmail.com>2009-12-22 21:29:09 +0100
commit72c0be35abcbda89d376c640a99785ce28b4f02b (patch)
tree8975005b4db41c5616d5c97e547a89bd128d2fce /plugins/nullout
parentb98ce0097b2e661d9e69efc422701197b38c16d7 (diff)
fixed crash on unload of nullout plugin
Diffstat (limited to 'plugins/nullout')
-rw-r--r--plugins/nullout/nullout.c11
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;