Hi I just spent some time on an issue. The user of my software was supposed to unload my dll completely after disposing. However for some reason this mechanism did not work so the next time he initialised my dll the static variables were unchanged from last time. In one location I was counting on that a pj_pool_t* was set to NULL after calling pj_pool_release(...) However this was not the case and there was a crash. One can argue that this is a design issue but maybe it could be a good idea to reset the pj_pool_t pointer after releasing the pool since otherwise it will continue to point to a valid memory address and problems can be unessecary hard to debug.