mirror of
https://github.com/Z3Prover/z3
synced 2025-06-22 13:53:39 +00:00
Fixed OpenMP problems in log synchronization. Relates to #798.
This commit is contained in:
parent
dee7c29b19
commit
71ca355257
1 changed files with 12 additions and 8 deletions
|
@ -35,6 +35,8 @@ extern "C" {
|
||||||
}
|
}
|
||||||
|
|
||||||
Z3_bool Z3_API Z3_open_log(Z3_string filename) {
|
Z3_bool Z3_API Z3_open_log(Z3_string filename) {
|
||||||
|
Z3_bool res = Z3_TRUE;
|
||||||
|
|
||||||
#ifdef Z3_LOG_SYNC
|
#ifdef Z3_LOG_SYNC
|
||||||
#pragma omp critical (z3_log)
|
#pragma omp critical (z3_log)
|
||||||
{
|
{
|
||||||
|
@ -45,15 +47,18 @@ extern "C" {
|
||||||
if (g_z3_log->bad() || g_z3_log->fail()) {
|
if (g_z3_log->bad() || g_z3_log->fail()) {
|
||||||
dealloc(g_z3_log);
|
dealloc(g_z3_log);
|
||||||
g_z3_log = 0;
|
g_z3_log = 0;
|
||||||
return Z3_FALSE;
|
res = Z3_FALSE;
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
*g_z3_log << "V \"" << Z3_MAJOR_VERSION << "." << Z3_MINOR_VERSION << "." << Z3_BUILD_NUMBER << "." << Z3_REVISION_NUMBER << " " << __DATE__ << "\"\n";
|
*g_z3_log << "V \"" << Z3_MAJOR_VERSION << "." << Z3_MINOR_VERSION << "." << Z3_BUILD_NUMBER << "." << Z3_REVISION_NUMBER << " " << __DATE__ << "\"\n";
|
||||||
g_z3_log->flush();
|
g_z3_log->flush();
|
||||||
g_z3_log_enabled = true;
|
g_z3_log_enabled = true;
|
||||||
|
}
|
||||||
#ifdef Z3_LOG_SYNC
|
#ifdef Z3_LOG_SYNC
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
return Z3_TRUE;
|
|
||||||
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Z3_API Z3_append_log(Z3_string str) {
|
void Z3_API Z3_append_log(Z3_string str) {
|
||||||
|
@ -63,8 +68,7 @@ extern "C" {
|
||||||
#pragma omp critical (z3_log)
|
#pragma omp critical (z3_log)
|
||||||
{
|
{
|
||||||
#endif
|
#endif
|
||||||
if (g_z3_log == 0)
|
if (g_z3_log != 0)
|
||||||
return;
|
|
||||||
_Z3_append_log(static_cast<char const *>(str));
|
_Z3_append_log(static_cast<char const *>(str));
|
||||||
#ifdef Z3_LOG_SYNC
|
#ifdef Z3_LOG_SYNC
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue