Revision: 6565
          http://matplotlib.svn.sourceforge.net/matplotlib/?rev=6565&view=rev
Author:   jouni
Date:     2008-12-11 20:32:04 +0000 (Thu, 11 Dec 2008)

Log Message:
-----------
Use subprocess.Popen instead of os.popen in dviread 
(Windows problem reported by Jorgen Stenarson)

Modified Paths:
--------------
    trunk/matplotlib/CHANGELOG
    trunk/matplotlib/lib/matplotlib/dviread.py

Modified: trunk/matplotlib/CHANGELOG
===================================================================
--- trunk/matplotlib/CHANGELOG  2008-12-11 18:59:00 UTC (rev 6564)
+++ trunk/matplotlib/CHANGELOG  2008-12-11 20:32:04 UTC (rev 6565)
@@ -1,3 +1,6 @@
+2008-12-11 Use subprocess.Popen instead of os.popen in dviread
+           (Windows problem reported by Jorgen Stenarson) - JKS
+
 2008-12-10 Added Michael's font_manager fix and Jae-Joon's
            figure/subplot fix.  Bumped version number to 0.98.5 - JDH
 

Modified: trunk/matplotlib/lib/matplotlib/dviread.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/dviread.py  2008-12-11 18:59:00 UTC (rev 
6564)
+++ trunk/matplotlib/lib/matplotlib/dviread.py  2008-12-11 20:32:04 UTC (rev 
6565)
@@ -21,8 +21,8 @@
 import matplotlib
 import matplotlib.cbook as mpl_cbook
 import numpy as np
-import os
 import struct
+import subprocess
 
 _dvistate = mpl_cbook.Bunch(pre=0, outer=1, inpage=2, post_post=3, finale=4)
 
@@ -742,25 +742,15 @@
     doesn't use kpathsea, so what do we do? (TODO)
     """
 
-    cmd = 'kpsewhich '
+    cmd = ['kpsewhich']
     if format is not None:
-        assert "'" not in format
-        cmd += "--format='" + format + "' "
-    assert "'" not in filename
-    cmd += "'" + filename + "'"
-
+        cmd += ['--format=' + format]
+    cmd += [filename]
+    
     matplotlib.verbose.report('find_tex_file(%s): %s' \
                                   % (filename,cmd), 'debug')
-    pipe = os.popen(cmd, 'r')
-    result = ""
-    while True:
-        data = _read_nointr(pipe)
-        if data == "":
-            break
-        result += data
-    pipe.close()
-    result = result.rstrip()
-
+    pipe = subprocess.Popen(cmd, stdout=subprocess.PIPE)
+    result = pipe.communicate()[0].rstrip()
     matplotlib.verbose.report('find_tex_file result: %s' % result,
                               'debug')
     return result


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada.
The future of the web can't happen without you.  Join us at MIX09 to help
pave the way to the Next Web now. Learn more and register at
http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/
_______________________________________________
Matplotlib-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins

Reply via email to