diff options
-rw-r--r-- | ffnetdev.c | 14 | ||||
-rw-r--r-- | ffnetdev.h | 1 | ||||
-rw-r--r-- | remote.c | 7 | ||||
-rw-r--r-- | rfb.h | 5 | ||||
-rw-r--r-- | tsworker.h | 4 | ||||
-rw-r--r-- | vncEncoder.h | 4 |
6 files changed, 26 insertions, 9 deletions
@@ -15,7 +15,6 @@ #include "netosd.h" #include "ffnetdev.h" #include "streamdevice.h" -#include "remote.h" #include "osdworker.h" #include "clientcontrol.h" #include "config.h" @@ -62,6 +61,7 @@ cPluginFFNetDev::cPluginFFNetDev(void) EnableRemote = false; m_origPrimaryDevice = -1; m_Remote = NULL; + m_LearningThread = NULL; config.iAutoSetPrimaryDVB = 0; } @@ -252,9 +252,11 @@ void cPluginFFNetDev::SetPrimaryDevice() m_Remote = new cMyRemote(str); } - + if (!cRemote::HasKeys()) - new cLearningThread(); + { + m_LearningThread = new cLearningThread(); + } dsyslog("[ffnetdev] remote control enabled.\n"); } else @@ -286,6 +288,12 @@ void cPluginFFNetDev::RestorePrimaryDevice() Remotes.Del(m_Remote); m_Remote = NULL; } + + if (m_LearningThread) + { + delete m_LearningThread; + m_LearningThread = NULL; + } } void cPluginFFNetDev::SetClientName(char* ClientName) @@ -28,6 +28,7 @@ private: bool EnableRemote; int m_origPrimaryDevice; char m_ClientName[20]; + cLearningThread *m_LearningThread; public: cPluginFFNetDev(void); @@ -62,12 +62,11 @@ void cLearningThread::Action(void) { dsyslog("[ffnetdev] ClientIsReady=%d OsdIsOpen=%d SkinsIsOpen=%d", cOSDWorker::ClientIsReady(), cOsd::IsOpen(), Skins.IsOpen()); - delete this; return; } - +#ifdef DEBUG + fprintf(stderr, "[ffnetdev] start learning keys"); +#endif dsyslog("[ffnetdev] start learning keys"); Interface->LearnKeys(); - - delete this; } @@ -33,9 +33,10 @@ #define RFB_H__ // Define the CARD* types -typedef unsigned long CARD32; -typedef unsigned short CARD16; +typedef unsigned int CARD32; +typedef unsigned short int CARD16; typedef unsigned char CARD8; + // Define the port number offsets #define FLASH_PORT_OFFSET 5400 @@ -16,7 +16,11 @@ #include "netosd.h" #include "ffnetdev.h" +#ifdef _LP64 +typedef unsigned long u64; +#else typedef unsigned long long u64; +#endif #define TCP_SEND_SIZE (1024 * 20) diff --git a/vncEncoder.h b/vncEncoder.h index b59bfef..6ee7ea6 100644 --- a/vncEncoder.h +++ b/vncEncoder.h @@ -39,7 +39,11 @@ class vncEncoder; typedef unsigned char BYTE; typedef unsigned int UINT; +#ifdef _LP64 +typedef unsigned int DWORD; +#else typedef unsigned long DWORD; +#endif //static |