aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/debug.cpp12
-rw-r--r--src/objdef.h1
-rw-r--r--src/threading/thread.cpp6
-rw-r--r--src/threading/thread.h1
4 files changed, 12 insertions, 8 deletions
diff --git a/src/debug.cpp b/src/debug.cpp
index 9f1042646..3761e416d 100644
--- a/src/debug.cpp
+++ b/src/debug.cpp
@@ -45,7 +45,7 @@ void sanity_check_fn(const char *assertion, const char *file,
unsigned int line, const char *function)
{
errorstream << std::endl << "In thread " << std::hex
- << (unsigned long)thr_get_current_thread_id() << ":" << std::endl;
+ << thr_get_current_thread_id() << ":" << std::endl;
errorstream << file << ":" << line << ": " << function
<< ": An engine assumption '" << assertion << "' failed." << std::endl;
@@ -58,7 +58,7 @@ void fatal_error_fn(const char *msg, const char *file,
unsigned int line, const char *function)
{
errorstream << std::endl << "In thread " << std::hex
- << (unsigned long)thr_get_current_thread_id() << ":" << std::endl;
+ << thr_get_current_thread_id() << ":" << std::endl;
errorstream << file << ":" << line << ": " << function
<< ": A fatal error occured: " << msg << std::endl;
@@ -93,8 +93,10 @@ DebugStack::DebugStack(threadid_t id)
void DebugStack::print(FILE *file, bool everything)
{
- fprintf(file, "DEBUG STACK FOR THREAD %lx:\n",
- (unsigned long)threadid);
+ std::ostringstream os;
+ os << threadid;
+ fprintf(file, "DEBUG STACK FOR THREAD %s:\n",
+ os.str().c_str());
for(int i=0; i<stack_max_i; i++)
{
@@ -113,7 +115,7 @@ void DebugStack::print(FILE *file, bool everything)
void DebugStack::print(std::ostream &os, bool everything)
{
- os<<"DEBUG STACK FOR THREAD "<<(unsigned long)threadid<<": "<<std::endl;
+ os<<"DEBUG STACK FOR THREAD "<<threadid<<": "<<std::endl;
for(int i=0; i<stack_max_i; i++)
{
diff --git a/src/objdef.h b/src/objdef.h
index e7e956e51..1dce367a9 100644
--- a/src/objdef.h
+++ b/src/objdef.h
@@ -20,6 +20,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#ifndef OBJDEF_HEADER
#define OBJDEF_HEADER
+#include "basicmacros.h"
#include "porting.h"
class IGameDef;
diff --git a/src/threading/thread.cpp b/src/threading/thread.cpp
index 0996a9e34..57b551503 100644
--- a/src/threading/thread.cpp
+++ b/src/threading/thread.cpp
@@ -117,9 +117,9 @@ bool Thread::start()
try {
m_thread_obj = new std::thread(threadProc, this);
- m_thread_id = m_thread->get_id();
- m_thread_handle = m_thread->native_handle();
- } except (const std::system_error &e) {
+ m_thread_id = m_thread_obj->get_id();
+ m_thread_handle = m_thread_obj->native_handle();
+ } catch (const std::system_error &e) {
return false;
}
diff --git a/src/threading/thread.h b/src/threading/thread.h
index 83ca785c7..5f2d8aad1 100644
--- a/src/threading/thread.h
+++ b/src/threading/thread.h
@@ -26,6 +26,7 @@ DEALINGS IN THE SOFTWARE.
#ifndef THREADING_THREAD_H
#define THREADING_THREAD_H
+#include "basicmacros.h"
#include "threading/atomic.h"
#include "threading/mutex.h"
#include "threads.h"