Skip to content
  • Daniel Veillard's avatar
    7cf5971f3ae1
    Remove risk of lockup in dictionary initialization · 7cf5971f3ae1
    Daniel Veillard authored
    Reported by Petr Sumbera <petr.sumbera@oracle.com>
    Two threads entering xmlInitializeDict concurently could lead
    to a lockup due to multiple initializations of the lock used.
    To avoid this problem move this to a new private function
    called from xmlOnceInit() and deprecate the old initalizer.
    Since threaded programs must call xmlInitParser() and this
    will lead to dereference of private data and the call to
    xmlOnceInit() guaranteed to be unique this should be safe now.
    7cf5971f3ae1
    Remove risk of lockup in dictionary initialization
    Daniel Veillard authored
    Reported by Petr Sumbera <petr.sumbera@oracle.com>
    Two threads entering xmlInitializeDict concurently could lead
    to a lockup due to multiple initializations of the lock used.
    To avoid this problem move this to a new private function
    called from xmlOnceInit() and deprecate the old initalizer.
    Since threaded programs must call xmlInitParser() and this
    will lead to dereference of private data and the call to
    xmlOnceInit() guaranteed to be unique this should be safe now.
Loading