[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [29407] trunk/blender/release/scripts/io/ engine_render_pov.py: [#22496] OpenSuse 11.2 The problem with built-Povray
Campbell Barton
ideasman42 at gmail.com
Fri Jun 11 15:45:58 CEST 2010
Revision: 29407
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=29407
Author: campbellbarton
Date: 2010-06-11 15:45:58 +0200 (Fri, 11 Jun 2010)
Log Message:
-----------
[#22496] OpenSuse 11.2 The problem with built-Povray
give a better error message when povray isnt found.
Modified Paths:
--------------
trunk/blender/release/scripts/io/engine_render_pov.py
Modified: trunk/blender/release/scripts/io/engine_render_pov.py
===================================================================
--- trunk/blender/release/scripts/io/engine_render_pov.py 2010-06-11 13:00:24 UTC (rev 29406)
+++ trunk/blender/release/scripts/io/engine_render_pov.py 2010-06-11 13:45:58 UTC (rev 29407)
@@ -762,12 +762,22 @@
if 1:
# TODO, when povray isnt found this gives a cryptic error, would be nice to be able to detect if it exists
- self._process = subprocess.Popen([pov_binary, self._temp_file_ini]) # stdout=subprocess.PIPE, stderr=subprocess.PIPE
+ try:
+ self._process = subprocess.Popen([pov_binary, self._temp_file_ini]) # stdout=subprocess.PIPE, stderr=subprocess.PIPE
+ except OSError:
+ # TODO, report api
+ print("POVRAY: could not execute povray, possibly povray isn't installed: '%s'" % pov_binary)
+ import traceback
+ traceback.print_exc()
+ print ("***-DONE-***")
+ return False
+
else:
# This works too but means we have to wait until its done
os.system('%s %s' % (pov_binary, self._temp_file_ini))
print ("***-DONE-***")
+ return True
def _cleanup(self):
for f in (self._temp_file_in, self._temp_file_ini, self._temp_file_out):
@@ -783,8 +793,11 @@
self.update_stats("", "POVRAY: Exporting data from Blender")
self._export(scene)
self.update_stats("", "POVRAY: Parsing File")
- self._render()
+ if not self._render():
+ self.update_stats("", "POVRAY: Not found")
+ return
+
r = scene.render
# compute resolution
More information about the Bf-blender-cvs
mailing list