Re: [xml] Query Regarding Revision 2121 in SVN for entity nesting check in parserinternal.c
- From: "Andrew W. Nosenko" <andrew w nosenko gmail com>
- To: veillard redhat com
- Cc: ranjit huawei com, xml gnome org, Ashwin <ashwins huawei com>, nageshs huawei com
- Subject: Re: [xml] Query Regarding Revision 2121 in SVN for entity nesting check in parserinternal.c
- Date: Wed, 20 Feb 2008 15:04:42 +0200
On Feb 20, 2008 2:50 PM, Daniel Veillard <veillard redhat com> wrote:
On Wed, Feb 20, 2008 at 05:32:47PM +0530, Ashwin wrote:
Hi,
I have a doubt regarding the revision 2121 in SVN in
parserInternals.c, a check for entities nesting has been added. For
the following statement,(in function xmlNewInputStream)
input->id = id++;
where id is a static variable thread safety is not taken care of. Is
this because there can be only one parser context irrespective of the
number of threads? I think the comment above the code mentions this
fact.
No the comment is about the fact that only one thread is allowed to
use a given parser context. If you didn't then the application had broken the
libxml2 API rules.
However I assume in case of scenarios where there is a parser context
per thread, thread-safety is required, right?
No. try to understand how the added check works.
The point is make sure that for a given parsing context you always get
different ids when you create new input streams. That code does it,
and the comment is right.
Sorry, but (IMO) there indded may be a problem if defferent concurent
threads running on the different CPUs.
--
Andrew W. Nosenko <andrew w nosenko gmail com>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]