Tuesday, May 8, 2018


A New Bug & Linux fixes
Date: 5/7/2018
Author: Tyler Murray
The first week of the third month of final project, my goal was to work on fixing the memory leaks on Linux side. I manage to fix two errors on Linux side before a team has report bugs in GAudio. The two fixes I made are related to structures not being “zeroed-out” before using them. Now switching to a new branch to focus on fixing the GAudio bugs and pushing a new release as soon as possible. The reported bugs are
  1.  Master Volume is never initialized.
  2. Calling stopStream() after calling pauseStream() causes the app to stall.
  3. No documentation on what index is what channel in all SetChannel-like functions.


At the end of the first week I got “bug” 1 & 3 done pretty quickly but bug 2 on the other hand took me a bit to narrow it down. I figured out that the pauseStream() calls a XAudio2 func to stop the stream and if the stream is stopped it never seems to exit the while loop in the streamThread. So far, my current fix for the problem is to call the XAudio2 func to start the stream if the stream is stopped. This fix allows it to exit the while loop thus making it exit the loop. Now all is left to do is to double check if the audio truly stops when the stop function is called. My goal for this week is to finish up the GAudio “bugs”, update the doxygen documentation since I added more comments in the code, and push out a release with the fixes. Then after the release return back to the master branch and work on Linux memory leaks again.

No comments:

Post a Comment