oddbdatabase::readfile(odstreambuf*) problems
oddbdatabase::readfile(odstreambuf*) problems
hi,
i'm getting an odd error at runtime and thought to ask here about it.
basically, i'm trying to load a dwg file from a stream, but i'm getting a "debug assertion failed!" on source\odstreambuf.cpp line 55. i'm running under winxp with ms vs 2005 and do not have access to the cpp file mentioned. here's the code.
int f = openfile(filename, &of, of_read);
oduint8array buffer;
buffer.resize(392806); // yes, the file is exactly this many bytes
_lread(f, (char*)buffer.asarrayptr(), buffer.size());
odstreambufptr odfstream = odflatmemstream::createnew(buffer.asarrayptr(), buffer.size());
oddbdatabaseptr pdb;
pdb = svcs.createdatabase(false);
pdb->readfile(odfstream);
any ideas? thanks!
- albert
last edited by
jpalo@snowbound.com; 17th september 2008 at 01:40 pmfff">.
hi,
i found an answer via:
it works, but is there a more elegant solution? this can't be the right way to do it.
albert
last edited by
jpalo@snowbound.com; 17th september 2008 at 01:40 pmfff">.
while loading dwg filename() is required to return it from oddbdatabase:riginalfilename().
so you need to provide memory stream inheritor and take care about the file name.