<feed xmlns='http://www.w3.org/2005/Atom'>
<title>minetest.git/src/threading, branch 0.4.17.1</title>
<subtitle>lizzy's patches for luanti
</subtitle>
<id>https://git.vlhl.dev/lizzy/luanti/minetest.git/atom?h=0.4.17.1</id>
<link rel='self' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/atom?h=0.4.17.1'/>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/'/>
<updated>2018-06-03T15:31:59+00:00</updated>
<entry>
<title>Thread: fix a crash on Windows due to data race condition on Thread::m_start_finished_mutex (#6515)</title>
<updated>2018-06-03T15:31:59+00:00</updated>
<author>
<name>Loïc Blot</name>
<email>nerzhul@users.noreply.github.com</email>
</author>
<published>2017-10-10T10:27:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=0129c9a9dd149f4e5efaed1879c1c3058cbc4d70'/>
<id>urn:sha1:0129c9a9dd149f4e5efaed1879c1c3058cbc4d70</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix uninitalised variable in event.cpp (#5764)</title>
<updated>2017-05-15T10:10:29+00:00</updated>
<author>
<name>Zeno-</name>
<email>kde.psych@gmail.com</email>
</author>
<published>2017-05-15T10:10:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=1bf9b25fb47d086a3f323c86278de7c235855fb0'/>
<id>urn:sha1:1bf9b25fb47d086a3f323c86278de7c235855fb0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Pass clang-format on 14 trivial header files fixes</title>
<updated>2017-04-07T21:22:00+00:00</updated>
<author>
<name>Loic Blot</name>
<email>loic.blot@unix-experience.fr</email>
</author>
<published>2017-04-07T21:22:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=4af99b75cf3ae43c365a4c1e90e85f8ec764cf62'/>
<id>urn:sha1:4af99b75cf3ae43c365a4c1e90e85f8ec764cf62</id>
<content type='text'>
Also remove them from whitelist
</content>
</entry>
<entry>
<title>Fix AIX threading build</title>
<updated>2017-01-28T23:52:07+00:00</updated>
<author>
<name>ShadowNinja</name>
<email>shadowninja@minetest.net</email>
</author>
<published>2017-01-28T22:23:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=3eecc6ff4492ca21772544451fd8aa78871bac3b'/>
<id>urn:sha1:3eecc6ff4492ca21772544451fd8aa78871bac3b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix synchronization issue at thread start</title>
<updated>2017-01-28T23:52:07+00:00</updated>
<author>
<name>ShadowNinja</name>
<email>shadowninja@minetest.net</email>
</author>
<published>2017-01-28T22:02:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=c93f7f5ceaf255bc9314be022b7bebb55b1d0605'/>
<id>urn:sha1:c93f7f5ceaf255bc9314be022b7bebb55b1d0605</id>
<content type='text'>
If a newly spawned thread called getThreadId or getThreadHandle before
the spawning thread finished saving the thread handle, then the
handle/id would be used uninitialized.  This would cause the threading
tests to fail since isCurrentThread would return false, and if Minetest
is built with C++11 support the std::thread object pointer would be
dereferenced while ininitialized, causing a segmentation fault.

This fixes the issue by using a mutex to force the spawned thread to
wait for the spawning thread to finish initializing the thread object.

An alternative way to handle this would be to also set the thread
handle/id in the started thread but this wouldn't work for C++11
builds because there's no way to get the partially constructed object.
</content>
</entry>
<entry>
<title>Fix C++11 Windows build of threading code</title>
<updated>2016-10-06T20:37:30+00:00</updated>
<author>
<name>sfan5</name>
<email>sfan5@live.de</email>
</author>
<published>2016-10-06T19:13:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=0a16e53b40d347db7dcd04cb694d0f8f2ed1a5a7'/>
<id>urn:sha1:0a16e53b40d347db7dcd04cb694d0f8f2ed1a5a7</id>
<content type='text'>
	The initial problem was that mutex_auto_lock.h tries to use std::unique_lock&lt;std::mutex&gt;
	despite mutex.h not using C++11's std::mutex on Windows. The problem here is the mismatch
	between C++11 usage conditions of the two headers. This commit moves the decision logic
	to threads.h and makes sure mutex.h, mutex_auto_lock.h and event.h all use the same features.
</content>
</entry>
<entry>
<title>Fix &amp; make linux conditionals uniform (#4278)</title>
<updated>2016-07-04T19:00:57+00:00</updated>
<author>
<name>Rogier-5</name>
<email>Rogier-5@users.noreply.github.com</email>
</author>
<published>2016-07-04T19:00:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=1dfd977ec43370da6931b11a8d0469792c8ebc36'/>
<id>urn:sha1:1dfd977ec43370da6931b11a8d0469792c8ebc36</id>
<content type='text'>
The source used a hodge-podge of different combinations of different
macros to check for linux: 'linux', '__linux', '__linux__'.

As '__linux__' is standard (Posix), and the others are not, the source
now uniformly uses __linux__. If either linux or __linux are defined,
it is made sure that __linux__ is defined as well.</content>
</entry>
<entry>
<title>Fix Windows build</title>
<updated>2016-05-02T05:01:17+00:00</updated>
<author>
<name>Craig Robbins</name>
<email>kde.psych@gmail.com</email>
</author>
<published>2016-05-02T05:01:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=c92cff5d52efa0f811b605efd8d77ff23e44b226'/>
<id>urn:sha1:c92cff5d52efa0f811b605efd8d77ff23e44b226</id>
<content type='text'>
Fixes the issue introduced by c1a0ebb (Fix use of uninitialised variable
in class Event) causing Windows builds to fail
</content>
</entry>
<entry>
<title>Fix use of uninitialised variable in class Event</title>
<updated>2016-05-01T07:32:00+00:00</updated>
<author>
<name>Craig Robbins</name>
<email>kde.psych@gmail.com</email>
</author>
<published>2016-05-01T06:47:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=c1a0ebb725d6ac05e94cc6ad8507106636b63326'/>
<id>urn:sha1:c1a0ebb725d6ac05e94cc6ad8507106636b63326</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix POSIX C++11 build</title>
<updated>2016-04-30T17:41:04+00:00</updated>
<author>
<name>ShadowNinja</name>
<email>shadowninja@minetest.net</email>
</author>
<published>2016-04-30T13:44:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=a53357d2917d57966503348e7c030c024e89bb1b'/>
<id>urn:sha1:a53357d2917d57966503348e7c030c024e89bb1b</id>
<content type='text'>
I broke this in 46fd114e9a4e05b74576dce682e24357363298e7.
</content>
</entry>
</feed>
