summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorStanislaw Halik <sthalik@misaki.pl>2013-10-19 17:06:23 +0200
committerStanislaw Halik <sthalik@misaki.pl>2013-10-19 17:06:23 +0200
commit79697936ef3ce7f0bbd1965931cdfb4b2c4c9f5b (patch)
tree91e36f8ffc9add565bcc74cb684f613bbdaa8db7
parent17f5ad8bc8a10668f4e0968fd5a6c14ac4a034aa (diff)
Fix proto/filter dtor not being called
Signed-off-by: Stanislaw Halik <sthalik@misaki.pl> Reported-by: mm0zct
-rw-r--r--ftnoir_filter_accela/ftnoir_filter_accela.h2
-rw-r--r--ftnoir_filter_base/ftnoir_filter_base.h4
-rw-r--r--ftnoir_filter_ewma2/ftnoir_filter_ewma2.h2
-rw-r--r--ftnoir_protocol_base/ftnoir_protocol_base.h4
-rw-r--r--ftnoir_protocol_fg/ftnoir_protocol_fg.h2
-rw-r--r--ftnoir_protocol_fsuipc/ftnoir_protocol_fsuipc.h2
-rw-r--r--ftnoir_protocol_ft/ftnoir_protocol_ft.cpp1
-rw-r--r--ftnoir_protocol_ft/ftnoir_protocol_ft.h2
-rw-r--r--ftnoir_protocol_ftn/ftnoir_protocol_ftn.h2
-rw-r--r--ftnoir_protocol_libevdev/ftnoir_protocol_libevdev.h2
-rw-r--r--ftnoir_protocol_mouse/ftnoir_protocol_mouse.h2
-rw-r--r--ftnoir_protocol_sc/ftnoir_protocol_sc.h2
-rw-r--r--ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.h2
-rw-r--r--ftnoir_protocol_wine/ftnoir_protocol_wine.h2
14 files changed, 18 insertions, 13 deletions
diff --git a/ftnoir_filter_accela/ftnoir_filter_accela.h b/ftnoir_filter_accela/ftnoir_filter_accela.h
index 4afe127b..f1807fd0 100644
--- a/ftnoir_filter_accela/ftnoir_filter_accela.h
+++ b/ftnoir_filter_accela/ftnoir_filter_accela.h
@@ -42,7 +42,7 @@ class FTNoIR_Filter : public IFilter
{
public:
FTNoIR_Filter();
- ~FTNoIR_Filter();
+ virtual ~FTNoIR_Filter();
void FilterHeadPoseData(const double* target_camera_position, double *new_camera_position, const double* last_post_filter_values);
void Initialize() {
first_run = true;
diff --git a/ftnoir_filter_base/ftnoir_filter_base.h b/ftnoir_filter_base/ftnoir_filter_base.h
index fe1ad19a..48a4a6b9 100644
--- a/ftnoir_filter_base/ftnoir_filter_base.h
+++ b/ftnoir_filter_base/ftnoir_filter_base.h
@@ -12,11 +12,13 @@
struct IFilter
{
- virtual ~IFilter() {}
+ virtual ~IFilter() = 0;
virtual void FilterHeadPoseData(const double *target_camera_position, double *new_camera_position, const double *last_post_filter) = 0;
virtual void Initialize() = 0;
};
+inline IFilter::~IFilter() { }
+
struct IFilterDialog
{
virtual ~IFilterDialog() {}
diff --git a/ftnoir_filter_ewma2/ftnoir_filter_ewma2.h b/ftnoir_filter_ewma2/ftnoir_filter_ewma2.h
index 656b2895..7f2f21e6 100644
--- a/ftnoir_filter_ewma2/ftnoir_filter_ewma2.h
+++ b/ftnoir_filter_ewma2/ftnoir_filter_ewma2.h
@@ -41,7 +41,7 @@ class FTNoIR_Filter : public IFilter
{
public:
FTNoIR_Filter();
- ~FTNoIR_Filter();
+ virtual ~FTNoIR_Filter();
void Initialize() {}
void FilterHeadPoseData(const double *target_camera_position,
diff --git a/ftnoir_protocol_base/ftnoir_protocol_base.h b/ftnoir_protocol_base/ftnoir_protocol_base.h
index 5db49f01..e4ca1977 100644
--- a/ftnoir_protocol_base/ftnoir_protocol_base.h
+++ b/ftnoir_protocol_base/ftnoir_protocol_base.h
@@ -39,12 +39,14 @@
struct IProtocol
{
- virtual ~IProtocol() {}
+ virtual ~IProtocol() = 0;
virtual bool checkServerInstallationOK() = 0;
virtual void sendHeadposeToGame( const double* headpose ) = 0;
virtual QString getGameName() = 0;
};
+inline IProtocol::~IProtocol() { }
+
struct IProtocolDialog
{
virtual ~IProtocolDialog() {}
diff --git a/ftnoir_protocol_fg/ftnoir_protocol_fg.h b/ftnoir_protocol_fg/ftnoir_protocol_fg.h
index 43d1b05a..9a4f304c 100644
--- a/ftnoir_protocol_fg/ftnoir_protocol_fg.h
+++ b/ftnoir_protocol_fg/ftnoir_protocol_fg.h
@@ -44,7 +44,7 @@ class FTNoIR_Protocol : public IProtocol
{
public:
FTNoIR_Protocol();
- ~FTNoIR_Protocol();
+ virtual ~FTNoIR_Protocol();
bool checkServerInstallationOK();
void sendHeadposeToGame(const double *headpose);
QString getGameName() {
diff --git a/ftnoir_protocol_fsuipc/ftnoir_protocol_fsuipc.h b/ftnoir_protocol_fsuipc/ftnoir_protocol_fsuipc.h
index 52b2cd98..87c6a3a4 100644
--- a/ftnoir_protocol_fsuipc/ftnoir_protocol_fsuipc.h
+++ b/ftnoir_protocol_fsuipc/ftnoir_protocol_fsuipc.h
@@ -59,7 +59,7 @@ class FTNoIR_Protocol : public IProtocol
{
public:
FTNoIR_Protocol();
- ~FTNoIR_Protocol();
+ virtual ~FTNoIR_Protocol();
bool checkServerInstallationOK();
void sendHeadposeToGame(const double* headpose);
QString getGameName() {
diff --git a/ftnoir_protocol_ft/ftnoir_protocol_ft.cpp b/ftnoir_protocol_ft/ftnoir_protocol_ft.cpp
index 27e88136..65d877a7 100644
--- a/ftnoir_protocol_ft/ftnoir_protocol_ft.cpp
+++ b/ftnoir_protocol_ft/ftnoir_protocol_ft.cpp
@@ -61,6 +61,7 @@ FTNoIR_Protocol::~FTNoIR_Protocol()
FTIRViewsLib.unload();
}
dummyTrackIR.kill();
+ dummyTrackIR.waitForFinished(5);
}
//
diff --git a/ftnoir_protocol_ft/ftnoir_protocol_ft.h b/ftnoir_protocol_ft/ftnoir_protocol_ft.h
index cd77bbe4..e13d260f 100644
--- a/ftnoir_protocol_ft/ftnoir_protocol_ft.h
+++ b/ftnoir_protocol_ft/ftnoir_protocol_ft.h
@@ -53,7 +53,7 @@ class FTNoIR_Protocol : public IProtocol
{
public:
FTNoIR_Protocol();
- ~FTNoIR_Protocol();
+ virtual ~FTNoIR_Protocol();
bool checkServerInstallationOK( );
void sendHeadposeToGame( const double *headpose );
QString getGameName() {
diff --git a/ftnoir_protocol_ftn/ftnoir_protocol_ftn.h b/ftnoir_protocol_ftn/ftnoir_protocol_ftn.h
index 4e814ddf..9aee73ac 100644
--- a/ftnoir_protocol_ftn/ftnoir_protocol_ftn.h
+++ b/ftnoir_protocol_ftn/ftnoir_protocol_ftn.h
@@ -43,7 +43,7 @@ class FTNoIR_Protocol : public IProtocol
{
public:
FTNoIR_Protocol();
- ~FTNoIR_Protocol();
+ virtual ~FTNoIR_Protocol();
bool checkServerInstallationOK();
void sendHeadposeToGame(const double *headpose);
QString getGameName() {
diff --git a/ftnoir_protocol_libevdev/ftnoir_protocol_libevdev.h b/ftnoir_protocol_libevdev/ftnoir_protocol_libevdev.h
index 3c6f591c..aabd3e51 100644
--- a/ftnoir_protocol_libevdev/ftnoir_protocol_libevdev.h
+++ b/ftnoir_protocol_libevdev/ftnoir_protocol_libevdev.h
@@ -21,7 +21,7 @@ class FTNoIR_Protocol : public IProtocol
{
public:
FTNoIR_Protocol();
- ~FTNoIR_Protocol();
+ virtual ~FTNoIR_Protocol();
bool checkServerInstallationOK() {
return dev != NULL;
}
diff --git a/ftnoir_protocol_mouse/ftnoir_protocol_mouse.h b/ftnoir_protocol_mouse/ftnoir_protocol_mouse.h
index 1eb80b12..1ce72f69 100644
--- a/ftnoir_protocol_mouse/ftnoir_protocol_mouse.h
+++ b/ftnoir_protocol_mouse/ftnoir_protocol_mouse.h
@@ -58,7 +58,7 @@ class FTNoIR_Protocol : public IProtocol
{
public:
FTNoIR_Protocol();
- ~FTNoIR_Protocol();
+ virtual ~FTNoIR_Protocol();
bool checkServerInstallationOK();
void sendHeadposeToGame( const double *headpose);
QString getGameName() {
diff --git a/ftnoir_protocol_sc/ftnoir_protocol_sc.h b/ftnoir_protocol_sc/ftnoir_protocol_sc.h
index 9ac56b30..e17cabb5 100644
--- a/ftnoir_protocol_sc/ftnoir_protocol_sc.h
+++ b/ftnoir_protocol_sc/ftnoir_protocol_sc.h
@@ -81,7 +81,7 @@ class FTNoIR_Protocol : public IProtocol
{
public:
FTNoIR_Protocol();
- ~FTNoIR_Protocol();
+ virtual ~FTNoIR_Protocol();
bool checkServerInstallationOK();
void sendHeadposeToGame(const double* headpose);
QString getGameName() {
diff --git a/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.h b/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.h
index 2fe53669..c4db29e4 100644
--- a/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.h
+++ b/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.h
@@ -42,7 +42,7 @@ class FTNoIR_Protocol : public IProtocol
{
public:
FTNoIR_Protocol();
- ~FTNoIR_Protocol();
+ virtual ~FTNoIR_Protocol();
bool checkServerInstallationOK() {
return true;
}
diff --git a/ftnoir_protocol_wine/ftnoir_protocol_wine.h b/ftnoir_protocol_wine/ftnoir_protocol_wine.h
index 01bfc93d..d7276b8e 100644
--- a/ftnoir_protocol_wine/ftnoir_protocol_wine.h
+++ b/ftnoir_protocol_wine/ftnoir_protocol_wine.h
@@ -48,7 +48,7 @@ class FTNoIR_Protocol : public IProtocol
{
public:
FTNoIR_Protocol();
- ~FTNoIR_Protocol();
+ virtual ~FTNoIR_Protocol();
bool checkServerInstallationOK();
void sendHeadposeToGame(const double* headpose);