[TDA995x] avoid callback when already stopped
[deb_libcec.git] / src / lib / adapter / TDA995x / TDA995xCECAdapterCommunication.cpp
index 83df1199b26a9fe0a801c1cb02b01761eac6c5e1..d0041d9644f279ce305792775dbc1715ee4aa362 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * This file is part of the libCEC(R) library.
  *
- * libCEC(R) is Copyright (C) 2011-2012 Pulse-Eight Limited.  All rights reserved.
+ * libCEC(R) is Copyright (C) 2011-2013 Pulse-Eight Limited.  All rights reserved.
  * libCEC(R) is an original work, containing original code.
  *
  * libCEC(R) is a trademark of Pulse-Eight Limited.
@@ -217,7 +217,7 @@ uint16_t CTDA995xCECAdapterCommunication::GetFirmwareVersion(void)
 
   m_dev->Ioctl(CEC_IOCTL_GET_SW_VERSION, &vers);
   
-  return (vers.majorVersionNr * 100) + vers.minorVersionNr;
+  return vers.majorVersionNr;
 }
 
 
@@ -336,15 +336,16 @@ void *CTDA995xCECAdapterCommunication::Process(void)
       if (frame.service == CEC_RX_PKT)
       {
         cec_command cmd;
-       
+
         cec_command::Format(
           cmd, initiator, destination,
           ( frame.size > 3 ) ? cec_opcode(frame.data[0]) : CEC_OPCODE_NONE);
-       
+
         for( uint8_t i = 1; i < frame.size-3; i++ )
-           cmd.parameters.PushBack(frame.data[i]);
-       
-        m_callback->OnCommandReceived(cmd);
+          cmd.parameters.PushBack(frame.data[i]);
+
+        if (!IsStopped())
+          m_callback->OnCommandReceived(cmd);
       }
       else if (frame.service == CEC_ACK_PKT)
       {