Python is requesting input

I installed the latest version (Ragdoll-2022_12_13) of ragdoll and now when I load the plugin this window appears and maya crashes soon after

It’s not happening with previous versions

Oh wow. Which version did you try previously?

the previous one working was
I tested the latest on my windows machine and seems to be okay.
Seems to be when I load “” (linux)

Interesting, thanks for reporting this. Would you happen to know which Linux distribution you are on?
E.g. CentOS 7 or Scientific Linux 7? Are you on a floating or node-locked licence?

I have a node-locked licence, and os is:

NAME=“CentOS Linux”
VERSION=“7 (Core)”
ID_LIKE=“rhel fedora”
PRETTY_NAME=“CentOS Linux 7 (Core)”

Thanks, perfect. This is the same setup that we’re testing on, investigating now.

1 Like

I’m unable to reproduce this error. :frowning: Is there anything else special you can think of about your computer/environment? Something I can try and replicate here.

Hm… not sure what it could be… I’ll have a look tonight for any clues
Thank you

If you are able to launch Maya “vanilla”, meaning without any PYTHONPATH or other plug-ins loading, and then load Ragdoll from there. That could help narrow things down.

Some differences in the terminal when loading maya with different ragdoll versions. Does this mean anything to you?

QObject::setParent: Cannot set parent, new parent is in a different thread
QWidget::setTabOrder: ‘first’ and ‘second’ must be in the same window
QObject::startTimer: Timers can only be used with threads started with QThread
QObject::startTimer: Timers cannot be started from another thread

Testing to see if I can run vanilla maya

Hm, yes that is interesting. Which version of Ragdoll did these occur with? Also which version of Maya are you using?

It happens with 2022_12_13 and 2022_12_05, maybe others before that but these are the ones I tested
Maya version is Maya 2020.4

Where you able to do a vanilla test?

Thanks for taking the time to help debug this, I know this sucks! Those threading things do seem suspicious and is something I’ll investigate in the morning. I may be able to provide something for you to run in the Script Editor that live-edits the code to bypass anything related to threading.

Here’s one thing you can try, before loading the plug-in.

import os
os.environ["RAGDOLL_LEGACY_GREETS"] = "Yes"

It should bypass the new Asset Library, and show you the old one instead. Which may or may not be related to the crash.

I haven’t been able to yet, I will try tomorrow
Thanks for the script, I will also try this!

Hi, I was able to test on vanilla maya 2020.4 (also 2020.3) but unfortunately it was the same dialogue box, even when using the code to bypass the new Asset Library.

However, it loaded well in maya 2022.0 with the latest Asset Library.
I tried deleting prefs, etc. To make sure there wasn’t anything happening there as launching 2022 created new prefs, but no luck.

Other than that, there were some messages in the terminal similar to yesterday-

QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBasicTimer::stop: Failed. Possibly trying to stop from a different thread

Hmm, interesting. Can you try this as well, just like how you bypassed the asset library.

import os
os.environ["RAGDOLL_SKIP_INSTALL_ON_LOAD"] = "Yes"

And then load Ragdoll. I expect it would load correctly, except you won’t get the Ragdoll menu. If this works, then that’s a very good sign and something I can work with.

You should then be able to manually make the menu (and cause the error) like this.

from ragdoll import interactive
# Bam!

Good news, I ran the code and it loaded correctly. Then imported interactive, the window came up and maya crashed as expected.

Fabulous, I now have some idea of where to look. I’ll investigate and have a fix for you shortly, thanks for jumping through these hoops!

1 Like

We’ve pushed a new release with two new environment variables it would be great if you can try. We think this was what caused the issue, but still have been unable to actually make it happen on any of our machines. So :crossed_fingers:

import os
os.environ["RAGDOLL_SINGLE_THREADED_QT"] = "Yes"

And then load the plug-in. More details here.