oyaGG / coral-repo

Automatically exported from code.google.com/p/coral-repo
4 stars 1 forks source link

Crash when changing input values from Maya #9

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Launch Maya
2. Start Coral UI
3. Create MayaContext, double click to enter the node.
4. Create MayaFloatInput, MayaGeoOutput and GeoSphere
5. Connect GeoSphere.out to MayaGeoOutput.geo
6. In Maya create a polygon mesh object (cube) with history on.
7. Connect the coralNetworkNode.mayaGeoOut to pCubeShape1.inMesh.
8. You should now see the sphere mesh being drawn.
9. In Coral connect the MayaFloatInput.value to GeoSphere.radius
10. In Maya set the value of coralNetworkNode.MayaFloatInput to 10
11. Crash

What is the expected output? What do you see instead?
Expected to see the sphere changed size but Maya crashed hard.

What version of the product are you using? On what operating system?

Windows 7 64bit
Boost 1.46 (from source)
TBB 4.0 (from source)
ilmbase 1.0.2 (from source)
QT 4.6.3 or 4.7.4 (I'm not entirely sure which is being used)
Maya 2009 (32bit)
mayapy 2.5 (32bit)
PyQt-Py2.5 4.8.6 (32bit)
Maya's cgGL 2.1.0012

Please provide any additional information below.

I will be able to provide some more information when I get a debug environment 
setup. I had to change a couple of lines to get Coral compiling against the 
Maya 2009 api, so I wouldn't be surprised if it was something silly I did.

Keir 

Original issue reported on code.google.com by keirr...@gmail.com on 28 Nov 2011 at 8:47

GoogleCodeExporter commented 8 years ago
I'll be spending time on the issue this week.

Original comment by aintergu...@gmail.com on 7 Dec 2011 at 4:38

GoogleCodeExporter commented 8 years ago

Original comment by aintergu...@gmail.com on 7 Dec 2011 at 4:38

GoogleCodeExporter commented 8 years ago
Great,
Got a bit more info for you.

It's crashing in the CoralNetworkNode::compute method on line 121:

std::string attrName = inPlug.partialName().asChar();

It looks like the partialName method is failing.

Also before the crash proper, there was an exception that corrupted the Maya 
channel box UI:
First-chance exception at 0x75e5b9bc in maya.exe: Microsoft C++ exception: 
TfileException at memory location 0x0144f3ac..

Keir

Original comment by keirr...@gmail.com on 7 Dec 2011 at 8:35

GoogleCodeExporter commented 8 years ago
Hi, it looks like I can't repro the issue here, it's all working fine.
Do you think you could try fixing it on your side?
Maybe checking if  inPlug is valid, or doing std::cout << inPlug.partialName() 
to see if that crashes as well.

Original comment by aintergu...@gmail.com on 9 Dec 2011 at 3:04

GoogleCodeExporter commented 8 years ago
Hey,

Thanks for looking into it for me. 
I will try to do some more testing later in the week. I was going to do it this 
morning but I managed to introduce a linker error when building the plugin :)

Keir

Original comment by keirr...@gmail.com on 13 Dec 2011 at 1:59

GoogleCodeExporter commented 8 years ago
Right so the crash is definitely happening when looking up the name of the 
plug. I tried both partialName and name methods. I also dropped a status check 
on the isNull call, to see if it was silently failing (it wasn't).

Keir

Original comment by keirr...@gmail.com on 14 Dec 2011 at 11:07

GoogleCodeExporter commented 8 years ago
So wait a sec, you are saying the plug is not null and yet it crashes when 
asked for the name?

Original comment by aintergu...@gmail.com on 15 Dec 2011 at 8:01

GoogleCodeExporter commented 8 years ago
Yes, it passes the null plug check and then crashes.

Original comment by keirr...@gmail.com on 15 Dec 2011 at 8:22

GoogleCodeExporter commented 8 years ago
I think I was able to repro this issue using maya's Attribute Editor rather 
than the Channel Box. 

Original comment by aintergu...@gmail.com on 2 Jan 2012 at 8:55

GoogleCodeExporter commented 8 years ago
This should now be fixed.

Original comment by aintergu...@gmail.com on 3 Jan 2012 at 11:05