summaryrefslogtreecommitdiff
path: root/src/save
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2013-03-16 11:20:11 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2013-03-16 11:20:11 (GMT)
commit0646b7fe41bf8dc94b4f2eb1e3e1c0e85ac1f254 (patch)
treeb3442587a9dc82ba4361ba1f5d79f26b2da8b5dd /src/save
parentca9ea8bb8ae457acb27de61f635115e433a8e981 (diff)
downloadpowder-0646b7fe41bf8dc94b4f2eb1e3e1c0e85ac1f254.zip
powder-0646b7fe41bf8dc94b4f2eb1e3e1c0e85ac1f254.tar.gz
Nicer resize method for VideoBuffer, fix Local and Server save previews
Diffstat (limited to 'src/save')
-rw-r--r--src/save/LocalSaveActivity.cpp12
-rw-r--r--src/save/LocalSaveActivity.h2
-rw-r--r--src/save/ServerSaveActivity.cpp9
-rw-r--r--src/save/ServerSaveActivity.h2
4 files changed, 18 insertions, 7 deletions
diff --git a/src/save/LocalSaveActivity.cpp b/src/save/LocalSaveActivity.cpp
index 455b6da..0e968aa 100644
--- a/src/save/LocalSaveActivity.cpp
+++ b/src/save/LocalSaveActivity.cpp
@@ -128,12 +128,18 @@ void LocalSaveActivity::OnDraw()
}
}
-void LocalSaveActivity::OnRequestReady(void * imagePtr)
+void LocalSaveActivity::OnResponseReady(void * imagePtr)
{
- this->thumbnail = (VideoBuffer*)imagePtr;
+ if(thumbnail)
+ delete thumbnail;
+ thumbnail = (VideoBuffer*)imagePtr;
}
LocalSaveActivity::~LocalSaveActivity()
{
-
+ RequestBroker::Ref().DetachRequestListener(this);
+ if(thumbnail)
+ delete thumbnail;
+ if(callback)
+ delete callback;
} \ No newline at end of file
diff --git a/src/save/LocalSaveActivity.h b/src/save/LocalSaveActivity.h
index 51b1ec9..b58af5e 100644
--- a/src/save/LocalSaveActivity.h
+++ b/src/save/LocalSaveActivity.h
@@ -34,6 +34,6 @@ public:
void saveWrite(std::string finalFilename);
virtual void Save();
virtual void OnDraw();
- virtual void OnRequestReady(void * imagePtr);
+ virtual void OnResponseReady(void * imagePtr);
virtual ~LocalSaveActivity();
}; \ No newline at end of file
diff --git a/src/save/ServerSaveActivity.cpp b/src/save/ServerSaveActivity.cpp
index 94d609a..1e21a60 100644
--- a/src/save/ServerSaveActivity.cpp
+++ b/src/save/ServerSaveActivity.cpp
@@ -249,15 +249,20 @@ void ServerSaveActivity::OnDraw()
}
}
-void ServerSaveActivity::OnRequestReady(void * imagePtr)
+void ServerSaveActivity::OnResponseReady(void * imagePtr)
{
- this->thumbnail = (VideoBuffer *)imagePtr;
+ if(thumbnail)
+ delete thumbnail;
+ thumbnail = (VideoBuffer *)imagePtr;
}
ServerSaveActivity::~ServerSaveActivity()
{
+ RequestBroker::Ref().DetachRequestListener(this);
if(saveUploadTask)
delete saveUploadTask;
if(callback)
delete callback;
+ if(thumbnail)
+ delete thumbnail;
} \ No newline at end of file
diff --git a/src/save/ServerSaveActivity.h b/src/save/ServerSaveActivity.h
index 6143074..43411c3 100644
--- a/src/save/ServerSaveActivity.h
+++ b/src/save/ServerSaveActivity.h
@@ -29,7 +29,7 @@ public:
virtual void Save();
virtual void Exit();
virtual void OnDraw();
- virtual void OnRequestReady(void * imagePtr);
+ virtual void OnResponseReady(void * imagePtr);
virtual void OnTick(float dt);
virtual ~ServerSaveActivity();
protected: