On Oct 11, 2005, at 3:36 AM, Nicolas George wrote:
In threaded programs, errno can not be just be a static global variable, since its value must be local to each thread. The standard solution is for errno to be a macro for '*(pointer_to_this_thread_s_errno())'.
Actually, it *can* be.
Note the difference from "should be"
Remember, that on MS Windows, the recommended thing is to use the win32 API and WSAGetLastError.
I do not know what it is on windows, but on GNU, there has been for some time a hack to ensure that on single-threaded programs, pointer_to_this_thread_s_errno was indeed the address of a global integer symbol. This hack has been dropped some time ago.
Good to look into
And remember that the intent is that Inkscape be a single-threaded program.