free g_RxInBuf on Stop
authordrowe67 <drowe67@01035d8c-6547-0410-b346-abe4f91aad63>
Sat, 20 Oct 2012 22:50:34 +0000 (22:50 +0000)
committerdrowe67 <drowe67@01035d8c-6547-0410-b346-abe4f91aad63>
Sat, 20 Oct 2012 22:50:34 +0000 (22:50 +0000)
git-svn-id: https://svn.code.sf.net/p/freetel/code@783 01035d8c-6547-0410-b346-abe4f91aad63

fdmdv2/src/fdmdv2_main.cpp

index ab45ab84c251b7c367588c09b7f75bf885d661a1..8f877807b6b2f69f3d2c582807ed946899f66435 100644 (file)
@@ -1000,6 +1000,7 @@ void MainFrame::startRxStream()
         {
             wxMessageBox(wxT("Rx Error: No default output device."), wxT("Error"), wxOK);
             delete m_rxPa;
+           free(g_pRxOutBuf);
             m_RxRunning = false;
             return;
         }
@@ -1041,6 +1042,7 @@ void MainFrame::startRxStream()
             delete m_rxPa;
             fifo_destroy(m_rxUserdata->infifo);
             fifo_destroy(m_rxUserdata->outfifo);
+           free(g_pRxOutBuf);
             return;
         }
         m_rxErr = m_rxPa->streamStart();
@@ -1050,7 +1052,8 @@ void MainFrame::startRxStream()
             delete m_rxPa;
             fifo_destroy(m_rxUserdata->infifo);
             fifo_destroy(m_rxUserdata->outfifo);
-            return;
+           free(g_pRxOutBuf);
+           return;
         }
        printf("end startRxStream\n");
     }
@@ -1067,9 +1070,10 @@ void MainFrame::stopRxStream()
         m_RxRunning = false;
         m_rxPa->stop();
         m_rxPa->streamClose();
+       delete m_rxPa;
         fdmdv_destroy(g_pFDMDV);
         codec2_destroy(g_pCodec2);
-//        delete g_RxInBuf;
+       free(g_pRxOutBuf);
         fifo_destroy(m_rxUserdata->infifo);
         fifo_destroy(m_rxUserdata->outfifo);
         delete m_rxUserdata;