- This topic has 4 replies, 3 voices, and was last updated 11 years, 8 months ago by
Leonardo Bernardini.
-
Posted in: Muster usage
-
6th February 2014 at 2:12 pm #14522Hello, Im using Maya 2013 + pymel version 1.0.4 on windows
when I try to submit a scene (testing with MentalRay) from your GUI(submitToMuster window)
I get this message;# Error: CallbackError: file C:Program FilesAutodeskMaya2013Pythonlibsite-packagespymelinternalfactories.py line 710: Error executing callback
> – onSubmit – module MayaMuster – C:/Users/FX_client/Documents/maya/2013-x64/scriptsMayaMuster.py, line 1303 Original message:
Traceback (most recent call last):
File “C:Program FilesAutodeskMaya2013Pythonlibsite-packagespymelinternalfactories.py”, line 708, in callback
res = origCallback( *newargs )
File “C:/Users/FX_client/Documents/maya/2013-x64/scriptsMayaMuster.py”, line 1430, in onSubmit
result = self.onSendLayer(jobName,parent,””,frameExtension)
File “C:/Users/FX_client/Documents/maya/2013-x64/scriptsMayaMuster.py”, line 1283, in onSendLayer
mrToolOutput,mrToolErr = self.fireMrtool(*arguments)
File “C:/Users/FX_client/Documents/maya/2013-x64/scriptsMayaMuster.py”, line 614, in fireMrtool
p = subprocess.Popen(completeArgs, stdout=subprocess.PIPE, stderr=subprocess.PIPE, env=environment,startupinfo=startupinfo)
File “C:Program FilesAutodeskMaya2013binpython26.zipsubprocess.py”, line 650, in __init__
errread, errwrite)
File “C:Program FilesAutodeskMaya2013binpython26.zipsubprocess.py”, line 855, in _execute_child
startupinfo)
TypeError: environment can only contain strings #Any thoughts of what problem could be, plz?
I hope Im posting this in the correct place.
Thx for any help,
S-
19th March 2014 at 5:50 pm #15244Another user reported the same thing, this has something to do with the environment passed to the process spawn, but unfortunately we are not able to reproduce it.
Are you able to print the environment variable ? You just need to add a print(environment) before line 614 !
20th March 2014 at 10:56 am #15247Hello,
I had the same issue. Some of the environment vars are unicode strings. I didn’t really investigate in this issue, but a quick fix is to insert this code on line 880, right before the
Code:subprocess.Popen(…)call:
Code:import unicodedata
for key, val in environment.items():
if type(val) != type( “” ):
environment[key] = unicodedata.normalize(‘NFKD’, val).encode(‘ascii’,’ignore’)# p = subprocess.Popen(…)
this converts all unicode strings in the environment dict to default ascii strings, all warnings omitted. problem is of course that this might potentially break environment vars contiainint non-ascii characters.
claus
24th March 2014 at 10:28 am #15248Super Claus,
It works fine for me now – thx a lot for your help.
S-
22nd August 2014 at 1:37 pm #15258well done, we are going to integrate this into the official distribution.
Thanks !
-
You must be logged in to reply to this topic.

