This forum has been archived. Please start a new discussion on GitHub.

IceGrid assertion fails - tests

Hallo all,

I compiled Ice 3.2.1 with STLPort 5.1.5.

Everything went fine during the tests until I reached the following assetion failure in IceGrid/deployer:
alltests.cpp:516: assertion `it->read(1024, lines) && lines.empty()' failed

I have debugged a little bit the problem. It seems that "lines" is not empty after the read, the reason why, when you step a little bit inside read() is thinks it has an empty line to read.

I thought first that the test text file ("log2.txt") was invalid (for example that it had an EOL), but this is not the case, the text file is as expected (checked it in a hexadecimal editor).

Is this a bug in IceGrid?


  • benoit
    benoit Rennes, France

    Sorry for the late answer. Which compiler do you use?

    It's likely that the problem is caused by STLport iostreams. In src/IceGrid/FileChache.cpp, you could try tweaking the following lines (line 166 and 197) to see if it solves the problem:
    #if defined(_MSC_VER) && (_MSC_VER < 1300)

    If you're using VC6, you should change the line to:
    #if 0

    If you're not using VC6, you should change it to:
    #if 1

  • Hello Benoit,

    Thanks for the answer. I'm using Visual Studio 2005 SP1 Professional Edition.

    I'll test your tweak and let you know.

    Update: It works! I suggest the define be changed to #ifdef _STLP_FEATURES_H

    In other news I had to download Expat 2.0.1 and copy the dll into the bin directory of Ice otherwise the FreezeScript test crashes.

  • I'm sorry but I started over from a clean directory and it still doesn't work, I think I must have tested with the "commented" version of AllTests.cpp.
  • matthew
    matthew NL, Canada
    I'm sorry, but we cannot provide you with any further assistance until you change the name of your organization & project to something more descriptive.
  • There is no specific project for the moment, I'm just a freelance engineer trying to learn Ice.