Open SrTobi opened 7 years ago
If I am not mistaken, this is the exact same error I get under windows (mentioned in #75)
Can't reproduce it here (with bawue.osm and karlsruhe_big.osm) so it is a bit hard to debug, but
Style::overmerge
(style.cpp:38) looks suspicious.
There is something like:
const shared_ptr<StyleTemplate>& templ = ...;
templ->image->overwrite(obj, &(this->image));
templ->image
is a shared_ptr< eval::Eval<MaybeCachedString> >
this->image
is a MaybeCachedString
MaybeCachedString
is marked as not thread safeSo we are calling eval::Eval<MaybeCachedString>::overwrite
and pass a pointer to this->image
to it.
eval::Eval<MaybeCachedString>::overwrite
does now modify the given Pointer (&(this->image)
)
(eval.hpp:129)
Therefore calling Style::overmerge
from different threads is critical.
But we are doing just that Job::process -> Stylesheet::match -> Rule::match -> Selector::matchNode/Way/Relation -> Style::overmerge
Please keep in mind I'm not very familiar with the style code, so I may have overlooked something obvious.
Hi,
When I use alacarte with the following config
I get a segmentation fault. This does not happen, if either
-z
is 0 or-n
is 1.Here is the gdb output:
Can someone verify this?