Reset ICU converter pointer after closing it.

* The pointer to the ICU converter that's kept in TLS needs to be
  reset (to NULL) immediately after closing it, as opening a new
  container may fail, leaving a dangling pointer to a now closed
  container in the TLS value.

Fixes #8361 & the userland cause of #8430.
This commit is contained in:
Oliver Tappe 2012-04-01 17:38:44 +02:00
parent a91e17db42
commit ee374beebf

View File

@ -125,6 +125,7 @@ ICUCategoryData::_GetConverter(UConverter*& converterOut)
// charset no longer matches the converter, we need to dump it and
// create a new one
ucnv_close(tlsValue->converter);
tlsValue->converter = NULL;
}
// create a new converter for the current charset