grazie Oregon, mi hai messo comunque sulla strada giusta dicendomi che i thread non c'entrano nulla.
Era un problema di allocazione di memoria che causava un errore alquanto depistante. Sto usando una DLL dove hanno modificato le dichiarazioni a certe strutture ed a me era sfuggita questa variazione.