aboutsummaryrefslogtreecommitdiff
path: root/texall
diff options
context:
space:
mode:
Diffstat (limited to 'texall')
-rwxr-xr-xtexall13
1 files changed, 8 insertions, 5 deletions
diff --git a/texall b/texall
index fe8db4a..75f3af3 100755
--- a/texall
+++ b/texall
@@ -1,8 +1,5 @@
#!/usr/bin/env python
-from __future__ import with_statement
-
-from contextlib import closing
from optparse import OptionParser
import sys
import os
@@ -269,7 +266,8 @@ def analyseFile(dirname, filename, analyserclasses, parsetype, fulltext=False, c
analysers = []
for analyser in analyserclasses:
analysers.append(analyser(data))
- with closing(open(os.path.join(dirname, filename), "r")) as f:
+ try:
+ f = open(os.path.join(dirname, filename), "r")
if fulltext:
text = f.read()
for a in analysers:
@@ -278,6 +276,11 @@ def analyseFile(dirname, filename, analyserclasses, parsetype, fulltext=False, c
for line in f:
for a in analysers:
a.parse(line)
+ except IOError, e:
+ error(os.path.join(dirname, filename), "could not be analysed: %s"%e)
+ data = None
+ else:
+ f.close()
if hasattr(data, "deps") and (recurse
or (recurse==None
and hasattr(data, "requrired")
@@ -294,7 +297,7 @@ def analyseFile(dirname, filename, analyserclasses, parsetype, fulltext=False, c
if hasattr(data, "required") and data.required:
for a in analysers:
a.finish(dirname)
- if cache:
+ if cache and data:
analysecache[(parsetype, pathname)] = data
return data