Small note a head: next time you write an email I recommend you use the
subject line to provide a one-line, very concise and very condensed
summary of the contents of the mail (ie a 'subject') such as the one I
used to gave this mail. Your name is automatically put into the 'from'
field for everyone to see, so no need to manually put that into the subject.

On 09.11.2008 03:26, [EMAIL PROTECTED] wrote:
> isn't that weird considering that the mesh being saved is not a Cal3D
> mesh? I found the
> exact line on which the error occurs via a debugger; it is in
> csSaver::SaveSectorMeshes()
> line 853, that is, scfQueryInterface<iFactory>
> (meshobjectfactory->GetMeshObjectType()).
> It does fine getting the mesh object type, but right as it queries that
> iFactory interface,
> then it suddenly starts talking about that Mesh Accessor. I looked at
> the nullmesh header
> and source file and there isn't even a nested Mesh Accessor class within
> a Nullmesh mesh object like there is in a csSpriteCal3dMeshObject. Do
> you know what is causing this?

Short answer, no. Such weird things can happen when data (ie here the
factory object) gets corrupted, pointers dangle (maybe the factory is
already freed or so?), or some address gets computed wrong (C-style
casts to incomplete classes can result in bogus pointers).
These problems are hard to debug and there is no simple recipe to attack
them; usually you have to find out what exact data is wrong, and after
that, why.

I can explain what should happen, perhaps it can help you to find the issue:
- meshobjectfactory->GetMeshObjectType() should return an instance of
csNullmeshMeshObjectType (the "mesh plugin instance").
- scfQueryInterface<iFactory>() attempts to query the iFactory interface
from the csNullmeshMeshObjectType instance. The actual method called is
QueryInterface(). That class itself doesn't implement iFactory, so the
query is forwarded to it's 'parent' object, an instance of scfFactory,
which actually returns iFactory.

Also, if you don't use one already, try a debug build of CrystalSpace,
some errors are caught earlier by that because of additional safeguards
and things like overwriting memory after it's freed.

-f.r.

Attachment: signature.asc
Description: OpenPGP digital signature

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Crystal-main mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/crystal-main
Unsubscribe: mailto:[EMAIL PROTECTED]

Reply via email to