Boost logo

Boost Users :

From: RIVASSEAU Jean Noel (JN.RIVASSEAU_at_[hidden])
Date: 2006-02-02 07:58:11


Hi

 

I have tested with a binary archive and the problem does not occur. Only text archives seem to trigger it (I have not yet tested XML archives).

 

I have replaced all "strange" (non-letters) characters and the problem still happens. So the string contains only letters, I even removed the spaces. However do not forget that I left the line breaks in it (if I remove the line breaks, the problem does not appear).

 

To recapitulate: the problem appears when *all* of the following conditions are met:

 

* using a text archive
* using a std::string with line breaks
* with a length >=512

 

And even like that, I am not able to reproduce this bug in a small program, although in my program it is triggered all the time.

 

Now, Robert, if you could look into that, I'd appreciate it...

 

Jean-Noël

 

 

  _____

De : boost-users-bounces_at_[hidden] [mailto:boost-users-bounces_at_[hidden]] De la part de Robert Ramey
Envoyé : mercredi 1 février 2006 18:13
À : boost-users_at_[hidden]
Objet : Re: [Boost-users] [Serialization]: bug while serializing astd:string

 

This sounds like a bug to me. To help me out - check the following:

 

try different types of archives xml, binary, etc. xml archives have a pending issue if a string contains a character (e.g. '\0') which is not representable in an xml string. Other archive classes don't have this problem.

 

Check to see if its related to a particular character.

 

be sure its really question of size.

 

Robert Ramey

 

        "RIVASSEAU Jean Noel" <JN.RIVASSEAU_at_[hidden]> wrote in message news:87F60F7FA02FF749AFB02BD9FCAA6B04C1D8FA_at_naserv31.nanterre.oberthurcs.com...

        Hello

         

        It seems I have come against a bug in the BSL. I am running on Win 2000 Pro, MinGW (gcc 3.4.2), Boost 1.33.1.

         

        If I serialize a standard string with 512 or more characters, the save goes ok but a stream error exception occurs while trying to reload it later from archive. Any string with size < 512 is ok.

         

        Also this bug is really strange. It does not happen if the string has no line breaks in it (even if it is more than 512 chars). It also happens on my program, but I was unable to reproduce it with a small test program, even using the same string.

         

        Could it be a bug in another part of my rather large program? Or is it really a bug in the BSL?

         

        Jean-Noël

        
  _____

        _______________________________________________
        Boost-users mailing list
        Boost-users_at_[hidden]
        http://lists.boost.org/mailman/listinfo.cgi/boost-users



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net