Developer forums (C::B DEVELOPMENT STRICTLY!) > CodeCompletion redesign
Clang CC
ollydbg:
--- Quote from: yvesdm3000 on December 22, 2015, 06:06:59 am ---Is it threadsafe ?
Yves
--- End quote ---
NO, please see the whole thread discussion here: F() function is not thread safe?, also the logger function is not thread safe.
EDIT: That's why the native cc plugin use it's own logger.
yvesdm3000:
fprintf was a good choice then. I will probably copy the logger from the native CC, no need to reinvent the wheel.
Yves
yvesdm3000:
The devel-branch now uses the CCLogger from the regular CodeComplete plugin.
Yves
yvesdm3000:
Did another push to the 'devel'-branch that makes the tokendatabase persistent and reindexes at project load. I'm now stuck on a situation where Clang sometimes crashes when reading a PCH file so I'll probably skip using PCH files and reparse the file when needed and implement the PCH-optimization later.
My current goal is to make "Goto implementation" work correctly when the file is not yet open.
Yves
MortenMacFly:
I also noticed some fatal crash bug: If you disable the plugin and then open an editor, C::B will crash immediately. The reason is that you don't check whether or not the plugin is still enabled. Therefore, the pointer to m_pClangPlugin will be invalid when accessed in clangdiagnostics.cpp here:
(line 145:) m_TranslUnitId = m_pClangPlugin->GetTranslationUnitId(fn);
Probably that is true on other places, as well... be careful when developing...
The proper implementation is also to detach from the event queue and event sinks, if the plugin is disabled, so pleae add:
--- Code: --- // remove registered event sinks
Manager::Get()->RemoveAllEventSinksFor(this);
--- End code ---
...in ClangDiagnostics::OnRelease( IClangPlugin* pClangPlugin ).
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version