build fixes, bump version, don't duplicate screen render requests

This commit is contained in:
milek7
2018-10-12 23:19:38 +02:00
parent c7741c6618
commit 047988219b
4 changed files with 14 additions and 4 deletions

View File

@@ -11,7 +11,6 @@ file(GLOB HEADERS "*.h" "Console/*.h" "McZapkie/*.h")
set(SOURCES
"Texture.cpp"
"TextureDDS.cpp"
"Timer.cpp"
"Track.cpp"
"Traction.cpp"
@@ -77,14 +76,12 @@ set(SOURCES
"audiorenderer.cpp"
"motiontelemetry.cpp"
"utilities.cpp"
"light.cpp"
"uitranscripts.cpp"
"station.cpp"
"application.cpp"
"simulationtime.cpp"
"sceneeditor.cpp"
"screenshot.cpp"
"combustionengine.cpp"
"driverkeyboardinput.cpp"
"drivermode.cpp"
"driveruilayer.cpp"

View File

@@ -160,6 +160,18 @@ auto python_taskqueue::insert( task_request const &Task ) -> bool {
// acquire a lock on the task queue and add a new task
{
std::lock_guard<std::mutex> lock( m_tasks.mutex );
// if task for this target already exists, don't add another
for (render_task *task : m_tasks.data)
if (task->get_target() == Task.target)
{
PyEval_AcquireLock();
Py_DECREF(Task.input);
PyEval_ReleaseLock();
return false;
}
m_tasks.data.emplace_back( new render_task( renderer, Task.input, Task.target ) );
}
// potentially wake a worker to handle the new task

View File

@@ -44,6 +44,7 @@ public:
{}
// methods
void run();
const texture_handle get_target() const { return m_target; }
private:
// members

View File

@@ -1 +1 @@
#define VERSION_INFO "M7 12.10.2018, based on tmj-44b652c"
#define VERSION_INFO "M7 13.10.2018, based on tmj-68f82be4"