Joining the thread before the MtpFfsHandle object's destruction

We're detaching the thread t in sendEvent. This means the thread
continues to execute independently, even after the MtpFfsHandle object
might have been destroyed. Instead of detaching threads, Join the thread
before MtpFfsHandle object's destruction.
Bug: 355382936
Flag: EXEMPT bug fix
Test: Build mtp_handle_fuzzer and run on the target device
Test: Run mtp in host and device mode

Change-Id: I924704575af89e747793c5d8647570d31cd14af9
diff --git a/media/mtp/MtpFfsHandle.h b/media/mtp/MtpFfsHandle.h
index 51cdef0..8f4b769 100644
--- a/media/mtp/MtpFfsHandle.h
+++ b/media/mtp/MtpFfsHandle.h
@@ -60,9 +60,7 @@
     bool mCanceled;
     bool mBatchCancel;
 
-    std::mutex m;
-    std::condition_variable cv;
-    std::atomic<int> child_threads{0};
+    std::vector<std::thread> mChildThreads;
 
     android::base::unique_fd mControl;
     // "in" from the host's perspective => sink for mtp server