+@@ -2044,8 +2048,10 @@ driver_close_device( void *driver_data )
+ /* stop input thread */
+ res = write( data->quitpipe[1], " ", 1 );
+ (void)res;
++if (data->thread) {
+ direct_thread_join( data->thread );
+ direct_thread_destroy( data->thread );
++}
+ close( data->quitpipe[0] );
+ close( data->quitpipe[1] );