ColladaDom 2.1 getUrl() return weird value


I’m trying to upgrade the 3D converter I used one year ago to the latest version of collada dom.

I’m using Visual Studio 2008 Express and Collada Dom 2.1

I got an error (“can not resolve link”). Here is the failing code :

domInstance_geometryRef InstanceGeometry = InstanceGeometryArray.get(0);
xsAnyURI GeometryURI = InstanceGeometry->getUrl();

“InstanceGeometry” has a correct uriString :
uriString “file:/C:/Cube.dae#pCubeShape1”

But when using “GetUrl”, I get that result in geometry GeometryURI :

uriString “file:/c:/Donnees/DK-Games/Projets/ProjetSuperFizz/PhaseProd/Tools/ColladaConverter/#pCubeShape1

(this is the place where my exe is).

which is a dummy link.

As I’m discovering the new collada dom, I’m a bit lost. Any help would be welcomed.

This is the same problem reported here. There’s a problem in the daeURI copy constructor. I’ll be putting up a new DOM 2.1 package by the end of the day. In the meantime don’t copy the daeURI, just reference it:
xsAnyURI& GeometryURI = InstanceGeometry->getUrl();

Thanks for reporting the problem.


Thanks for your fast answer (and for the work on collada dom !)

I’ll use the fix you advice.


The new zip files are up on Sourceforge.

(the fix works exactly the same, so it is enough for me)

The latest version works fine and fix the previous bugs. Good job 8)