You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by Ram <ra...@yahoo.com> on 2005/07/10 08:14:26 UTC

XMLString::transcode japanese string : ABR

Hi,

Version : xerces-c 2.5 (with ICU 2.4) 

I am reading some japanese characters from a XML file
and passing them to some other functions. The  file is
proper with japanese characters. I am able to view it
properly on a japanese PC from Internet Explorer. So
its content is valid input.

  I am using following calls.
  char *cstr =
XMLString::transcode(leafnode->getNodeValue());
string str = cstr OR string str =
string(cstr,strlen(cstr));
-- Purify shows a ABR (Array bounds read) of 4 bytes
on above
line.
(
strlen(cstr) returns 40
XMLString::stringLen(leafnode->getNodeValue()) returns
22.)

It seems that transcode is returning a string which is
not properly null terminated. I am getting some junk
characters appended to actual value.
 
The above code works fine on Windows & RH7.3. I am
facing this issue only on RH9 & Solaris.
(LC_CTYPE points to en_US.UTF-8 )

Has anybody faced similar problem before ?

Thanks for your time.

-> Ram

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org


Re: XMLString::transcode japanese string : ABR

Posted by Ram <ra...@yahoo.com>.
Hi Alberto,

Thanks a lot. The Fix was right on target. 
New ICUTransService.cpp + 2.6 = working fine on
Solaris
New ICUTransService.cpp + 2.5 = working fine on
Solaris
No ABRs now from purify report.

So instead of going for 2.6, I will stick with 2.5 and
replace the file and try on all other platforms
Win32/RH7.3/9. 

I am really happy to see things working smoothly.
Thanks again for your time.

-> Ram

--- Alberto Massari <am...@datadirect.com> wrote:

> Hi Ram,
> it looks the fixes for this problem have been 
> done just after 2.6 was out; you can try 
> replacing 
> util/Transcoders/ICU/ICUTransService.cpp with 
> version 1.18 that is under CVS 
>
(http://cvs.apache.org/viewcvs.cgi/*checkout*/xml-xerces/c/src/xercesc/util/Transcoders/ICU/ICUTransService.cpp?rev=1.18)
> Given the changelog it looks you can drop this 
> file directly on your Xerces 2.5 copy.
> 
> Alberto
> 
> At 07.18 11/07/2005 -0700, Ram wrote:
> >Hi Alberto,
> >
> >I tried using xerces 2.6 but without success. I
> still
> >get the parsed input appended with some junk chars.
> >
> >Please provide URLs from where can I get source for
> >xerces 2.7/3.0 baselines.
> >
> >Now I am creating one DATA file based on the UTF8
> >input I receive. Funny thing to note that when I
> >restart my test app it reads this DATA file
> properly
> >and the very SAME function reads the string
> properly.
> >This is happening for 2.5 as well.
> >
> >Solaris Purify still shows an ABR on strlen(cStr)
> >line.
> >Is there some other way to handle this ?
> >
> >-> Ram
> >
> >--- Alberto Massari <am...@datadirect.com>
> wrote:
> >
> > > Hi Ram,
> > > could you try your code against 2.6? (or, even
> > > better, against the
> > > 2.7/3.0 baseline) There were in the past bug
> reports
> > > of
> > > non-terminated transcoded strings that have been
> > > fixed.
> > >
> > > Thanks,
> > > Alberto
> > >
> > > At 23.14 09/07/2005 -0700, Ram wrote:
> > > >Hi,
> > > >
> > > >Version : xerces-c 2.5 (with ICU 2.4)
> > > >
> > > >I am reading some japanese characters from a
> XML
> > > file
> > > >and passing them to some other functions. The 
> file
> > > is
> > > >proper with japanese characters. I am able to
> view
> > > it
> > > >properly on a japanese PC from Internet
> Explorer.
> > > So
> > > >its content is valid input.
> > > >
> > > >   I am using following calls.
> > > >   char *cstr =
> > > >XMLString::transcode(leafnode->getNodeValue());
> > > >string str = cstr OR string str =
> > > >string(cstr,strlen(cstr));
> > > >-- Purify shows a ABR (Array bounds read) of 4
> > > bytes
> > > >on above
> > > >line.
> > > >(
> > > >strlen(cstr) returns 40
> > > >XMLString::stringLen(leafnode->getNodeValue())
> > > returns
> > > >22.)
> > > >
> > > >It seems that transcode is returning a string
> which
> > > is
> > > >not properly null terminated. I am getting some
> > > junk
> > > >characters appended to actual value.
> > > >
> > > >The above code works fine on Windows & RH7.3. I
> am
> > > >facing this issue only on RH9 & Solaris.
> > > >(LC_CTYPE points to en_US.UTF-8 )
> > > >
> > > >Has anybody faced similar problem before ?
> > > >
> > > >Thanks for your time.
> > > >
> > > >-> Ram
> > > >
> > >
> >__________________________________________________
> > > >Do You Yahoo!?
> > > >Tired of spam?  Yahoo! Mail has the best spam
> > > protection around
> > > >http://mail.yahoo.com
> > > >
> > >
> >
>
>---------------------------------------------------------------------
> > > >To unsubscribe, e-mail:
> > > c-dev-unsubscribe@xerces.apache.org
> > > >For additional commands, e-mail:
> > > c-dev-help@xerces.apache.org
> > >
> > >
> > >
> > >
>
>---------------------------------------------------------------------
> > > To unsubscribe, e-mail:
> > > c-dev-unsubscribe@xerces.apache.org
> > > For additional commands, e-mail:
> > > c-dev-help@xerces.apache.org
> > >
> > >
> >
> >
> >
> >
>
>____________________________________________________
> >Sell on Yahoo! Auctions ­ no fees. Bid on great
> items.
> >http://auctions.yahoo.com/
> >
>
>---------------------------------------------------------------------
> >To unsubscribe, e-mail:
> c-dev-unsubscribe@xerces.apache.org
> >For additional commands, e-mail:
> c-dev-help@xerces.apache.org
> 
> 
> 
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> c-dev-unsubscribe@xerces.apache.org
> For additional commands, e-mail:
> c-dev-help@xerces.apache.org
> 
> 



		
____________________________________________________
Sell on Yahoo! Auctions – no fees. Bid on great items.  
http://auctions.yahoo.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org


Re: XMLString::transcode japanese string : ABR

Posted by Alberto Massari <am...@datadirect.com>.
Hi Ram,
it looks the fixes for this problem have been 
done just after 2.6 was out; you can try 
replacing 
util/Transcoders/ICU/ICUTransService.cpp with 
version 1.18 that is under CVS 
(http://cvs.apache.org/viewcvs.cgi/*checkout*/xml-xerces/c/src/xercesc/util/Transcoders/ICU/ICUTransService.cpp?rev=1.18)
Given the changelog it looks you can drop this 
file directly on your Xerces 2.5 copy.

Alberto

At 07.18 11/07/2005 -0700, Ram wrote:
>Hi Alberto,
>
>I tried using xerces 2.6 but without success. I still
>get the parsed input appended with some junk chars.
>
>Please provide URLs from where can I get source for
>xerces 2.7/3.0 baselines.
>
>Now I am creating one DATA file based on the UTF8
>input I receive. Funny thing to note that when I
>restart my test app it reads this DATA file properly
>and the very SAME function reads the string properly.
>This is happening for 2.5 as well.
>
>Solaris Purify still shows an ABR on strlen(cStr)
>line.
>Is there some other way to handle this ?
>
>-> Ram
>
>--- Alberto Massari <am...@datadirect.com> wrote:
>
> > Hi Ram,
> > could you try your code against 2.6? (or, even
> > better, against the
> > 2.7/3.0 baseline) There were in the past bug reports
> > of
> > non-terminated transcoded strings that have been
> > fixed.
> >
> > Thanks,
> > Alberto
> >
> > At 23.14 09/07/2005 -0700, Ram wrote:
> > >Hi,
> > >
> > >Version : xerces-c 2.5 (with ICU 2.4)
> > >
> > >I am reading some japanese characters from a XML
> > file
> > >and passing them to some other functions. The  file
> > is
> > >proper with japanese characters. I am able to view
> > it
> > >properly on a japanese PC from Internet Explorer.
> > So
> > >its content is valid input.
> > >
> > >   I am using following calls.
> > >   char *cstr =
> > >XMLString::transcode(leafnode->getNodeValue());
> > >string str = cstr OR string str =
> > >string(cstr,strlen(cstr));
> > >-- Purify shows a ABR (Array bounds read) of 4
> > bytes
> > >on above
> > >line.
> > >(
> > >strlen(cstr) returns 40
> > >XMLString::stringLen(leafnode->getNodeValue())
> > returns
> > >22.)
> > >
> > >It seems that transcode is returning a string which
> > is
> > >not properly null terminated. I am getting some
> > junk
> > >characters appended to actual value.
> > >
> > >The above code works fine on Windows & RH7.3. I am
> > >facing this issue only on RH9 & Solaris.
> > >(LC_CTYPE points to en_US.UTF-8 )
> > >
> > >Has anybody faced similar problem before ?
> > >
> > >Thanks for your time.
> > >
> > >-> Ram
> > >
> > >__________________________________________________
> > >Do You Yahoo!?
> > >Tired of spam?  Yahoo! Mail has the best spam
> > protection around
> > >http://mail.yahoo.com
> > >
> >
> >---------------------------------------------------------------------
> > >To unsubscribe, e-mail:
> > c-dev-unsubscribe@xerces.apache.org
> > >For additional commands, e-mail:
> > c-dev-help@xerces.apache.org
> >
> >
> >
> >
>---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> > c-dev-unsubscribe@xerces.apache.org
> > For additional commands, e-mail:
> > c-dev-help@xerces.apache.org
> >
> >
>
>
>
>
>____________________________________________________
>Sell on Yahoo! Auctions ­ no fees. Bid on great items.
>http://auctions.yahoo.com/
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>For additional commands, e-mail: c-dev-help@xerces.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org


Re: XMLString::transcode japanese string : ABR

Posted by Ram <ra...@yahoo.com>.
Hi Alberto,

I tried using xerces 2.6 but without success. I still
get the parsed input appended with some junk chars.

Please provide URLs from where can I get source for
xerces 2.7/3.0 baselines.

Now I am creating one DATA file based on the UTF8
input I receive. Funny thing to note that when I
restart my test app it reads this DATA file properly
and the very SAME function reads the string properly.
This is happening for 2.5 as well.

Solaris Purify still shows an ABR on strlen(cStr)
line.
Is there some other way to handle this ?

-> Ram 

--- Alberto Massari <am...@datadirect.com> wrote:

> Hi Ram,
> could you try your code against 2.6? (or, even
> better, against the 
> 2.7/3.0 baseline) There were in the past bug reports
> of 
> non-terminated transcoded strings that have been
> fixed.
> 
> Thanks,
> Alberto
> 
> At 23.14 09/07/2005 -0700, Ram wrote:
> >Hi,
> >
> >Version : xerces-c 2.5 (with ICU 2.4)
> >
> >I am reading some japanese characters from a XML
> file
> >and passing them to some other functions. The  file
> is
> >proper with japanese characters. I am able to view
> it
> >properly on a japanese PC from Internet Explorer.
> So
> >its content is valid input.
> >
> >   I am using following calls.
> >   char *cstr =
> >XMLString::transcode(leafnode->getNodeValue());
> >string str = cstr OR string str =
> >string(cstr,strlen(cstr));
> >-- Purify shows a ABR (Array bounds read) of 4
> bytes
> >on above
> >line.
> >(
> >strlen(cstr) returns 40
> >XMLString::stringLen(leafnode->getNodeValue())
> returns
> >22.)
> >
> >It seems that transcode is returning a string which
> is
> >not properly null terminated. I am getting some
> junk
> >characters appended to actual value.
> >
> >The above code works fine on Windows & RH7.3. I am
> >facing this issue only on RH9 & Solaris.
> >(LC_CTYPE points to en_US.UTF-8 )
> >
> >Has anybody faced similar problem before ?
> >
> >Thanks for your time.
> >
> >-> Ram
> >
> >__________________________________________________
> >Do You Yahoo!?
> >Tired of spam?  Yahoo! Mail has the best spam
> protection around
> >http://mail.yahoo.com
> >
>
>---------------------------------------------------------------------
> >To unsubscribe, e-mail:
> c-dev-unsubscribe@xerces.apache.org
> >For additional commands, e-mail:
> c-dev-help@xerces.apache.org
> 
> 
> 
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> c-dev-unsubscribe@xerces.apache.org
> For additional commands, e-mail:
> c-dev-help@xerces.apache.org
> 
> 



		
____________________________________________________
Sell on Yahoo! Auctions – no fees. Bid on great items.  
http://auctions.yahoo.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org


Re: XMLString::transcode japanese string : ABR

Posted by Alberto Massari <am...@datadirect.com>.
Hi Ram,
could you try your code against 2.6? (or, even better, against the 
2.7/3.0 baseline) There were in the past bug reports of 
non-terminated transcoded strings that have been fixed.

Thanks,
Alberto

At 23.14 09/07/2005 -0700, Ram wrote:
>Hi,
>
>Version : xerces-c 2.5 (with ICU 2.4)
>
>I am reading some japanese characters from a XML file
>and passing them to some other functions. The  file is
>proper with japanese characters. I am able to view it
>properly on a japanese PC from Internet Explorer. So
>its content is valid input.
>
>   I am using following calls.
>   char *cstr =
>XMLString::transcode(leafnode->getNodeValue());
>string str = cstr OR string str =
>string(cstr,strlen(cstr));
>-- Purify shows a ABR (Array bounds read) of 4 bytes
>on above
>line.
>(
>strlen(cstr) returns 40
>XMLString::stringLen(leafnode->getNodeValue()) returns
>22.)
>
>It seems that transcode is returning a string which is
>not properly null terminated. I am getting some junk
>characters appended to actual value.
>
>The above code works fine on Windows & RH7.3. I am
>facing this issue only on RH9 & Solaris.
>(LC_CTYPE points to en_US.UTF-8 )
>
>Has anybody faced similar problem before ?
>
>Thanks for your time.
>
>-> Ram
>
>__________________________________________________
>Do You Yahoo!?
>Tired of spam?  Yahoo! Mail has the best spam protection around
>http://mail.yahoo.com
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>For additional commands, e-mail: c-dev-help@xerces.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org